发卡网审计

发卡网代码审计

这是前段时间写的,今天发一下记录一下吧,怕以后找不到了 2020-3-10

0x00 前言

前端时间看moonsec的直播代码审计,今天下载来复现一波。下载地址:https://www.lanzous.com/i53acdi

0x01 代码审计

enter image description here

丢进seay审计一下吧

挺多的,一个个看吧,先看SQL注入吧

来看一下源码

这里的outtradeon、gid、money、rel、type、number参数都是通过POST传输的,然后带入了insert into 插入数据库,除了outtradeon都有_if,然后去 if/function.php文件中看到了这个_if

可以看到这里是对一些字符进行替换来达到防御的效果,不过没过滤单引号,所以还是可以尝试一下注入,抓包试一下

需要注意的是这里上面有限制包头类型 X-Requested-With: XMLHttpRequest 如果没有页面返回不会是正常的

0x02 漏洞测试

这里是正常的包(输出sql语句是因为我在源码中echo了),我们可以丢sqlmap跑一下试一下

果不其然失败了,手工测试吧。上面说到了除了outtradeon其他都有过滤,那么这里就测试outtradeon参数吧。

单引号报错,尝试正常注入

提示ok,去数据库看一下

可以看见库名出现了,还得进数据库看有点鸡肋了,这里可以用dnslog盲注

0x03 后台搜索SQL注入

admin/search.php 这里看到POST传入了kind和value分别赋值给了type和txt,之后没做过滤便带入了sql查询。

burp抓包尝试

这里是正常返回,加个单引号,然后用seay的mysql监控看一下语句(前面也是看这个来测试,好用)

可以看到没有返回数据了,而在监控中可以看到有%,闭合一下

这里可以用盲注

0x04 反射性xss

/template/zongzi/query.php 这里可以看到在input标签中有一段PHP代码 GET获取out_trade_no并且没有过滤就输出。

0x04 总结

前面第一个SQL注入的时候测试insert into 测试了半天都不行,然后去百度了一下,才发现是用逗号隔开。。。 然后测试盲注的时候,在mysql中没问题,去注入的时候就不知道咋回事不行了,尴尬。还有直播有讲文件包含,复现失败,不知道什么原因

应该还有其他的漏洞,没审计出来。总的来说就是太菜了,果然还是得多动手去实践才知道问题所在。

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。查看原文

为您推荐