文章作者:rabbitsafe 信息来源:邪恶八进制信息安全团队(www.eviloctal.com)
注:文章已经发表于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。
 图4 查询服务器的信息 下面再来猜后台,先猜出后台再说,因为很多时候猜出了用户名和密码,最后却找不到后台登录的地方。先试了几个常见的,admin、manage、 admin、php、manage、php、login、admin_index.php,结果都没找到。我想应该是管理员把后台改了,但是一般管理员不会改的很复杂,我就在一些常用的后台上加了些数字,例如:admin123、admin123456、admin88、admin888、 manage888,我就依次试了试,结果后台出来了,真是黄天不负有心天啊!http://shu.XXX.com/admin888/admin_login.php,
 图5 性图书联盟的后台登录地址 接下来,我们该猜解管理员表名,用户名,密码了,常见的都试了一遍,例如:user、admin、manage,password、pass、login,一个都没有,用工具也试了一遍,也没找出来,入侵陷入困难,看看时间,也该睡了,养好精神明天再接着渗透。
二、利用serv-u用户信息配置文件拿webshell 第二天上课时,手里刚好有本《黑客手册》第3期,反正课也无聊,我就开始看《黑客手册》,Q版黑客栏目里一篇文章,《从万象VOD视频点播到FTP密码》给了我启发,既然我没有办法猜到表名,可以试试文章里的方法啊,它也是windows系统,而且可以读取系统文件内容,如果管理员没有改变serv-u的安装路径,那我就可以像文章里说的,先读取serv-u用户信息配置文件ServUDaemon.ini中的内容,然后再猜解加密密码,如果能猜出密码,就可以成功拿到网站的权限了。
[1] [2] 下一页 |