2018-2019-2 网络对抗技术 20165216 Exp7 网络欺诈防范
2018-2019-2 网络对抗技术 20165216 Exp7 网络欺诈防范
1.1实验内容概述
本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法。具体实践有:
- 简单应用SET工具建立冒名网站 (1分)
- ettercap DNS spoof (1分)
- 结合应用两种技术,用DNS spoof引导特定访问到冒名网站。(1.5分)
- 请勿使用外部网站做实验
1.3.实验环境
- Kali Linux - 64bit(攻击机,IP为192.168.1.125)
- Windows 7 - 64bit(靶机,IP为192.168.1.225)
1.3 基础知识
(1)DNS是什么?
DNS即Domain Name System,域名系统以分布数据库的形式将域名和IP地址相互转换。DNS协议即域名解析协议,是用来解析域名的。有了DNS我们就不用再记住烦人的IP地址,用相对好记的域名就可以对服务器进行访问,即使服务器更换地址,我们依旧可以通过域名访问该服务器,这样能够时候我们更方便的访问互联网。
(2)DNS spoof(DNS欺骗)?
DNS欺骗是一种中间人攻击形式,它是攻击者冒充域名服务器的一种欺骗行为。假如一个域名为www.xxx.com对应的IP为A,DNS欺骗做到的效果则为域名www.xxx.com解析出的IP为B,即假冒网站,但在显现形式上域名没错,出错在域名->IP的转换。
1.4.基础问题回答
(1)通常在什么场景下容易受到DNS spoof攻击
- 主机间可直接通信易直接发送假冒包的局域网
- 不安全的Wifi
(2)在日常生活工作中如何防范以上两攻击方法
- 进行IP地址和MAC地址的绑定
- 优化DNS SERVER的相关项目设置
- 使用Digital Password进行辨别
- 绑定IP地址与MAC地址可以预防ARP欺骗,ARP欺骗是DNS欺骗的开端。
- 数字签名可以加强Domain Name信息传递的安全性
- DNS Server的优化可以使得DNS的安全性达到较高的标准,常见的工作有以下几种:①对不同的子网使用物理上分开的Domain Name Server,从而获得DNS功能的冗余;②将外部和内部Domain Name Server从物理上分离开并使用Forwarders转发器。
实践过程
2.1简单应用SET工具建立冒名网站
SET(Social-Engineer Toolkit)是一款python开发的社会工程学工具包。与它的好基友Metasploit之间可以做到亲密配合...
- 输入指令sudo vi /etc/apache2/ports.conf修改Apache的端口文件,确认http对应端口号为80,确认无误后输入指令:wq保存退出
- 输入指令netstat -tupln | grep 80查看80端口是否被占用。若被占用,输入kill+进程号杀死该进程。
- 输入指令setoolkit, 再输入y开启SET工具
- 选择1进行社会工程学攻击
- Social-Engineering Attacks:社会工程学攻击
- Fast-Track Penetration Testing:快速追踪渗透测试
- Third Party Modules:第三方模块
- Update the Social-Engineer Toolkit:更新软件
- Update SET configuration:升级配置
- Help, Credits, and About:关于
- Exit the Social-Engineer Toolkit:退出
- 选择2钓鱼网站攻击向量
- Spear-Phishing Attack Vectors:鱼叉式钓鱼攻击向量(也称针对性钓鱼攻击)
- Website Attack Vectors:钓鱼网站攻击向量
- Infectious Media Generator:媒介感染生成器
- Create a Payload and Listener:生成一个payload和监听
- Mass Mailer Attack:大规模邮件钓鱼
- Arduino-Based Attack Vector:基于Arduino的攻击向量(类似于单片机)
- Wireless Access Point Attack Vector:无线接入点攻击向量
- QRCode Generator Attack Vector:二维码攻击向量
- Powershell Attack Vectors:powershell攻击向量
- SMS Spoofing Attack Vectors:SMS欺骗攻击向量
- Third Party Modules:第三方模块
- Return back to the main menu.返回主菜单
- 选择3进行登陆密码截取攻击
- Java Applet Attack Method:Java程序攻击(这里会欺骗用户进行Java升级,内含payload,可能太老,win7实测无效)
- Metasploit Browser Exploit Method:基于Metasploit的浏览器攻击
- Credential Harvester Attack Method:认证获取攻击(搭建web、克隆登陆网页、获取认证信息)
- Tabnabbing Attack Method:标签劫持攻击
- Web Jacking Attack Method:网页劫持攻击
- Multi-Attack Web Method:综合攻击
- Full Screen Attack Method:全屏攻击
- HTA Attack Method:HTA攻击(当用户访问设计好的网页时,会提示选择keep/discard(保留/放弃))
- Return to Main Menu:返回主菜单
- 选择2克隆网站
- Web Templates:网页模板(只有google,facebook,twitter,yahoo,java required这几个选项,可以自己添加)
- Site Cloner:站点克隆(有些网页克隆会出现问题,只能克隆一些简单的网页)
- Custom Import:自定义输入
- Return to Webattack Menu:返回Web攻击菜单
- 输入攻击机kali的IP192.168.1.125
- 输入被克隆的网址,此处选择学校教务处网址http://192.168.200.83/cas/login
- 登录正常的网址,将网址覆盖目录
- Enter
- 在Win7IE中输入Kali IP 192.168.1.125
- 页面OK
- 账号密码输入
- 截获OK
2.2ettercap DNS spoof
ettercap是一个很好用来演示ARP欺骗攻击的工具,包含一个DNS插件,非常容易使用。
- 输入命令ifconfig eth0 promisc将Kali攻击机的网卡改为混杂模式:
- 输入命令vi /etc/ettercap/etter.dns对ettercap的DNS缓存表进行修改:
在对应的位置添加对应的标识和IP地址(*代表所有域名),后边就是你要欺骗成的IP地址。如图所示,我添加了一条对163网易网站的DNS记录,并欺骗成Kali攻击机的IP。
- 输入命令ettercap -G启动ettercap可视化界面
- 依次选择上方工具栏中的Sniff->Unified sniffing...打开配置界面,选择网卡eth0(默认):
- 依次选择工具栏中的Hosts->Scan for hosts扫描存活主机:
- 再选择同目录下的Hosts list查看扫描结果,然后开启中间人监听模式,将要监听的两端(网关IP和win7靶机IP)分别添加到Target1、Target2
- 选择工具栏Mitm—>Arp poisoning,勾选Sniff remote connections.(嗅探并保持原连接状态),确定,然后选择工具栏Start->Start sniffing开始实行arp欺骗:
- 在靶机中发现已经被arp欺骗成功(欺骗靶机192.168.1.225,让它误以为Kali攻击机192.168.1.125是网关192.168.1.0):
- 依次选择工具栏View->Connections查看和被监听靶机之间的所有连接信息:
- 依次选择工具栏Plugins—>Manage the plugins,选择DNS_spoof插件,*表示被选中:
- 选择工具栏Start->Start sniffing开始嗅探:
- 时在靶机中的cmd输入命令ping www.163.com会发现解析的地址是Kali的IP:
- 在Kali上可以看到,在DNS已经成功欺骗时,所有会话被转移到了攻击者的主机
2.3利用DNS spoof引导特定访问到冒名网站
- 结合应用以上两种技术,下面我们用DNS spoof引导特定访问钓鱼网站。
- 为了利用DNS spoof将靶机引导到我们的钓鱼网站,这里假设我们的钓鱼网站是学校教务信息网的登录页面,先利用第一个实验中的步骤先克隆一个登录页面,然后再通过第二个实验实施DNS spoof,接着在靶机上输入博客园的网址www.163.com,就可以发现成功登录了钓鱼网站同时记录下用户名和密码:
实验总结与体会
加强安全意识,实验所做到的效果是非常具有欺骗性的,虽然不在同一个局域网内会更加复杂,但仍有机会。