本日本来该当过6.1儿童节的,适值昨天和mrx渗透的一个站上传还没有绕过,

早上mrx和我就开始重新看看,先说一下背景,

首先通过弱口令进了后台,经由一番探求创造了如下配置

jsp站群实战之另辟门路/用最简略的办法绕过waf并getshell拿下站群 jQuery

看到这个,已经胸有成竹,接下来便是常规的加上php后缀,并且上传一波,于是我来了一发如下:

waiting了良久有waf检测 我直接 cancle了,接下来便是有趣的绕waf,我绕了3个小时,各种奇葩姿势都弄出来了,比如下图

都改成这个鬼样子了 还是过不鸟 考试测验过各种一样平常用的过waf的方法:

1.jpg.php 1.php.jpg 1.php%00.jpg filename=1.jpg filename=1.php Content-Disposition: form1-data; name="Filedata"; filename="3.php" Content-Disposition: form-data; name="filename"; filename="3.jpg" .php filename="垃圾数据 30w".jpg.php

由于系统是windwos的 ,利用windows特性 ,文件如果以::$DATA结果那么这部分自动会被去掉

以是配置许可后缀为php::$DATA,拿去发包,waf直接检测到,我改为 ::data 就可以发包,

但是返回保存出错,同理我利用? . 等windows特性考试测验绕过(如果这些分外字符比如? . ! 等在文件名结尾的时候有一定几率被直接去掉),把这些分外字符作为文件结尾进行考试测验

结果全部以失落败告终,失落败缘故原由都是和下面这个图片一样考试测验用长文件名截断同样失落败

等等等等 还考试测验了各种后缀

pht,php,phtml,php3,php4,php5,php6,php7,aspx,asmx,asp,jsp,jspx

我的心情如下:

全都告以失落败,弄到了前一天的晚上12点,还是拿不下,于是沐浴睡了.........

第二天 也便是 6.1儿童节 又开始一杯茶一包烟一个破站绕一天.........

正文

实在前一天晚上我就想到了这种方法,但是嫌麻烦就没试,本日没办法了,实在是绕不过,于是考试测验利用这种方法,

利用内网ip或者是ip白名单来绕过waf,如果两个做事器在同一个内网,那么他们之间相互访问可能并不会经由waf在的做事器,

又或者是ip白名单的缘故原由导致这样有可能绕过waf,

由于之前拿过和这个站同属一个体系的其余一个站,

以是我想试试这种方法,我在已经拿到shell的那个站上(可以出网),ping 现在这个站 解析的ip 并不是内网ip 心中有一丝灰暗掠过....

管他的,只有试试了,解释一下已经被getshell的站我称为A站,A站为linux环境,现在这个还没拿下的称为B站.

首先我要在A站上弄一个socks代理, 然后通过这个代理我去访问B站,然后上传,

由于A站是在内网,以是我先考试测验用web代理,用的是这个Neo-reGeorg,流量加密版 reGeorg,

但是用之前我就觉得成功率不高,由于php版本的这个代理不是很好用,之前没有利用成功过,

不过asp,aspx的倒是很好用,我将本地端口8888与A站上的tunnel.php 建立连接 ,然后我用burp走 8888 端口,结果失落败,

连接有问题,这是预见之中的,那就换一种代理方法,既然可以出网,可以用ew 让他 与我的公网vps 建立连接,

然后我通过我的vps对应的端口走代理,这里就不详述了,由于当时以为这种方法比较麻烦,既然我已经有一个shell并且可以实行命令了,而且有curl,那我为什么不直接通过curl 来发post包上传呢

于是搜索了一下curl的利用方法,如果要用curl传文件 必须要用 -F 选项 利用了-F参数,curl会以multipart/form-data的办法发送POST要求

-F以key=value的形式指定要上传的参数,如果是文件,则须要利用key=@file的形式

然后现在我的vps上测试了一下直接给B站发上传包成功了,ok,咱们直接上A站发包

sessid=1590980086 和 moudl=content 都是上传包须要的

可以瞥见我们成功绕过了waf,由于之前上传如果是php后缀都是直接封掉不会有返回包

现在没有被封,解释已经绕过了waf,这两台机器该当在同一内网,

但是为什么会涌现上传类型不许可呢,而且我已经在配置中设置了许可php后缀,

如果看过我前面审计发卡平台文章的兄弟该当已经明白了,虽然设置了许可php后缀,

但是我预测后台该当是大概长个样子:

$store=['jpg','png','php'] #类似这样 如果我设置了许可php后缀 那么 php就会被加入这个数组 $ext视为获取的文件后缀名 if(in_array($ext,$store)&&$ext!="php"&&$ext!="php3"&&$ext!="pht"...){ 类似这样 上传操作 } else{ echo "上传类型不许可"; }

这样子的话就很好绕过了,在windwos条件下 ,文件名称末了如果有空格那么是会被去掉的,利用这个特性就可以轻松绕过,配置一下许可上传的后缀

然后上传

到这里我以为基本已经拿下 访问之 没想到404 难道没传上去?

于是我把php后缀换成了p ,方法完备一样 ,在配置中增加 p空格,

然后上传 ,访问创造是成功去掉末了的空格并且上传成功了的 ,

那该当便是设置了配置文件 ,设置某个目录下 访问php文件就返回 404 ...

那这时候须要跨目录去别的目录,我创造上传包中的 module参数的值 content是被放到了 上传后的文件路径中

我加入 ../ 发包 一发入魂 成功跨目录

蚁剑访问之 看到了 绿色的成功连接 心中一丝舒爽........

站群的截图就不放了 实行命令一发whoami 哦哟

end

这该当是个梦把.......

web安全体系化视频教程,在线免费不雅观看!

渗透视频教程+进群+领工具+靶场

扫码白嫖!

作者:nglsth

转载自:https://xz.aliyun.com/t/7860