在某次渗透测试过程中,单公子经黑盒测试发现某系统存在SQL注入
用户名&&密码皆处存在注入
正常请求
一个单引号
两个单引号
有区别
(当然检测注入点的话,单引号也不是都适用的)
…
根据网站架构+经验,猜测是mssql数据库
那么user一般是dbo
//参考一下,两个or。
万能密码
//有万能密码就一定有SQL注入,有SQL注入不一定有万能密码
admin'--,密码随意
用户名随意,密码555'or+'a'='a
证明存在SQL注入,大部分情况下,这个点就到这里了
但是思维需要发散…
在挖掘通用漏洞之前,首先我们先来了解一下,什么是通用型漏洞,什么是事件型漏洞
拿补天来说,漏洞类型分两种
通用型:顾名思义,poc通通都用适用,类似于0day的概念;第三方软件、应用、系统的漏洞
事件型:非通用型,只在当前应用存在。
回到上文的SQL注入,如果思维不发散,那么它就是一个事件型的漏洞,思维发散了的话,说不定也还是一个事件型的漏洞….
言归正传,既然是挖掘通用漏洞,那么势必会需要大量的案例来进行验证
问题来了,怎么寻找使用了该产品的站点呢
1、图标hash
2、页面关键字(如:技术支持:xx单位)
4、web指纹识别
5、js文件
6、…
但是此站点似乎没有啥比较突出的表示
那么看看网页源代码
这里搜索的是
/Coyyy/js/core/knocxxxxxxxx-2.2.1.js
FOFA:js_name=""
随便点开几个
发现页面大同小异,且都存在SQL注入。至此,一个通用漏洞到手。
话说回来,平常在黑盒测试过程中,挖掘到的漏洞,都可以去尝试一下,是否是通用型的漏洞。
如果是,并且运气好,该产品公司的注册资金大于5000w,那么一个cnvd证书就来了(运气再好些,还可以在一个系统多薅几个)。
当然也可以搜国内500强的公司,去发现他们产品的漏洞,也是一种方法。