实验七 网络欺诈与防范
1、实验内容
本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法。具体实践有:
(1)简单应用SET工具建立冒名网站;
(2)ettercap DNS spoof;
(3)结合应用两种技术,用DNS spoof引导特定访问到冒名网站;
2、实验过程
2.1 简单应用SET工具建立冒名网站
(1)首先我们先查看一下端口,因为我们这里需要80端口开放并且没有被占用,所以我们使用如下指令,我们发现80端口现在是没有被占用的。
netstat -tupln | grep 80
图一 查看80端口是否被占用
(2)然后我们就可以利用setoolkit指令打开相关工具。
setoolkit
(3)打开之后我们需要对我们进行的攻击进行配置,首先我们选择社会工程学攻击,也就是第一个选项,如图所示。
图二 选择社会工程学攻击
(4)然后我们选择网站攻击,也就是第二个选项。
图三 选择网站攻击
(5)接下来选择认证获取攻击,也就是第三个选项。
图四 选择认证攻击
(6)最后我们选择网站克隆选项,也即是第二个选项。
图五 选择网站克隆
(7)这时候我们会发现网站部署已经完毕了,因为这里的IP地址就是我们虚拟机的IP地址,所以就不用进行设置了,直接回车就可以了,然后我们发现需要输入一个URL,这里我们使用的是http://ycxx.ncepu.edu.cn/admin/login.aspx,这是一个个人编写的带有登录功能的网站。
(8)然后我们访问对应的IP地址192.168.189.133,我们发现能够成功访问到对应的登录界面。同时,在kali虚拟机的终端中,我们能看到setoolkit工具已经开始接受对应的信息了。我们随便输入一个用户名和密码,我们发现在虚拟机终端已经抓到了信息。这里的username是admin,但是password是一串乱码。
图六 设置URL并抓取结果
(9)我们发现这串乱码是等号结尾的,下意识想到这是经过base64编码的数据,所以我们使用base64在线解码工具进行解码,我们发现结果依旧是乱码。
图七 base64尝试解码
(10)然后我们研究了一下这个网站的前端代码我们发现一个jsencrypt函数很可疑,猜测是进行了加密。
图八 jsencrypt
(11)最后我们还是不死心,通过js在线解压工具进行查看,我们发现这个网站的密码采用了公钥加密,所以我们就没有继续深入了。
图九 js解压工具
2.2 ettercap DNS spoof
(1)首先我们使用ifconfig指令查看一下虚拟机的IP地址,我们可以看到网卡为eth0,IP地址为192.168.1.242。
图十 ifconfig
(2)然后我们使用ifconfig eth0 promisc将Kali的桥接网卡改为混杂模式.
ifconfig eth0 promisc
图十一 设置混杂模式
(3)接下来我们就需要对ettercap的dns表进行编辑,我们使用如下指令。
vi /etc/ettercap/etter.dns
图十二 打开dns表
(4)我们在dns表的最后加上dns记录,为了进行对照我们这里选择了两个记录,第一个是www.baidu.com,第二个就是我们刚刚使用的网站ycxx.ncepu.edu.cn,如图所示。
图十三 设置dns记录
(5)保存并退出之后我们就可以使用ettercap -G指令打开ettercap工作台。
ettercap -G
(6)确认这里使用的网卡是eth0之后,我们就可以点击右上角的对号。然后我们点击右上角三个点,选择Hosts中的scan for hosts选项就可以进行扫描了。
图十四 scan for hosts
(7)然后我们还是点击右上角三个点,选择Hosts中的host lists就可以查看到我们扫描出来的所有主机了。
图十五 host lists
(8)我们将网关IP也就是192.168.1.1加入Target1,将靶机IP地址(这里使用的是电脑本机IP地址)192.168.1.127加入Target2。
图十六 加入Target
(9)再然后我们还是点击右上角三个点,选择最后一个选项plugins中的manage plugins,然后在弹出的界面中双击dns proof激活该插件。
(10)这时候我们在靶机上刷新dns缓存,使用如下指令。
ipconfig /flushdns
图十七 刷新dns缓存
(11)我们ping一下刚刚加入dns表中的两个域名地址,发现通了但没完全通,但是IP地址已经改成我们虚拟机的地址192.168.1.242。
图十八 ping百度
图十九 ping登录界面
(12)所以我们在kali虚拟机再进行了一次arp欺骗,我们点击右上角的地球并选择arp poisoning选项,在弹窗中我们直接ok,如图所示。
图二十 设置arp欺骗
(13)我们重新刷新dns之后再ping那两个网站,我们发现可以ping通了,如图所示。
图二十一 ping百度
图二十二 ping登陆界面
2.3 结合应用两种技术,用DNS spoof引导特定访问到冒名网站
(1)前面的内容都是一样的,只是在第一步的时候将IP地址改为192.168.1.242,我们发现最后访问ycxx.ncepu.edu.cn的时候,我们可以访问到对应的界面,并且我们访问的IP地址是虚拟机的地址也就是刚刚设置的192.168.1.242。
图二十三 ettercap界面
图二十四 访问登陆界面
(2)我们输入账号和密码(均为admin)可以发现在虚拟机中我们已经获取到了这个账号和密码信息。
图二十五 获取到的账号密码
(3)到这里我们这个实验就完成了,最后得到了账号密码我猜测是在这个过程中javascript裂了,所以就直接可以得到明文了,不像第一个实验只能得到密文。
3、实验问题与解决办法
(1)在第一个实验中,我们没有获取到明文的密码信息,这里我进行了分析,但是由于是公钥加密的,这里如果要进一步深入需要使用已知明文攻击,但是比较繁琐,就没有继续了。
(2)在第二个实验设置网关和靶机IP地址的时候,如果在教室连接校园网并使用桥接方式连接网络的话,就会出现问题,在寝室就没有这个问题。
(3)在第三个实验中出现了ping通了但是访问不了界面的情况,这时候我们发现是域名填写的有问题,进行修改之后就可以进行访问了。
4、实验感想
本次实验主要是进行了网络欺诈的实践,这次采用的是DNS欺骗的方法,同时在过程中,由于实验需要,我们还使用了ARP欺骗的工具。通过本次实验,我们将课堂上学习到的知识充分运用到实践中来,了解了网络欺诈的具体操作,并且能够进行简单的实践,这为我们思考如何去防范这些网络欺诈有了些许启发。
同时,通过这个实验我也了解到了如何对这种攻击进行预防,因为我在实验一中抓到的账号密码信息包就会有密文,所以说,如果我们对这个账号和密码的传输过程进行加密,那么即使攻击方可以获得账号密码信息,那也只能获取到密文。
总而言之,通过本次实验受益良多,将课堂和实践紧密结合,收获颇丰。最后,感谢王老师的细心讲解和耐心帮助,也感谢在实验过程中给我帮助的同学们。正因为有你们的帮助我才能够顺利地完成本次实验,谢谢!