DNS多出口分析
DNS多出口分问题现象:当dns解析出的ip非域名的本地覆盖组,则怀疑是DNS多出口或者DNS劫持。接下来判断该ip是否为网宿ip,如果不是,则是劫持问题,走劫持流程进行反馈。如果是网宿ip,则用以下方法进行DNS多出口确认。
方法一:通过抓包的方式判断多出口
以测试8.8.8.8多出口为例:
登录机器:122.136.46.146(多出口DNS IP抓包专用测试机),
执行:
sudo tcpdump -nn dst port 53 and udp |grep testdns
在其他机器,连续dig 8.8.8.8,需要构造不同的前缀名,以免结果被缓存,所以构造命令如下:
for i in {1..20}; do dig @8.8.8.8 wangsutest${i}.testdns.lxdns.com ; done
[fush@xm35 ~ 14:21:42]$ for i in {1..20}; do dig @8.8.8.8 wangsutest${i}.testdns.lxdns.com ; done
在122.136.46.146就可以看到源源不断的dig请求了,上面便有来源IP:
[watch@yb146 ~]$ sudo tcpdump -nn dst port 53 and udp |grep testdns
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
14:04:24.757489 IP 74.125.47.137.60718 > 122.136.46.146.53: 41700 [1au] A? wangsutest1.testdns.lxdns.com. (69)
14:04:25.716976 IP 74.125.47.2.49631 > 122.136.46.146.53: 44566 [1au] A? wangsutest1.testdns.lxdns.com. (58)
14:04:26.750757 IP 74.125.181.3.50040 > 122.136.46.146.53: 53990 A? wangsutest1.testdns.lxdns.com. (47)
14:04:28.224020 IP 74.125.47.135.62744 > 122.136.46.146.53: 40516 [1au] A? wangsutest2.testdns.lxdns.com. (69)
14:04:29.255839 IP 74.125.181.2.59749 > 122.136.46.146.53: 40176 [1au] A? wangsutest2.testdns.lxdns.com. (58)
14:04:30.206371 IP 74.125.47.145.39762 > 122.136.46.146.53: 14996 A? wangsutest2.testdns.lxdns.com. (47)
14:04:31.669964 IP 74.125.47.142.46313 > 122.136.46.146.53: 33430 [1au] A? wangsutest3.testdns.lxdns.com. (69)
14:04:32.681943 IP 74.125.181.15.40614 > 122.136.46.146.53: 63315 [1au] A? wangsutest3.testdns.lxdns.com. (58)
14:04:33.638824 IP 74.125.47.138.49140 > 122.136.46.146.53: 46887 A? wangsutest3.testdns.lxdns.com. (47)
14:04:35.447495 IP 74.125.47.3.46831 > 122.136.46.146.53: 63691 [1au] A? wangsutest4.testdns.lxdns.com. (69)
14:04:36.454706 IP 74.125.181.10.51442 > 122.136.46.146.53: 2562 [1au] A? wangsutest4.testdns.lxdns.com. (58)
14:04:38.820076 IP 74.125.47.11.36014 > 122.136.46.146.53: 36575 [1au] A? wangsutest5.testdns.lxdns.com. (69)
14:04:39.876869 IP 74.125.181.2.63350 > 122.136.46.146.53: 2701 [1au] A? wangsutest5.testdns.lxdns.com. (58)
14:04:40.842737 IP 74.125.73.68.47832 > 122.136.46.146.53: 21859 A? wangsutest5.testdns.lxdns.com. (47)
14:04:43.843789 IP 74.125.47.140.34852 > 122.136.46.146.53: 15856 [1au] A? wangsutest5.testdns.lxdns.com. (69)
14:04:44.793616 IP 74.125.47.129.37043 > 122.136.46.146.53: 51990 [1au] A? wangsutest5.testdns.lxdns.com. (58)
14:04:45.817476 IP 74.125.181.9.61970 > 122.136.46.146.53: 58166 A? wangsutest5.testdns.lxdns.com. (47)
14:04:47.239946 IP 74.125.47.142.46096 > 122.136.46.146.53: 50182 [1au] A? wangsutest6.testdns.lxdns.com. (69)
14:04:48.240700 IP 74.125.47.142.64726 > 122.136.46.146.53: 1427 [1au] A? wangsutest6.testdns.lxdns.com. (58)
14:04:49.183595 IP 74.125.181.3.36549 > 122.136.46.146.53: 35110 A? wangsutest6.testdns.lxdns.com. (47)
14:04:50.478652 IP 74.125.73.73.51076 > 122.136.46.146.53: 31433 [1au] A? wangsutest7.testdns.lxdns.com. (69)
14:04:51.519810 IP 74.125.47.15.40705 > 122.136.46.146.53: 45115 [1au] A? wangsutest7.testdns.lxdns.com. (58)
14:04:52.497886 IP 74.125.47.143.35166 > 122.136.46.146.53: 62820 A? wangsutest7.testdns.lxdns.com. (47)
14:04:53.936080 IP 74.125.73.70.47566 > 122.136.46.146.53: 61608 [1au] A? wangsutest8.testdns.lxdns.com. (69)
14:04:54.986093 IP 74.125.47.12.63747 > 122.136.46.146.53: 50695 [1au] A? wangsutest8.testdns.lxdns.com. (58)
14:04:55.967277 IP 74.125.73.75.34890 > 122.136.46.146.53: 29681 A? wangsutest8.testdns.lxdns.com. (47)
14:04:57.312838 IP 74.125.47.143.46604 > 122.136.46.146.53: 58335 [1au] A? wangsutest9.testdns.lxdns.com. (69)
14:04:58.361482 IP 74.125.73.84.62433 > 122.136.46.146.53: 48089 [1au] A? wangsutest9.testdns.lxdns.com. (58)
14:04:59.365100 IP 74.125.47.1.47087 > 122.136.46.146.53: 59125 A? wangsutest9.testdns.lxdns.com. (47)
14:05:00.801741 IP 74.125.47.14.34812 > 122.136.46.146.53: 339 [1au] A? wangsutest10.testdns.lxdns.com. (70)
14:05:01.785453 IP 74.125.47.146.61843 > 122.136.46.146.53: 21701 [1au] A? wangsutest10.testdns.lxdns.com. (5
抓包获取的ip,可以看到有多个
该方法的原理是:8.8.8.8在解析wangsutest.testdns.lxdns.com这个域名时,会去lxdns的DNS服务器上去请求wangsutest.testdns.lxdns.com对应的A记录,而lxdns的DNS为122.136.46.146(即是多出口DNS IP抓包专用测试机),我们所抓取的包,这是8.8.8.8对122.136.46.146的请求记录,而请求ip即是DNS出口ip。
二.查询机器使用的dns出口IP
[root@zhjhzh16 ~]# dig whoami.ultradns.net @8.8.8.8
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.3 <<>> whoami.ultradns.net @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64327
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;whoami.ultradns.net. IN A
;; ANSWER SECTION:
whoami.ultradns.net. 0 IN A 74.125.47.11 #74.125.47.11 为dns服务器8.8.8.8 的其中一个出口IP
;; Query time: 372 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Thu May 25 14:36:39 2017
;; MSG SIZE rcvd: 53
[root@zhjhzh16 ~]# dig whoami.akamai.net @8.8.8.8
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.3 <<>> whoami.akamai.net @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57990
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;whoami.akamai.net. IN A
;; ANSWER SECTION:
whoami.akamai.net. 163 IN A 74.125.47.140 #74.125.47.140 为dns服务器8.8.8.8 的其中一个出口IP
;; Query time: 344 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Thu May 25 14:38:23 2017
;; MSG SIZE rcvd: 51
DNS多出口分析的更多相关文章
- JDK中DNS缓存的分析
在JAVA中使用InetAddress.getByName(String host) 方法来获取给定hostname的IP地址.为了减少DNS解析的请求次数,提高解析效率,InetAddress中提供 ...
- DNS解析全过程分析
DNS解析过程 1.检查浏览器缓存中是否缓存过该域名对应的IP地址 用户通过浏览器浏览过某网站之后,浏览器就会自动缓存该网站域名对应的IP地址, 当用户再次访问的时候,浏览器就会从缓存中查找该域名对应 ...
- DNS投毒学习分析总结
[一]背景 今晚看一份日志,数据很奇怪.大佬说是DNS投毒,盲点就来了,学习一下~ [二]内容 https://zhuanlan.zhihu.com/p/92899876 看完内容发现属于之前写的DN ...
- 应用层协议FTP、DNS协议、HTTP协议分析
分析所用软件下载:Wireshark-win32-1.10.2.exe 一.阅读导览 1.分析FTP协议 2.分析DNS协议 3. 分析HTTP协议 二.分析要求 (1)ftp部分: 学习 Serv- ...
- 第二次作业:使用Packet Tracer分析应用层协议(DNS、FTP、DHCP、SMTP、POP3)
0 个人信息 张樱姿 201821121038 计算1812 1 实验目的 熟练使用Packet Tracer工具.分析抓到的应用层协议数据包,深入理解应用层协议,包括语法.语义.时序. 2 实验内容 ...
- dns 安全可视化
dns 安全 可视化 === 明确目标: 1,什么是dns安全可视化. 什么是dns 2,怎么做到dns安全可视化. 3,什么是BI 4,dns安全 是什么, 有哪些数据需要展示. 明确方法: 1,先 ...
- dns安全可视化 设计
这么设计 dns 常见的 安全分类.显示出来. dns 的安全数据,显示出来. 各种相关数据. 展示方式, 图标,饼图,柱状图等等,多屏拼接. 前端的可视化展示 方式 由 文慧 提供 或者实现. 相关 ...
- ELK学习笔记之F5 DNS可视化让DNS运维更安全更高效-F5 ELK可视化方案系列(3)
0x00 概述 此文力求比较详细的解释DNS可视化所能带来的场景意义,无论是运维.还是DNS安全.建议仔细看完下图之后的大篇文字段落,希望能引发您的一些思考. 在“F5利用Elastic stack( ...
- 试着用java实现DNS(一)——DatagramSocket, DatagramPacket, Message
一般来说,自己编写DNS是没有必要的,目前开源的dns服务软件很多,功能也很强大.但是,有时候又是很有必要的,有着诸多好处.比如说,用于企业内网,简化DNS配置,可以根据企业需求添加新的功能,非常灵活 ...
随机推荐
- jquery的ajax的success和fail用法
$.ajax({ type:"POST", url: url, contentType: 'application/json;charset=utf-8', data: JSON. ...
- [反汇编练习] 160个CrackMe之029
[反汇编练习] 160个CrackMe之029. 本系列文章的目的是从一个没有任何经验的新手的角度(其实就是我自己),一步步尝试将160个CrackMe全部破解,如果可以,通过任何方式写出一个类似于注 ...
- HBase 基本操作
如何添加列族 很简单,跟rdbms一样 直接用alter,但是alter之前必须先disable这个表 ---->disable 'test' ...
- c++程序猿经典面试题(2)
1.以下程序的输出结果是? #include<stdio.h> main(){ int b=3; int arr[]={6,7,8,9,10}; int *ptr=arr; *(ptr++ ...
- javascript之Ajax获取和设置标头
XMLHttpRequest对象中与标头有关的方法: setRequestHeader(<header>,<value>)--用指定值设置标头. getResponseHead ...
- 第十六周 项目三-max带来的冲突
分析以下程序出现的编译错误,给出解决的方案. #include<iostream> using namespace std; //定义函数模板 template<class T> ...
- RSA、AES加密解密
RSA #!/usr/bin/env python # -*- coding:utf-8 -*- import rsa import base64 # ######### 1. 生成公钥私钥 #### ...
- JavaScript 工厂模式和订阅模式
设计模式的好处: 代码规范 // 例如表单验证,两个 input ,一个用户名,一个密码 // 通常做法是 function checkUser(){ //..... } function check ...
- 自己定义struts2中action类型转换器
DateAction.java中代码例如以下: package com.itheima.action; import java.util.Date; public class DateAction { ...
- ARM体系结构与编程-5
GET通经常使用于包括定义常量的源文件. 比如:GET 2440addr.inc 用AREA定义一个段.ENTRY用于指定程序的入口点,END用于告诉汇编器源文件已经结束. 比如: AREA init ...