|
7 b6 J( A2 @. r+ U! C6 N# X( H q 原标题:渗透测试系列|通用漏洞挖掘思路(黑盒篇)一、 黑盒测试在某次渗透测试过程中,单公子经黑盒测试发现某系统存在SQL注入系统登录页面,大概是这样子的
" R. f1 ^' D8 J2 F" D 用户名&&密码皆处存在注入// 相对而言,密码处存在注入的可能性比较小,因为密码会经过相关加密(数据库中的password字段值一般是密文),如果数据库中保存的密码就是明文的话,那也是会有产生SQL注入的风险。
* S4 r0 l" h2 F: O1 | 正常请求
* ?& n" b o/ B7 [3 \7 Y, _ 一个单引号
5 m2 E* o+ h" N/ w1 T4 h6 d 两个单引号 * p2 k9 m6 ?- Z' u/ V; v( N
有区别(当然检测注入点的话,单引号也不是都适用的)…根据网站架构+经验,猜测是mssql数据库 . }0 ^* `% G5 {1 Z2 u' a5 ^: p
那么user 一般是 dbo / u# K! j. p W7 s+ |' H
// 参考一下,两个or。 4 t! `: ~3 h9 l7 W% y
万能密码//有万能密码就一定有SQL注入,有SQL注入不一定有万能密码admin--,密码随意用户名随意,密码555or+a=a
- E$ L0 Z( T$ n. L! D. w 证明存在SQL注入,大部分情况下,这个点就到这里了
0 h0 _# W6 S* R6 {( v: A 但是思维需要发散……二、 通用漏洞挖掘在挖掘通用漏洞之前,首先我们先来了解一下,什么是通用型漏洞,什么是事件型漏洞拿补天来说,漏洞类型分两种 F+ c6 H! m; s0 t
通用型:顾名思义,poc通通都用适用,类似于0day的概念;第三方软件、应用、系统的漏洞事件型:非通用型,只在当前应用存在// https://www.butian.net/Help/plan### 补天定义。
+ G& a% ]) {0 ~& [ 回到上文的SQL注入,如果思维不发散,那么它就是一个事件型的漏洞,思维发散了的话,说不定也还是一个事件型的漏洞….言归正传,既然是挖掘通用漏洞,那么势必会需要大量的案例来进行验证问题来了,怎么寻找使用了该产品的站点呢
4 m6 d- b" _3 d$ S/ e 1、 图标hash2、 页面关键字(如:技术支持:xx单位)3、 url链接(http://22.22.22.22/kkkk/yyyy/zzz/xxx.html)4、 web指纹识别5、 js文件6、 … : H3 V8 I/ V) T. h/ ~! I
但是此站点似乎没有啥比较突出的表示 * Q' Q1 Z" Q& j( D7 d3 y* K7 k
那么看看网页源代码 K7 u" T4 P+ i0 G( P2 b8 K
搜索相关js文件名(实在不晓得哪个是关键的js文件名的话,就全部试试,反正不多)这里搜索的是/Coyyy/js/core/knocxxxxxxxx-2.2.1.jsFOFA: js_name=""
2 I+ E. w3 s" z, y2 K 随便点开几个 
8 s1 `: }: A/ {% z! j/ g5 c' J+ v. b 发现页面大同小异,且都存在SQL注入。至此,一个通用漏洞到手。
& {* K8 y3 o3 f, a* Q 话说回来,平常在黑盒测试过程中,挖掘到的漏洞,都可以去尝试一下,是否是通用型的漏洞如果是,并且运气好,该产品公司的注册资金大于5000w,那么一个cnvd证书就来了(运气再好些,还可以在一个系统多薅几个)。 . I, s4 k8 @) A
当然也可以搜国内500强的公司,去发现他们产品的漏洞,也是一种方法。// 仅供参考 # g2 Q3 H' n* C/ E- y' ~& p
返回搜狐,查看更多责任编辑: $ D2 _# A6 D: q& n0 r J
5 r T7 e+ {$ N" m1 Q' ^
+ H) G* W/ l1 S3 m& ^- |; d! Y6 o* J, G K& j
" ^6 O0 m4 m! d0 W C
|