《网络对抗技术》——Exp7 网络欺诈防范
一、实践内容
本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法。具体实践有 :
1.简单应用SET工具建立冒名网站
2.ettercap DNS spoof
3.结合应用两种技术,用DNS spoof引导特定访问到冒名网站
注意:请勿使用外部网站做实验
二、基础问题回答
(1)通常在什么场景下容易受到DNS spoof攻击
在连接到一些公共网络或是局域网中时容易受到DNS spoof攻击。
(2)在日常生活工作中如何防范以上两攻击方法
DNS欺骗攻击是很难防御的,因为这种攻击大多数本质都是被动的。通常情况下,除非发生欺骗攻击,否则你不可能知道你的DNS已经被欺骗,只是你打开的网页与你想要看到的网页有所不同。
1.使用最新版本的DNS服务器软件,并及时安装补丁;
2。关闭DNS服务器的递归功能。DNS服务器利用缓存中的记录信息回答查询请求或是DNS服务器通过查询其他服务获得查询信息并将它发送给客户机,这两种查询成为递归查询,这种查询方式容易导致DNS欺骗。
3.不要依赖DNS:不要在高度敏感和保密要求高的系统上浏览网页,最好不要使用DNS。如果有软件依赖于主机名来运行,那么可以在设备主机文件里手动指定。
4.使用入侵检测系统:只要正确部署和配置,使用入侵检测系统就可以检测出大部分形式的ARP缓存中毒攻击和DNS欺骗攻击。
三、实践过程记录
简单应用SET工具建立冒名网站
SET工具:SET(Social-Engineer Toolkit)是一个高级的,并且易于使用的计算机社会工程学工具集。
- 实验中需要使用http服务,因此需要使用到80端口。在kali中使用 netstat -tupln |grep 80 命令查看80端口是否被占用。如果有,使用 kill+进程号 杀死该进程。
- 使用 sudo vim /etc/apache2/ports.conf 命令修改Apache的端口文件,查看端口是否为80,如果不是修改端口为80。
-
使用systemctl start apache2 开启Apache服务
-
使用setoolkit命令开启SET工具
- Kali Linux 漏洞利用工具集
- 输入1:Social-Engineering Attacks——社会工程学攻击
- 输入2:Penetration Testing (Fast-Track)——渗透测试(快速)
- 输入3:Third Party Modules——第三模块攻击
- 输入4:Update the Social-Engineer Toolkit——更新社会工程师工具包
- 输入5:Update SET configuration——更新设置配置
- 输入6:Help, Credits, and About——帮助,信用和关于
- 输入99:Exit the Social-Engineer Toolkit——退出Social-Engineer Toolkit
- 输入1选择社会工程学攻击
- 社会工程学工具包
- 输入1:Spear-Phishing Attack Vectors——鱼叉式钓鱼攻击向量
- 输入2:Website Attack Vectors——网站攻击向量
- 输入3:Infectious Media Generator——感染介质发生器
- 输入4:Create a Payload and Listener——创建有效负载和侦听器
- 输入5:Mass Mailer Attack——群发邮件攻击
- 输入6:Arduino-Based Attack Vector——基于arduino的攻击向量
- 输入7:Wireless Access Point Attack Vector——无线接入点攻击向量
- 输入8:QRCode Generator Attack Vector——QRCode生成器攻击向量
- 输入9:Powershell Attack Vectors——Powershell攻击向量
- 输入10:Third Party Modules——第三方模块
- 输入99: Return back to the main menu.——返回主菜单
- 输入2:Website Attack Vectors——网站攻击向量
- 钓鱼网站攻击向量工具包
- 输入1:Java Applet Attack Method——Java Applet攻击方法
- 输入2:Metasploit Browser Exploit Method——Metasploit浏览器开发方法
- 输入3:Credential Harvester Attack Method——证书收割者攻击方法
- 输入4:Tabnabbing Attack Method——Tabnabbing Attack Method
- 输入5:Web Jacking Attack Method——Web劫持攻击方法
- 输入6:Multi-Attack Web Method——多攻击Web方法
- 输入7:HTA Attack Method——HTA攻击方法
- 输入3:证书收割者攻击方法,即登录密码截取攻击
-
登录密码截取攻击工具包
- 输入1:Web Templates——网页模板
- 输入2:Site Cloner——网站克隆
-
- 输入3:Custom Import——自定义导入
-
输入2进行网站克隆
-
输入攻击机IP地址: 192.168.112.129
- 输入被克隆的网站的URL:http://v3.chaoxing.com/toJcLogin(学习通的登录页面网址)
- 在自己的主机的浏览器中输入攻击机的IP: 192.168.112.129 ,即可看到被克隆的网页,kali中也可看到相应反馈。
- 这里可以看到我们如果在那个克隆页面里输入用户名和密码,攻击机是可以捕获到的。
ettercap DNS spoof
- 首先使用 ifconfig eth0 promisc 将kali网卡改为混杂模式
- 输入命令vim /etc/ettercap/etter.dns对DNS缓存表进行修改:添加记录http://v3.chaoxing.com/toJcLogin A 192.168.112.129
- 使用 ettercap -G 开启ettercap
-
选择好网卡eht0后点击
√
开始监听 -
在右上角的三个点中选择“Hosts”——>“Scan for hosts”扫描子网
- 在Hosts list中查看扫描到的存活主机
- 靶机IP地址为 192.168.112.130 ,网关为 192.168.112.2 ,将网关的IP添加到target1,将靶机IP添加到target2
-
点击工具栏中的“Plugins”——>“Manage the plugins”
-
选择 dns_spoof 即DNS欺骗的插件,双击后即可开启
- 此时已经处于嗅探模式,在靶机中执行ping命令结果如下,数据来源为攻击机的IP地址
- 攻击机中显示如下
结合应用两种技术,用DNS spoof引导特定访问到冒名网站
- 综合以上两种技术,思路为——首先将使用任务二实施DNS欺骗,将网站与攻击机关联,然后根据任务一克隆一个页面。
- 重复任务一,将http://v3.chaoxing.com/toJcLogin与攻击机IP地址关联
- 根据实验二实施DNS欺骗
- 在靶机中输入http://v3.chaoxing.com/toJcLogin 即可跳转到克隆网站
四、实验心得体会
这次实验我们用了SET工具建立冒名网站然后用DNS spoof伪装DNS从而达到一个简易的钓鱼网站的效果,然后我觉得可以对点击登录后的钓鱼网站的响应做一个新的跳转,比如跳转到正确的登录网页以给用户一种可能只是网络抽风了没登录进去,这样我们既获得了用户的登录信息,也可以打消用户的疑虑。而面对这种攻击,最主要的是不能在公网连接下随意的登录用户名或是密码,要注意上面回答的第二个问题的答案去防范这类攻击。