我劫持你的dns

这篇文章把Dns分为两种,一种是主机或嵌入式设备dns,一种是网站域名dns,来讲述dns沦陷之后带来的危害。

一:路由器dns劫持

你本地的网络连接的dns是通过路由器获取的,假如有一天你家里的路由被黑客入侵了,入侵者修改了你家里路由器的dns,那么他可以对你访问记录非常清楚,如系在文件,流量记录。既然解析都通过dns,我们完全可以自建dns,来进行攻击。

    1.路由器怎么样沦陷

攻击手法:csrf  路由器漏洞

CSRF

IE 出了一个安全补丁,禁止了Http Authentication Url, 使用此方法在IE下攻击是无效的 完美兼容FF chrome。 https://support.microsoft.com/zh-cn/kb/834489

<img src=http://192.168.1.1/userRpm/LanDhcpServerRpm.htm?dhcpserver=1&ip1=192.168.1.100&ip2=192.168.1.199&Lease=120&gateway=0.0.0.0&domain=&dnsserver=恶意的dns地址&dnsserver2=0.0.0.0&Save=%B1%A3+%B4%E6></img>

设备漏洞

烽火通信某款路由器被爆存在漏洞-可远程修改DNS

http://www.exploit-db.com/exploits/28450/

    2.自建dns(window)

在这里我使用微软自家产,(完全可以用其他产品代替,个人习惯问题)

        配置劫持域名

myhack58.com

转发器配置

转发器解决这台服务器没有应答的dns查询请求, 如这台主机只有myhack58.com, baidu.com等是不存在的,这种情况把会把baidu.com请求转发到你配置的dns去解析。我配置解析的dns是8.8.8.8

配置劫持域名A记录

刚才dns填写是跟域,这时候需要对A记录进行解析,比如我劫持www.myhack58.com到本地127.0.0.1。

我这解析是vps的IP,测试可以写127.0.0.1。但要用起来你解析写公网ip地址,不然别人解析是127.0.0.1,127.0.0.1是你本地,找不到的地址,没办法跟反向代理代理配合。

测试dns是否配置成功

可以使用dnslookup ping 等去测试

Dns已配置成功,虽然现在解析本地了,我本地难道就只能挂个黑页?当然不是,我的目的是要求是替换页面的内容.比如插入js,修改某个文字等。

客户端的配置

由于我在公司没有路由器,直接使用客户端做测试,客户端的dns获取来源还是路由器。

这时候配置成功,你可以打开baidu.com来测试,是否可以解析,正常打开。

3.反向代理搭建

反向代理来这里启到作用是,把dns解析www.myhack58.com的vps的这个请求代理到真实的解析。

我们要做的事情 要给页面插入一段js。

Openresty介绍

在这里我们使用Openresty,Openresty是基于nginx,它打包了标准的 Nginx 核心,很多的常用的第三方模块,nginx第三方模块都需要编译,在window下比较恶心 我直接找了一个Openresty_For_Windows,已打包我想要的是第三方模块http_sub_module。

下载地址:

https://github.com/LomoX-Offical/nginx-openresty-windows

使用nginx  -V 查看已支持的第三方模块

http_sub_module缺点

1.只能使用一条规则

2.不支持中文

反向代理配置

监听端口vps的公网IP的80端口.当dns查询请求解析到本地80的时候,80正好监听vps公网ip,反向代理是myhack58.com。实际上vps公网ip是myhack58.com

打开/conf/nginx.conf文件进行配置

使用了http_sub_module,替换了内容把

</head>换成</head><script sec=safe.js></script>,我故意写错 写成sec=

测试是否成功

先前已经把dns设置过去了,现在也可以ping通,那我们就查看源码 是否替换了页面内容。

配置其他功能

现在dns加反向代理配置已经完成了,你可以替换他的页面了

Openresty配置反向代理,你要是需要其他的配置还可以设置很多参数,如proxy_cache proxy_header  proxy_send_timeout  proxy_read_timeout。取决于自己用途。

二:网站域名dns劫持

当你通过社工拿到了某个域名权限, 但是你的目的是getshell,这时候你可以做反向代理,可以从两方面下手去做。

A记录劫持演示

直接修改域名劫持到A记录的你的恶意反向代理,但是这时候反向代理必须有配置upstream,在upstream指定原域名解析的ip地址,路由器劫持dns没有配置upstream 是因为上层的dns还可以解析到劫持域名的真实ip,而你这时候意见把A记录解析修改到了你的恶意反向代理机器,不去指定解析的地址, 上层找到解析的地址还是恶意的反向代理,形成一个死循环,永远打不开网站。

域名A记录劫持

www.sanr.org  192.168.182.128

反向代理      192.168.182.129

为什么要劫持A记录

如你通过社工之类拿到了域名的控制权限,这时候你想获取他的后台地址,或者cookie等你就需要这样做。

目前我已经控制sanr.org的域名解析权限,现在我们要做的是把www.sanr.org的A记录解析到192.168.182.129。让反向代理去访问真实的ip(也就是192.168.182.128),在反向代理的时候我们动手脚,插个js代码进去。

没修改A记录之前

修改域名A记录

修改域名到反向代理服务器 192.168.182.129

反向代理服务器搭建(192.168.182.129)

绑定域名为www.sanr.org 端口80,并指定上游(upstream)地址是192.168.182.128,必须指定上游地址(upstream),只有proxy_pass无upstream他会自动请求解析A记录。

路由器dns劫持那块没有用upstream是因为域名的A记录的iP地址你可以通过proxy_pass获取到。

而现在域名A记录解析是反向代理机器也就是本机(192.168.182.129),如不使用upstrema去指定真实的IP地址,proxy_pass直接去解析到的是本地IP,那么就会造成死循环,一直解析的都是本机。

下面是反向代理配置文件。

劫持成功

成功的给sanr.org的植入safe.js代码

dns劫持

跟路由器劫持dns一样,自建dns,之后把域名的dns解析配置的A记录解析到恶意的反向代理,反向代理中还是要指定upstream,跟a记录劫持一样,不然造成死循环。

Dns服务 反向代理软件有很多,完全取决于自己的习惯,用自己最喜欢的。

Dns win

WinMyDNS

微软自家

Dns linux

dnschef   “msfconsole  auxiliary/server/fakedns”

Powerdns bind 等 linux开源项目太多

反向代理

Squid  Varnish nginx 或者nginx 衍生版(Tengine  Openresty)

攻击手法不仅仅是替换网页内容 插入js,如劫持你路由器的dns, 连接3389也是输入域名也是通过dns解析的,我完全可以把A记录劫持我本地,连接3389是我本机的机器,之后安装WinlogonHack,来记录密码,WinlogonHack需要改成即使是错误密码也要记录,不然记录不到。

把www.baidu.com解析到我vps主机的ip

    Dns已生效,解析baidu.com也返回是vps主机的ip

连接3389(其实这时候是我vps的IP)

只要涉及到域名解析的 本地host  本地客户端dns  路由器dns,都可以这样去劫持,攻击手法变化多样,看你出自于什么目地去做。

doc文档github下载

时间: 2024-10-20 06:37:55

我劫持你的dns的相关文章

DNS劫持

一.DNS原理 1.1.基本概念 1.1.1.DNS(Domain Name System,域名系统)是指由域名到ip地址的映射,DNS协议运行在udp协议之上,使用端口号53.该域名->ip地址的映射分两种:静态映射(本地维护一个映射表),动态映射(需要一套域名解析系统). 1.1.2.主机名:三级域名.二级域名.顶级域名. 1.1.3.Internet的域名空间 (1)国家顶级域名nTLD:cn代表中国,us代表美国,uk代表英国,等等. (2)通用顶级域名gTLD:最常见的通用顶级域名有7

DNS劫持 DNS污染 介绍 与 公共DNS 推荐

来源:http://www.itechzero.com/dns-hijacking-dns-pollution-introduction-and-public-dns-recommend.html 我们知道,某些网络运营商为了某些目的,对 DNS 进行了某些操作,导致使用 ISP 的正常上网设置无法通过域名取得正确的 IP 地址.常用的手段有:DNS劫持 和 DNS污染.DNS劫持 和 DNS污染 在天朝是非常常见的现象.一般情况下输入一个错误或不存在的 URL 后,本应该出现404页面,而我们

小说dns劫持

小说dns劫持 我们都知道,dns服务器的作用在于解析域名,将人容易记忆的域名与机器理解的ip地址联系起来.我们用域名访问一个网站的时候,主机首先会访问dns服务器,得到所要访问网站的ip地址,然后主机再根据这个IP地址来访问网站. 什么是dns劫持: DNS劫持又称域名劫持,是指通过某些手段取得某域名的解析控制权,修改此域名的解析结果,导致对该域名的访问由原IP地址转入到修改后的指定IP,其结果就是对特定的网址不能访问或访问的是假网址. DNS的查询过程: dns劫持的方法: dns劫持的方法

怎么看DNS是否被劫持

怎么看dns是否被劫持?一般来说,DNS被劫持有2种情况,一种是路由器DNS被劫持,另外一种是电脑DNS被劫持.针对这2种DNS劫持,下面分别介绍下如何查看. 一.怎么看电脑DNS是否被劫持 1.在电脑桌面右下角的网络图标上点击鼠标右键,在弹出的选项中,点击"打开网络和共享中心". 2.在打开的网络和共享中心,点击已经连接的网络名称,之后会打开网络状态 3.然后点击网络状态下面的"属性",在弹出的网络属性对话框,先选中"Internet版本协议4(TCP/

什么是DNS劫持和DNS污染?

什么是DNS劫持和DNS污染? http://blogread.cn/it/article/7758?f=weekly 说明 我们知道,某些网络运营商为了某些目的,对 DNS 进行了某些操作,导致使用 ISP 的正常上网设置无法通过域名取得正确的 IP 地址.常用的手段有:DNS劫持 和 DNS污染. DNS劫持 和 DNS污染 在天朝是非常常见的现象.一般情况下输入一个错误或不存在的 URL 后,本应该出现404页面,而我们看到的却都是电信.联通等运营商的网址导航页面,正常访问网站时出现电信的

手机被DNS劫持后的更改方案

首先说什么是DNS劫持 DNS劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的IP地址或者什么都不做使请求失去响应,其效果就是对特定的网络不能反应或访问的是假网址.运营商DNS劫持 再看看DNS劫持怎么检测 通过iis7网站监控,输入自己的域名,就可以立马看到自己的网站是不是被劫持了,并且查询结果都是实时的,可以利用查询结果来更好的优化我们的网站. 用户在接入网络运营商(联通.电信等)网络时,一般都默认获取运营商自动下发的DNS服

DNS劫持的危害严重吗?

如何知道自己的网站是否出现劫持的问题. IIS7网站监控 检测网站是否被劫持.域名是否被墙.DNS污染检测.网站打开速度检测等信息. 比较常见的,DNS劫持(域名劫持).DNS域名解析是把你平时输入的好记的网址翻译成一个ip地址的过程,你上网易会在浏览器地址栏里输入:***,但其实后台会给翻译成一个数字形式,比如213.234.1.XXX之类的. 有可能你中了***或者恶意代码之后,在翻译的过程中扰乱你的电脑,翻译成另一串数字,让你上他想让你上的网页. 有点类似于你去医院挂个号,结果给你挂到路对

dns劫持的方式是什么?

什么是DNS劫持 DNS劫持又称域名劫持,是指通过某些手段取得某域名的解析控制权,修改此域名的解析结果,导致对该域名的访问由原IP地址转入到修改后的指定IP,其结果就是对特定的网址不能访问或访问的是假网址. IIS7网站监控 测网站是否被劫持.域名是否被墙.DNS污染检测等信息. 如果可以冒充域名服务器,然后把查询的IP地址设为IP地址,这样的话,用户上网就只能看到的主页,而不是用户想要取得的网站的主页了,这就是DNS劫持的基本原理. DNS劫持其实并不是真的"黑掉"了对方的网站,而是

DNS污染与劫持

问题发现 我经常从edx课程的课程进行学习 我根据火狐的提示一直以为是协议的SSL3.0和TLS1.0的协议过时了,现在浏览器不支持. 后来才发现是3级域名被污染了. ping courses.edx.org/login 本地电脑ping 远程服务端ping DNS污染 网域服务器缓存污染(DNS cache pollution),又称域名服务器缓存投毒(DNS cache poisoning),是指一些刻意制造或无意中制造出来的域名服务器数据包,把域名指往不正确的IP地址. 其工作方式是:由于