代码审计
代码审计顾名思义即是审查源代码中的缺陷和差错消息,解析并找到这些题目诱发的平安毛病。网上讲的审计根本文章较量多,但很少因此CMS实例指示,故做此文,对初学新手也算是小小的协助吧
一:前因
某天有时中在我的毛病平台搜查到了这个名叫PHPBACK的CMS,发觉该CMS的V1.3.0版本存在SQL注入毛病,因而我就想看一下这个CMS毛病的源代码.
二:PHPBACK程序简明先容
Phpback是WEB运用的反应系统,给用户一种方法来反应题目和发起,协助圆满网站.
由于公布的毛病详情为背景注入,是以咱们一同来看看能否有前台注入呢?
三:开端审计
1.审计以前需求咱们从WEB端先相熟这个CMS,这时能够简明施行黑盒测试,而后再通读全文代码,在施行这一步以后,咱们就能够找到大略哪些点是用户交互的场合了.
2.SQL注入实例
a)经过观看代码,咱们能够定位到application--controllers--home.php--search()
b)咱们能够看到,search()办法接受了一个POST提交的query参数,而后代入了getIdeasBySearchQuery()办法,咱们能够在sublime中搜查这个办法在那里终了的.
c)经过搜查能够看到该办法在application--models--get.php中终了,咱们跟出来
d)红字部份为该行PHP代码的释意.咱们能够发觉当$query为test时,履行的SQL语句为:
e)这个$query参数是咱们可控的,是以这边咱们能够将test实质批改成咱们的注入语句便可,先来看一下数据库中经管员帐号明码寄存的表名与字段名
f)首先咱们经过观看数据库表机关,可直接获得ideas表有9个列,是以能够将$query参数赋值为:
g)咱们找到对应的页面,测试能否能爆发显示位
h)这一步咱们获得了显示位为2,3,6,7,是以这边咱们能够把注入语句批改成
i)如此咱们就曾经终了了这个注入点的注入了,phpback