欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

对自助提卡系统的一次代码审计

来源:本站整理 作者:佚名 时间:2018-08-02 TAG: 我要投稿

并非有意愿要审计该站,前面的走的黑盒没有过于精彩部分就不在贴上了,对于此系统站你们懂的,多说无益,这套程序是开源的,像这种自助提卡系统相信大家已经不在陌生了,很多违法网站通过这种平台方式提卡密的相当于购买邀请码,源码是小伙伴提供的,采用的是php+mysql进行开发的24小时自动售卡平台,废话就不多说了。
相关环境
源码信息:你猜啊
漏洞类型:Forwarded-For注入
搭建成功之后如下 :
看到如下页面是不是有似曾相识的感受:

上图是安装过后的首页,就是一个提卡网,继续吧!

这是首页文件,进去首先判断了install目录下的lock文件是否不存在并且判断是否有index.php文件,如果满足以上条件就跳转到install目录下的index.php,我们跟进install/index.php文件:


这里我们只看判断是否安装过程序,判断是否存在lock文件并且step不等于5的情况下就执行判断语句中的代码,当然这里如果header函数后没有exit就会存在重装漏洞。
我们接着看index.php,光是index.php文件就用413行代码,代码都不规范,所以我们先看看其它文件,看看api.php文件:

这里很明显我们看到了SQL注入,首先判断是否设置了$_POST[“dh”]再判断$_POST[“dh”]不为空则将该参数拼接到SQL语句中,看到这里就可以判断出该程序存在联合查询注入,可是$config哪来的,这个文件也没包含其它的文件啊!!!怎么办呢?那么我们就来找找index文件中是否包含了api.php,search一下

可以看到在294行这里包含了api.php文件,我们构造下放入sqlmap中玩一玩。
Python sqlmap.py -u “http://localhost:8081/index.php” --batch --dbms=”mysql” --data=”dh=a”

这里可以看到注入类型确实是联合查询,我们接着尝试下这个提卡网是否存在SQL注入
Python sqlmap.py -u "http://lxxxxx.pw/index.php" --batch --dbms="mysql" --data="dh=a"

我们尝试本地站点的时候毫无问题,为什么这个提卡网就没有存在这个问题了呢?很明显这个网站可能是升级或者二开发过的,我们接着看看其它点,进入./pay/pay.php文件:





代码过多就不一一贴图出来了,主要构成漏洞的代码就在这其中,我们从38行开始看着走。
这里判断$_GET[“type”]等于delete的时候则执行40-49行的代码,41将获取到的ip拼接到sql语句中,我们看看ip函数:

[1] [2] [3]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载