|
& s. m7 i3 a; }. D 原标题:渗透测试系列|通用漏洞挖掘思路(黑盒篇)一、 黑盒测试在某次渗透测试过程中,单公子经黑盒测试发现某系统存在SQL注入系统登录页面,大概是这样子的 5 A' @- \) K* r n
用户名&&密码皆处存在注入// 相对而言,密码处存在注入的可能性比较小,因为密码会经过相关加密(数据库中的password字段值一般是密文),如果数据库中保存的密码就是明文的话,那也是会有产生SQL注入的风险。 + R9 R' E: k/ b7 H$ b+ b/ f
正常请求 ; r/ [. ~. O& ~$ Q( P z) [
一个单引号 ! g; g+ w" V& i/ M
两个单引号
" `3 t- s* c" [% t+ m 有区别(当然检测注入点的话,单引号也不是都适用的)…根据网站架构+经验,猜测是mssql数据库 8 W( l2 f7 L+ ^, a" t) c/ Y
那么user 一般是 dbo ) V2 Q- |9 [% i! c
// 参考一下,两个or。 & i8 t- D. C3 ?& Y$ l/ p$ S1 `
万能密码//有万能密码就一定有SQL注入,有SQL注入不一定有万能密码admin--,密码随意用户名随意,密码555or+a=a
3 `. O0 Y J y 证明存在SQL注入,大部分情况下,这个点就到这里了 " s( y; X- s( i$ S# c4 F
但是思维需要发散……二、 通用漏洞挖掘在挖掘通用漏洞之前,首先我们先来了解一下,什么是通用型漏洞,什么是事件型漏洞拿补天来说,漏洞类型分两种 1 k' n& W3 c& G4 v! G
通用型:顾名思义,poc通通都用适用,类似于0day的概念;第三方软件、应用、系统的漏洞事件型:非通用型,只在当前应用存在// https://www.butian.net/Help/plan### 补天定义。 ! f( j5 ?% t( {; L P# m
回到上文的SQL注入,如果思维不发散,那么它就是一个事件型的漏洞,思维发散了的话,说不定也还是一个事件型的漏洞….言归正传,既然是挖掘通用漏洞,那么势必会需要大量的案例来进行验证问题来了,怎么寻找使用了该产品的站点呢
5 q/ U ^6 O9 ?5 [* V3 H 1、 图标hash2、 页面关键字(如:技术支持:xx单位)3、 url链接(http://22.22.22.22/kkkk/yyyy/zzz/xxx.html)4、 web指纹识别5、 js文件6、 …
1 \; k' y) y. t 但是此站点似乎没有啥比较突出的表示
4 \- G: d0 w: K& M 那么看看网页源代码 + a; G4 m; q& d8 n8 m) `( K: O
搜索相关js文件名(实在不晓得哪个是关键的js文件名的话,就全部试试,反正不多)这里搜索的是/Coyyy/js/core/knocxxxxxxxx-2.2.1.jsFOFA: js_name=""
6 g- S$ P5 X4 E6 D7 M# V/ ` 随便点开几个  ' Y6 `6 b! C% y" V j7 T! o/ L
发现页面大同小异,且都存在SQL注入。至此,一个通用漏洞到手。 7 o! ^2 H, Y4 c5 g8 u# h- g
话说回来,平常在黑盒测试过程中,挖掘到的漏洞,都可以去尝试一下,是否是通用型的漏洞如果是,并且运气好,该产品公司的注册资金大于5000w,那么一个cnvd证书就来了(运气再好些,还可以在一个系统多薅几个)。 : O- C. A* `% m: y
当然也可以搜国内500强的公司,去发现他们产品的漏洞,也是一种方法。// 仅供参考
, R0 ^7 ~' i6 b, a2 o- D' h) `4 U 返回搜狐,查看更多责任编辑: - a& y+ R5 I9 B+ \6 F, U. y; P
! w( o, n3 p- S& f( n1 y* N: [
: ]3 @& s) l2 q5 @/ v. L
- [! h4 }! ?2 y. a# [
, r+ @+ J3 F& z |