DNS缓存欺骗攻击
1、受影响的无线网络设备
一些D-link、TP-Link、Belkin、Linksys及IPTime等品牌无线路由器存在安全隐患。
2、漏洞描述
攻击者向DNS服务器注入非法网络域名地址,如果服务器接收这个非法地址,那说明其缓存被攻击了,而且以后响应的域名请求将会受到攻击者所控制。
当这些非法地址进入服务器缓存,用户的浏览器或者邮件服务器就会自动跳转到DNS指定的地址。
3、漏洞实现原理
1、当一个DNS缓存服务器从用户处获得域名请求时,服务器会在缓存中寻找是否有这个地址。如果没有,它就会向上级DNS服务器发出请求。
2、在出现这种漏洞之前,攻击者很难攻击DNS服务器;他们必须通过发送伪造查询响应、获得正确的查询参数以进入缓存服务器,进而控制合法DNS服务器。这个过程通过持续不到一秒钟,因此此类非法攻击很难获得成功。
3、但是现在利用该漏洞,攻击者有了转变。这是攻击者对缓存服务器进行持续不断查询请求,服务器不予以回应。比如一个攻击者可能发出类似请求:1y2a3n4g.g.cn,而且他也直到缓存服务器中不可能有这个域名。这就会引起缓存服务器发出更多查询请求,并且会出现更多欺骗应答的机会。
4、当然,这并不是说攻击者拥有很多机会来猜测查询参数的正确值。事实上,是这种开放源DNS服务器漏洞的公布,会让它在10s内受到危险攻击。
5、要知道,即使1y2a3n4g.g.cn受到缓存DNS中毒攻击危害也不大,因为没有人会发送这样的域名请求,但是,攻击者可以通过欺骗应答给缓存服务器指向一个非法的服务器域名地址,该地址对应一般为攻击者所控制或者伪装成DNS服务器或者DNS代理。
6、由于攻击者现在可以控制DNS域名服务器,每个网址的查询请求都会被重定向到黑客所指定的服务器上。
DNS攻击工具(针对无线):https://github.com/jordan-wright/python-wireless-attack
4、漏洞检测
检测存在该DNS漏洞的无线路由器工具:Acunetix Web Vulnerability Scanner.
DNS缓存欺骗攻击的更多相关文章
- DNS域欺骗攻击详细教程之Linux篇
.DNS域欺骗攻击原理 DNS欺骗即域名信息欺骗是最常见的DNS安全问题.当一 个DNS服务器掉入陷阱,使用了来自一个恶意DNS服务器的错误信息,那么该DNS服务器就被欺骗了.DNS欺骗会使那些易受攻 ...
- 【转】一种新型的Web缓存欺骗攻击技术
为了减少WEB响应时延并减小WEB服务器负担,现在WEB缓存技术已经用的非常普遍了,除了专门的CDN,负载均衡以及反向代理现在也会缓存一部分的网页内容.这里我要介绍一种WEB缓存欺骗攻击技术,这种攻击 ...
- DNS 缓存投毒
原文:[DNS Cache Poisoning]( https://medium.com/iocscan/dns-cache-poisoning-bea939b5afaf) 译者:neal1991 w ...
- [科普]DNS相关的攻击介绍
一 什么是DNS DNS 是域名系统 (Domain Name System) 的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不 ...
- DNS 缓存中毒--Kaminsky 攻击复现
0x00 搭建实验环境 使用3台Ubuntu 16.04虚拟机,可到下面的参考链接下载 攻击的服务是BIND9,由于条件限制,这里使用本地的一台虚拟机当作远程DNS解析器,关闭了DNSSEC服务,其中 ...
- Kali下Ettercap 使用教程+DNS欺骗攻击
一.Ettercap 使用教程 EtterCap是一个基于ARP地址欺骗方式的网络嗅探工具.它具有动态连接嗅探.动态内容过滤和许多其他有趣的技巧.它支持对许多协议的主动和被动分析,并包含许多用于网络和 ...
- DNS缓存中毒是怎么回事?
近来,网络上出现互联网漏洞——DNS缓存漏洞,此漏洞直指我们应用中互联网脆弱的安全系统,而安全性差的根源在于设计缺陷.利用该漏洞轻则可以让用户无法打开网页,重则是网络钓鱼和金融诈骗,给受害者造成巨大损 ...
- DNS缓存中毒的知识
网络上出现互联网漏洞——DNS缓存漏洞,此漏洞直指我们应用中互联网脆弱的安全系统,而安全性差的根源在于设计缺陷.利用该漏洞轻则可以让用户无法打开网页,重则是网络钓鱼和金融诈骗,给受害者造成巨大损失. ...
- Windows下DNS ID欺骗的原理与实现
域名系统(DNS)是一种用于TCP/IP应用程序的分布式数据库,它提供主机名字和IP地址之间的转换信息.通常,网络用户通过UDP协议和DNS服务器进行通信,而服务器在特定的53端口监听,并返回用户所需 ...
随机推荐
- Java微信二次开发(三)
各种类型消息的封装 第一步:找到com.wtz.message.response包,新建类Image.java package com.wtz.message.response; /** * @aut ...
- codeforces622B
The Time CodeForces - 622B 给你当前的时间(24小时制):HH:MM.输出 x 分钟后的时间是多少?(24小时制) 不明白可以看看例子哦- Input 第一行给出了当前时间, ...
- python---面对对象的三大特征
一.三大特征 面对对象的三大特征:继承.多态和封装,继承在面向对象类的创建中非常常见. 1.继承 为什么会有继承,当我们要创建一个新类的时候,发现他有很多属性或者反法都和我们另一个类的方法相同,这时我 ...
- BZOJ2157旅游——树链剖分+线段树
题目描述 Ray 乐忠于旅游,这次他来到了T 城.T 城是一个水上城市,一共有 N 个景点,有些景点之间会用一座桥连接.为了方便游客到达每个景点但又为了节约成本,T 城的任意两个景点之间有且只有一条路 ...
- JS通过键盘点击事件实现div移动
页面内容:文本框模拟键盘点击 div元素实现移动: <body> <textarea id="myarea"></textarea> < ...
- 【CF960G】Bandit Blues(第一类斯特林数,FFT)
[CF960G]Bandit Blues(第一类斯特林数,FFT) 题面 洛谷 CF 求前缀最大值有\(a\)个,后缀最大值有\(b\)个的长度为\(n\)的排列个数. 题解 完完全全就是[FJOI] ...
- android 同时打开两个sqlite database db
1,数据库类 package com.example.testdb; import android.content.Context; import android.database.SQLExcept ...
- dij与prim算法
两种算法本质是相同的. 都是从某一个点开始进行延伸,不断更新一个dis值,直到所有的点都被遍历到,从而求出一个最短路或者是一个树的边权的最小总和. 朴素算法都是n^2,都可以采用堆优化处理,降低复杂度 ...
- SQL Server 增、删、改、小部分查
--现有三个表Student.Score.Course.Teacher create table Student ( Sno ) not null,--学号 Sname ) not null,--姓名 ...
- springboot 读取 resource文件
文件位置信息如图: import java.io.IOException; import java.io.InputStream; import java.net.URLEncoder; import ...