绕过条件过滤
条件过滤,顾名思义就是黑名单机制,过滤掉符合条件的语句。因此我们要想办法绕过过滤,用其他方法来实现注入。
- 过滤注释
常见注释://, -- , /**/, #, --+, -- -, ;%00
可以考虑尝试基于布尔方式注入 - 过滤OR&AND-单引号
无法使用布尔判断,此处可以使用代替的方法
用&&替代and,||替代or
,尝试使用oorr去绕过 - 过滤空格和注释--单引号
sql语句中函数之间是要有空格的,如and union,但是函数和变量中可以去掉空格,如1 = 2 可以写成 1=2。
代替空格
绕过UNION&SELECT过滤
union all select
绕过函数过滤
addslashes() 函数在指定的预定义字符前添加反斜杠。
这些预定义字符是:单引号 (')、双引号 (")、反斜杠 (\)、NULL
mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符。
下列字符受影响:\x00、\n、\r、\、’、"、\x1a
浅析白盒审计中的字符编码及SQL注入
https://www.leavesongs.com/PENETRATION/mutibyte-sql-inject.html
遇到一个有趣的逻辑漏洞
https://www.leavesongs.com/PENETRATION/findpwd-funny-logic-vul.html
绕过伪静态
伪静态:伪静态通俗点说就是假的静态页面,也就是通过各种技术手段,让动态页面的URL看上去和静态页面的一样。
.htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。
我们这里利用.htaccess文件,配置重写引擎,来实现伪静态的效果。
参考资料:
Htaccess:http://www.zzbaike.com/wiki/Htaccess
Apache/RewriteRule:http://www.zzbaike.com/wiki/Apache/RewriteRule
搜索型注入
搜索型注入,就是指注入点存在于搜索功能上,很多网站都有提供搜索功能,这里也可能存在注入的。
SELECT * FROM users WHERE id='$id'
SELECT * FROM users WHERE username like '%$uname%' order by id
is_numeric过滤
PHP常用的过滤类函数
- 当php.ini配置文件开启了magic_quotes_runtime 和 magic_quotes_gpc时,PHP中的get_magic_quotes_gpc()和get_magic_quotes_runtime()函数就会自动的对指定范围内的数据进行转义。其中,magic_quotes_gpc主要作用于web客户端,简单的说主要是对
_POST、$_COOKE中的数据进行过滤;magic_quotes_runtime主要是对文件中读取的数据或从数据库查询得到的数据进行过滤。
- mysql_real_escape_string()、addslashes()可对数据中的 单引号、双引号进行转义,能够有效地防止大多数SQL注入攻击;mysql_real_escape_string()考虑了字符集,比addslashes()具有更高的安全性。当前的字符集是单字节的话,这两个函数作用相同,都可以起到转义过滤的作用,但是,随着UTF-8等字符集得到越来越广泛的使用,它们也逐渐不能满足要求了。
- 此外,还用于过滤的还有字符串操作常用函数preg_match、strlen、strcmp、strtolower、bl2br(将换行符转换为HTML终止标记)、htmlentities、htmlspecialchars( 将特殊字符转换wieldHTML等价形式,且不解析格式)等,还有isset、is_numeric、empty等表单验证函数。
is_numeric()函数用于检测变量是否为数字或数字字符串
如果将二进制或十六进制数据传递至is_numeric()函数,则也会返回为true,即被is_numeric()函数检测是数字
利用dns进行盲注
-
直接cmd里ping某个域名进行测试
-
在windows 下面,可以通过UNC 路径访问其他主机上的资源
\servername\sharename
-
Mysql的load_file()函数同样可以像windows主机访问共享一样,来获取远程文件
参考文章
绕过WAF继续SQL注入常用方法 https://www.freebuf.com/articles/web/36683.html
tamper脚本编写:https://blog.csdn.net/qq_29277155/article/details/52266478
[MySQL数据库5.X版本基本手工注入总结] https://www.2cto.com/article/201208/151503.html?pavyra=d3nh03
部分汇总

网友评论