当前位置: 代码迷 >> 综合 >> SeedLab8: Remote DNS Attack (Kaminsky Attack) Lab
  详细解决方案

SeedLab8: Remote DNS Attack (Kaminsky Attack) Lab

热度:18   发布时间:2023-12-06 12:10:36.0

做完了本地的,来康康远程的
难点就是不能嗅探数据包再进行伪造了,一些字段要通过猜测得到


Task 1

local里配过了,验证一下就行

在这里插入图片描述

在这里插入图片描述

Task 2

按教程配一条转发
(因为我们自己设置的域名是真实存在的…如果将其作为权威服务器,那么本地DNS服务器会向顶级DNS服务器请求它的IP,然后发送请求,但是这就超出了我们的控制范围
(配一条转发,就是让DNS服务器把对这个权威服务器的请求都发往我们能控制的IP

在这里插入图片描述

其他的按教程删改

Task 3

attacker上配两个zone文件(网站上下载模版
(这里要注意 www和ns对应的IP最好是能控制的主机,否则可能会因为收不到应答而扑街

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Task 4

验证一下~
dig 权威服务器,返回zone里记录就行
在这里插入图片描述
抓包能看到,DNS服务器会进行转发操作,由attacker主机回应

在这里插入图片描述

dig www.example.com,emm此时肯定还是真实IP

在这里插入图片描述

但是dig @权威服务器 www.example.com,指定了向attacker询问就不一样了,直接返回zone里记录

在这里插入图片描述

Task 5

Kaminsky攻击的原理:发送多个不存在的域名请求(如twysw.example.com),此时DNS服务器会向其权威服务器请求,此时攻击者发送大量伪造的DNS回应,并猜测transaction ID,在权威服务器回应之前到达,且某一个猜对了transaction ID的话,就能成功写入缓存了
几个要点:

  1. 发送多个不存在的域名请求:是因为如果一次攻击失败了,那么缓存中就写入了正确的DNS记录,此时再次对同一个域名请求,就不会查询而直接发回缓存了,所以用每次不同的域名进行多轮尝试
  2. transaction ID只有16位,所以通过大量猜测能成功
  3. 写入的时候我们在权威字段加入攻击者的权威服务器,对整个域进行攻击

先用scapy写一个DNS请求

在这里插入图片描述
发出去能收到回应

在这里插入图片描述

Task 6

再用scapy写一个DNS回应
(注意这里原地址要用www.example.com真实的权威服务器IP,伪造的权威服务器名为fakens.com

在这里插入图片描述

抓包能看到正确的包

在这里插入图片描述

Task 7

scapy构造包,C发包(attack.c的模版官网下载
发包时有些字段要改改

  1. 请求/回应的域名前五个字符(attacker.c给生成了随机五个字符,需要覆盖
  2. 回应的transaction ID(0~65535循环猜测

scapy构造请求,写入ip_req

在这里插入图片描述
康康ip_req,看一下域名的偏移

在这里插入图片描述
scapy构造回应,写入ip_resp

在这里插入图片描述

康康ip_req,看一下域名的偏移
transaction ID的位置看不出来,教程说了就是固定的28

在这里插入图片描述

attacker.c创建socket、修改、发送

在这里插入图片描述
模版给了socket的创建,需要自己修改一下(传参或作为全局变量

在这里插入图片描述

然后开始攻击~(进行很多次尝试,一般30次以内就能成功

在这里插入图片描述

在DNS服务器监视缓存,写入就成功了
(开始攻击前记得清空DNS缓存

在这里插入图片描述

Task 8

最后验证一下(在记录的有效期内
dig @攻击者的权威服务器 www.example.com,直接向attacker请求,返回zone里内容

在这里插入图片描述

攻击成功的话,直接dig www.example.com,得到的是一摸一样的记录
(因为缓存里写入了example.com对应的权威服务器,DNS服务器会直接向攻击者的权威服务器请求,还是返回zone里内容

在这里插入图片描述

第二个完结~
参考了小姐姐的github,but最后没结果是因为写错了(小声
https://github.com/MrudhulaShenava/Internet-Security/blob/59774a35bf74feee12780f79fa0a68394dc07a85/MrudhulaAShenava_IsecLab6.pdf

  相关解决方案