一枚有意思的mysql注入

tips: where条件语句后不允许指定数据库名or表名 以及一个找后台的小技巧

注入表名:

注入列名:

失败。

失败的原因可能是’被转义了,之前遇到过,ok 换16进制代替

失败。

猜测是URL超长

排除URL超长的可能

猜测是information_schema这个库中的columns表名改了于是测试:

还是失败。

注入当前数据库的表名用数据库名称 代替database()函数

失败

猜测 where后面只能用函数,不能跟字符,用char()来编码数据

OK 继续注入爆列名

找后台

  • 1.御剑扫了一圈什么都没看到
  • 2.百度 inurl:xxxx 发现只有3个页面被收录了,没后台
  • 3.awvs带有爬虫功能,爬了一下没看见后台,倒是看到了.htaccess
1
2
3
4
5
6
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

百度发现这是TP框架的htaccess

所以有可能后台入口是http://TargetURL/index.php/admin

再仔细看下URL:index.php?s=/Guide/index/id/30

构造index.php?s=/admin/跳转到后台