本人声明整个过程完全是为了进行实验学习,并没有侵犯任何人的权益

DNS原理

实质是域名解析协议,,假设一企业员工上班浏览网页,他会在浏览器里输入http://www.xxxxxx.com这个网站域名,输入之后他的电脑并不知道这是个什么玩意,于是先查找本地的DNS缓存表,若是没有这条信息就会向最近的DNS服务器寻求帮助,直到找到这个网址指向的xxWeb服务器的IP地址才能访问xx的网页服务

具体如何进行DNS解析有很多细节,不多说了,这里的重点是主机会向DNS服务器寻求帮助

DNS欺骗

既然正常的DNS解析需要经过DNS服务器,那么能不能通过中间人攻击在两者之间横插一脚,窃取企业员工想要访问xx的意图,并伪装成DNS服务器代替DNS服务器为他提供错误的域名解析结果,将http://www.xxxxxx.com这个域名指向一个提前准备好的虚假的看似可信的网站,也叫做钓鱼网站,在未授权情况下获取他的姓名、年龄、账号、密码等私密信息

话不多说咱们开始

实验

实验内容

使用kali对想要使用xxWEB服务的企业员工主机进行DNS欺骗,诱使他进入提前准备好的钓鱼网站窃取他的私密信息

实验设备

  • Win XP
  • Win Sever 2003
  • kali

实验拓扑图

攻击步骤

发布虚假的网站

利用Apache发布与xx一模一样的钓鱼网站,并且做出修改窃取私密信息

首先需要开启kali上的web服务也就是Apache

systemctl start apache2      //开启Apache服务
netstat -antpl              //查看当前的服务

将淘宝的网站更改后发布在Apache上

Apache类似于windows的web服务,也会自动生成一个默认的站点,路径为:/var/www/html

这里将自动生成的网页删除换成xx的

cd /var/www/html //进入该目录
ls                  //看看里面有什么
rm -rf *            //删除
cp -r /home/kali/桌面/taobao/* ./  //将这个路径下的所有文件复制到当前路径

查看并更改1.txt的权限

ls -l                //查看权限
chmod 777 1.txt     //所有人对1.txt拥有所有权限

linux的权限是基于八进制数字系统而创建的,读权限(read,r)的值是4,写权限(write,w)的值是2,执行权限(execute,x)的值是1,没有授权的值是0,而三个777分别对应文件实际拥有者,文件实际拥有者所在的组,其它用户的权限都为4+2+1也就是最高权限(真尼玛难理解)

编写error.php文件用于点击登录后表单的提交和页面跳转

<?php$nam = stripslashes($_POST[ 'name ']);
$pas = stripslashes($_POST[ 'pass ']);$content = "您已捕获淘宝账号及密码1个:" . " 用户名 " . $nam . " 密码 " . $pas;
$filed = @fopen("1.txt", "a+" );@fwrite($filed, "$content\n");?><html>
<head><script type="text/javascript">function goBack(){window.history.back()11后退+刷新}</script>
</head>
<body οnlοad="goBack()"> <!--加载之后立即执行一段 JavaScript -->
</ body>
</html>

需要注意的是其中的name和pass需要和下面的两个文件中input标签中的name属性值对应对应,这样才能成功的截取到提交的表单信息

伪装DNS服务器

原本企业员工主机中会存在这样的表www.taobao.com–10.1.1.3通过DNS投毒直接把他改掉变成www.taobao.com–10.1.1.2

更改ettercap的DNS配置文件,目的是当开始DNS投毒时按照这个配置文件来执行

vim /etc/ettercap/etter.dns
//使用vim打开这个配置文件

打开之后长这个样子,带#的都是注释所以相当于这个文件是空的,啥都不用管,在里面加上这两行就行

下面是vim的操作方法

i        进入插入模式
ESC     退出插入模式
:q      退出
:wq     写入并退出

其中A代表正向DNS解析PTR代表反向DNS解析,为什么要加反向呢?因为有的浏览器会进行DNS反向验证,为了确保实验的成功加了两句,此外如果你想做的绝一点可以将前面域名部分改成 * 这样就意味着所有的域名都被解析成10.1.1.2,直接GG

中间人攻击

首先你需要进行ARP投毒让他们之间的信息流向你

我的上一篇文章有详细介绍网络安全基础——中间人攻击

完成ARP投毒后再打开DNS攻击的阀门,还是在ettercap中plugins->Manage plugins,双击dns_spoof打开,这时企业员工的主机的DNS就已经被投毒了,www.xxxxxx.com 访问的不再是xx网页了,而是钓鱼网站

做到这里企业员工的主机是已经被投毒了的,但是有可能还是访问了淘宝的网页,这是因为他的电脑里存在xx的DNS解析缓存,你可以执行一下ipconfig /flushdns刷新DNS缓存就可以了

总结

我的这次实验最终其实是失败了,但也不能说是完全失败,怎么说呢。。。我的DNS投毒成功了企业员工的主机会通过www.xxxxxx.com访问我的钓鱼网站,但是由于我对PHP和HTML网页的学习不是很多所以在分析xx的网页代码的时候没办法和error.php文件连接上导致表单数据没法传输记录下来,但是这都是小问题,钓鱼网站的技术我是学会了。

最后还是请大家千万别做违法的事情,以上全部内容都在下面的视频中有讲解:

【千锋】网络安全300集全套视频教程(web安全/渗透测试/黑客攻防/信息安全/代码审计)

网络安全基础——DNS欺骗相关推荐

  1. 网络安全-DNS欺骗与钓鱼网站

    参考博文: [千锋]网络安全300集全套视频教程(web安全/渗透测试/黑客攻防/信息安全/代码审计),网络安全基础入门到精通_哔哩哔哩_bilibili [千锋]网络安全300集全套视频教程(web ...

  2. 网络安全基础——ARP欺骗

    ARP欺骗 ARP协议 实质 IP-MAC地址转换协议 ARP协议漏洞 无法进行身份验证,ARP缓存表无条件学习后到达的ARP请求 攻击方法 假设1要给3发信息 "我喜欢你!" 起 ...

  3. [网络安全自学篇] 四十二.DNS欺骗和钓鱼网站原理详解及防御机理

    这是作者的网络安全自学教程系列,主要是关于安全工具和实践操作的在线笔记,特分享出来与博友们学习,希望您们喜欢,一起进步.前文分享了中间人攻击或ARP欺骗攻击,从ARP原理到局域网配置进行描述.这篇文章 ...

  4. 网络安全基础之DNS与DHCP

    格式有点乱,图片也没了.直接导入的md文件.要原件私聊我. 网络安全基础 1. Windows系统 (1)DNS 域名系统,是互联网的一种服务. 它作为将域名和IP地址相互映射的一个分布式的数据库,能 ...

  5. [网络安全学习篇23]:DNS欺骗与钓Y网站(千峰网络安全视频笔记 p114-p116)

    引言:我的系列博客[网络安全学习篇]上线了,小编也是初次创作博客,经验不足:对千峰网络信息安全开源的视频公开课程的学习整理的笔记整理的也比较粗糙,其实看到目录有300多集的时候,讲道理,有点怂了,所以 ...

  6. 网络安全 中间人攻击-DNS欺骗 使用ettercap

    对于这个DNS欺骗 就是修改地址的映射关系 我们今天将百度的地址 修改为我们kali虚拟机的IP 这样的话 我们靶机请求百度这个IP 将会转到我们的kali机IP上 我们需要用到两台虚拟机,一台kal ...

  7. 【网络信息安全】网络安全基础

    网络安全基础 主要内容 1.1 网络安全的概念 信息系统安全(信息安全)四个层面 信息安全的概念和所涉及学科 研究网络安全的重要性 1.2 主要的网络安全威胁 1.3 TCP/IP 协议簇的安全问题 ...

  8. 投毒、伪装、攻击,DNS 欺骗和钓鱼网站如何一步步诱人掉入陷阱?

    [编者按]这篇文章将详细讲解DNS欺骗(DNS投毒)及钓鱼网站原理知识,并通过Ettercap工具复现某购物网站的钓鱼漏洞,本文的重点是让您对ARP欺骗.DNS欺骗和钓鱼攻击有一定认识.真心希望这篇基 ...

  9. 网络安全基础——习题集

    <网络安全基础>--习题集 一. 选择题: 1.TCP/IP 体系结构中的TCP 和IP 所提供的服务分别为() A.链路层服务和网络层服务 B.网络层服务和传输层服务 C.传输层服务和应 ...

最新文章

  1. 操作系统课设--具有二级索引的文件系统
  2. c++17(28)-Makefile(1)
  3. 如何攻击Java Web应用【转载】
  4. td不允许自己扩展_一定要抱着大A不放手吗?
  5. [CQOI2009]叶子的染色
  6. 山西台达plc可编程控制器_可编程控制器2(PLC)控制原理
  7. 海康sip服务器地址_完整SIP/SDP媒体协商概论SDP基础使用要求
  8. mPaaS小程序技术架构深度解析
  9. clob mybatis_spring + mybatis 存取clob
  10. cocos2d-js adblock插件冲突
  11. hot-S22和X参数的原理(转)
  12. 关于使用RedisTemplate在主从架构下使用Lettuce的情况下如何实现读写分离
  13. AQS: CLH 介绍
  14. 服务器自带的防篡改,防篡改系统
  15. flink 流批一体
  16. CF 1567 C. Carrying Conundrum(思维)
  17. 操作系统学习笔记(5. 文件管理)
  18. NLP中的特殊标记(Special Tokens)[PAD]、[CLS]、[SEP]、[UNK]
  19. OpenCV.反阈值二值化
  20. 网页页面退出检测- 解决unload onbeforunload不好用

热门文章

  1. 健身耳机什么牌子好、最好用的五款健身耳机推荐
  2. linux恢复硬盘初始状态,初始化Linux数据盘(fdisk)
  3. [树hash]BZOJ 4337——BJOI2015 树的同构
  4. Bi-cubic interpolation
  5. 代码发芽网更新了22个颜色主题
  6. android:java.lang.NoClassDefFoundError: com.lidroid.xutils.HttpUtils 异常的解决
  7. 莎士比亚十四行诗第六七首
  8. Serial Nand Flash
  9. 五、ROS使用serial包进行串口通信
  10. 数据仓库笔记(高质量建模)04——元数据管理