钓鱼网站介绍
通过本地搭建该钓鱼网站,发现这是一个通过抓取转转交易网、猎趣交易网等页面的,伪造真实的商品购买页面进行钓鱼,受害人下单了但是钱却不是走官方平台交易,而是进了骗子的钱包,而受害者也不会真的收到购买的商品。
前台钓鱼页大概长这样~(随便生成了一个)
页面还是很逼真的~
后台长这样:
代码审计
一、自带php大马后门
路径:/detail/js/jb666.php
没什么可说的,作者偷偷加的后门用于黑吃黑~
二、垂直越权漏洞
打开后台登录页面/admin.php
输入正确的账号密码admin/admin888,走一下登录流程
根据action跟踪到/admin/index.php
继续跟到/admin/function/admin_login.func.php,发现这里有一个创建cookie的函数,键为“Aname”,值为变量$_Aname的值
继续往下看,发现登录成功了之后其实就是将前面“Aname”的值改为数据库中admin_user表中的标识登录的au_name的值
对比登录前后的cookie,其实只是多了一个“Aname=admin”
所以说我们访问需要权限验证的页面,只需要在cookie中加上“Aname=admin”就可以用管理员的身份去登录了
其他页面判断是否登录的逻辑也是这样
三、未授权的文件上传
路径:/admin/pluploadajax.php
这是一个文件上传功能点,写的也比较简短,代码如下
可以看到采用白名单的形式,通过判断后缀是否在白名单数组中来判断是否允许上传。
此处还对上传成功后的文件以时间+随机数的方式进行了重命名,所以任意文件上传漏洞是没有了。
但是可以注意到,这个功能点的执行没有经过任何身份上的验证,而这个功能点为后台添加商品图片的上传功能点。
我们可以在不登录的状态下就可以实现文件上传。虽然只能上传白名单里面的文件类型,并且有大小控制。不过对于钓鱼网站,我们可以无限重放上传的数据包,来塞满钓鱼网站管理员(服务器的硬盘~)。
四、钓鱼页sql注入
路径:/liequ/index.php
可以看到这里直接将$_GET[ClickID]带进了sql语句中去执行,没有任何的保护。
mysql_query("UPDATE goods SET hits = hits+1 WHERE goods_id = $_GET[ClickID]; ");
翻到头部,可以发现这是一个提供访问的页面,也就是说下面的代码允许被外部访问执行。
根据代码逻辑找到后台的功能点
所以注入点就在管理员对外发出去的钓鱼页面的url,比如说我这里为:http://test.com:8888/liequ/?i=344454208448619627y.shtml&liequSourceFrom=405768498802247074p&ClickID=13
注入点就在ClickID这个参数了,其实这个不用审计光黑盒fuzz也能出来~~
五、储存型xss漏洞
xss漏洞一般从功能点出发,xss的触发页面必须要打到管理员才行。
我们先看后台功能点,发现从外部获取并展示到后台的内容,好像只有钓鱼收集的信息。
那我们就从这里入手吧,这里是用iframe嵌入的,邮件找到框架地址http://test.com:8888/admin/?Admin=Goods_OrderList1
根据url可知是调用/admin/index.php这个文件,参数为Admin=Goods_OrderList1。
跟踪到/admin/index.php里面去看一下。
包含文件/admin/template/Goods_OrderList1.inc.php,再跟过去看看。
找到显示的地方,发现是直接echo出来的,没做其他的处理,比如说收货人为$_List['uname']
收货人$_List['uname'],我们继续追踪,看看这个$_List有没有经过处理。
没看到有对“收货人”内容进行处理的地方,我们再继续到传入点去看看。
传入点就是从管理员发出去的钓鱼页面,一步步点到收货信息那一个填写的表单,我这边为http://test.com:8888/liequ/address.php?gid=13
跟踪到/liequ/address.php,发现就是一个简单的表单,也没做其他的处理。
提交测试一波,发现成功触发xss
不止这一处,其他地方同理~
这个从黑盒的角度也会怀疑到xss的问题,不过只能靠盲打一波~不过我还是选择第二条中的越权更方便~~
六、后台sql注入
这里是后台还是前台注入都不重要,因为根据前面第二个越权的漏洞,后台随便进~
后台选择一个商品修改或者添加商品都一样
就拿这个“浏览量”来说
该表单提交的地址为/admin/?Admin=GoodsCommand2&action=edit&id=13,其中浏览量的对应的字段为“hits”
同样根据action跟踪到/admin/index.php
再继续跟到/admin/function/goods_carried1.func.php,因为这里是将表单中我们编辑的内容保存到数据库,所以对应的是一个insert。
同样没有加任何保护措施,测试触发注入成功
当然,不止“浏览量”这个字段,通过上面的代码可以发现,刚刚提交的所有字段都存在~
关注台下言书公众号,学习新姿势哦
漏洞文库:wiki.xypbk.com
免费授权已发放完毕,以后不定期发放授权。
如有特殊需要请留言,或提交一篇自挖或公网未流出漏洞,即可获取授权
如需投稿请后台回复"投稿"获取微信,添加微信后直接发送漏洞文章即可。
本站开设的起因是因为某一次HW,查漏洞真的太麻烦了,就想起来做了一个站点,本意就是自己用来快速检索漏洞详情的,为了方便大家就公开了,但是这样就又会被不法份子利用,和影响一些大佬的权益。
为防止黑产份子的非法利用漏洞,不给国家安全添麻烦,本站从此开启授权访问。
如若因漏洞利用产生重大影响,会根据登录IP、请求内容、申请授权等信息进行查证,查证后将对号主进行追责,故不要分享账号,终害己身。
虽然比较麻烦了些,但会稍微对黑产份子有一些限制,保证了本站安全,也保证国家安全。同时有些敏感东西也能第一时间放出来了,还请大家谅解。
同时本站承诺永远不会出现买卖账号等利益相关的事情,本站永不割韭菜,永久免费检索,坚决抵制安全圈的歪风邪气。
最后,若大家对此有意见请后台留言,本站将及时改正,若内容有侵犯您的权益,请及时提出,进行删除处理。
本站能坚持多久全看大家是否滥用,内容若更新较慢也请谅解,本人有工作有生活,会尽量坚持更新的。
扫取二维码获取
更多精彩
Qingy之安全
点个在看你最好看
本文始发于微信公众号(Qingy之安全):【代码审计】对一套钓鱼网站的代码审计
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论