通过不雅观察接口信息,创造接口名字为UploadImg,预测该接口用于图片上传,按照开拓的习气,保不准会存在temp、test,这类的接口,随后通过fuzz找到存在的上传接口(file),但此时的接口(file)上传文件仍旧存在限定,须要绕过。
由于黑名单限定不足严谨,经由多个伪后缀考试测验,创造.cer后缀可绕过限定并被解析
然后就getshell进内网,后面的操作就不多说了。

很多师傅看到白名单上传就会认为这个上传点足够安全,无法绕过,但实在不然,在存在多个上传接口的情形下,或许会存在没做限定,或者限定不严格的上传点也不一定,关键的是我们要如何创造这些接口,在此类接口存在限定时,如何去进行绕过,下面再举一个和接口绕过干系的例子。
【一>所有资源关注我,私信回答“资料”获取<一】1、200份很多已经买不到的绝版电子书2、30G安全大厂内部的视频资料3、100份src文档4、常见安全口试题5、ctf大赛经典题目解析6、全套工具包7、应急相应条记8、网络安全学习路线
案例二upload_2018.php接口白名单上传,在正常情形下,改变后缀会导致上传失落败,如下
再进一步测试时创造存在多个上传接口,删除_2018利用upload接口进行文件上传,可导致任意文件上传
进一步传shell时创造存在waf(某讯云),需进一步绕过。
通过探求域名真实IP,利用真实IP进行文件上传,绕过waf限定,为防止有心人,这里直接把IP给打码挡住了,以防万一。
很多时候有一些开拓为了便捷性,在支配上传接口时限定不足严谨或压根没做限定,这导致一旦被绕过限定传shell,都会导致非常严重的后果,当然,我们可以找一些temp、test这类上传接口,由于此类接口多数是开拓过程中用作测试的,这种接口险些都是无限上传文件类型的,同样的我们也可以找一些api文档进行上传接口的创造,这或许会有惊喜也说不定
案例三这是一个把图片转base64的文件上传类型,详细绕过如下:
通过抓包创造图片因此base64进行上传的,不雅观察了下数据包,创造可通过变动upload_0字段内容上传任意文件
访问HTML页面,成功被解析,可进一步上传shell获取权限。
一句话shell上传后创造无法实行命令,之后通过上传PHPinfo创造其存在disable_functions,利用某斯拉绕过限定,getshell
#案例四
一个关于nginx解析漏洞的利用,这个漏洞是良久之前挖到的,这种漏洞现在该当不会存在了,单单是waf都能栏掉,这个就作为思考开拓说一下:
一次外网打点时创造了目标的一个核心系统,通过踩点创造了某上传功能,但上传接口存在白名单限定,且无其它的上传接口,由于这个站的shell比较主要,必须拿到,之后通过漏洞挖掘,创造目标存在nginx解析漏洞,结合图片上传点成功获取到了内网据点。
其它场景&总结有些时候文件上传成功后端没有返回路径,只回显了一个id号,这时候如果目标存在注入的话,我们考试测验可以用sqlmap的–search参数或者SQLshell对返回的ID号进行搜索,这样说不定就能找到shell地址了,之前在关于Swagger-UI下的渗透实战 23也说过,感兴趣的可以去看看;也有文件上传成功却只回显一个文件名的,在前不久的一次攻防就碰着这种情形,后来是用了fuzz找到了完全的shell路径,其余在某些时候,上传文件可以跨目录,那么我们可以通过…/进行跨目录上传,运气好的话,或许会在几个…/后把shell传到域名的根目录下,如果当前上传文件夹无实行权限,那么跨目录上传shell也是个不错的思路;其余,如果上传目录可控,可上传文件到任意目录的话,在linux场景我们可上传一个ssh秘钥用于远程登录,极度一点的话,可考虑上传passwd、shadow文件覆盖系统用户,但条件是权限要足够大。
如果不能跨目录,站点又没有注入的话,那么我们可以考试测验探求网站日志文件,例如泛微E-COLOGY日志的日志,像这种日志文件是有规律可循的,可以用burp进行日志爆破,或许在日志文件中能找到shell路径也说不定。
再者便是文件包含和文件读取了,文件读取的话可以通过读取日志和配置文件来创造shell地址,但是成功率太低了,至于文件包含,除了靶场和ctf,实战还没碰过。
还有一个关于burp的利用技巧,这是真实碰着的,上传shell后没有回显路径,但是通过http history搜索shell的名字创造了完全的shell路径,由于传上去的文件,如图片这类的总归是显示出来的,这时候可以先在web运用到处点点,多加载一些数据包,然后再到http history搜索shell的名字,或许会有惊喜也说不定。
某些时候上传黑名单不严谨,那么我们可用伪后缀进行绕过,其它多的就不说了,大概思路就这样,当绕过限定拿到shell时,总会给我带来乐趣,或许这便是我喜好渗透的缘故原由。