2019-2020-2 20175310奚晨妍《网络对抗技术》Exp7 网络欺诈防范
1 实验步骤
1.1 简单应用SET工具建立冒名网站
Step1:由于要将钓鱼网站挂在本机的http服务下,所以需要将SET工具的访问端口改为默认的80端口。使用sudo vi /etc/apache2/ports.conf
命令查看Apache的端口文件,端口为80,不需要修改,如下图所示:
Step2:在kali中使用netstat -tupln |grep 80
命令查看80端口是否被占用。如果有,使用kill+进程号
杀死该进程。如下图所示,无其他占用:
Step3:使用apachectl start
开启Apache服务:
Step4:输入setoolkit
打开SET工具:
Step5:选择1 Social-Engineering Attacks
选择社会工程学攻击:
Step6:选择2
即钓鱼网站攻击向量:
Step7:选择3
即登录密码截取攻击:
Step8:选择2
进行克隆网站:
Step9:输入攻击机的IP地址,也就是kali的IP地址:
Step10:输入被克隆的url,我用的是实验五的博客
Step11:在靶机中输入kali的IP地址
- 靶机为winxp,由于浏览器版本较低没能全部显示
- 靶机为win7:
- kali显示结果:红框为WinXP,蓝框为win7
Step12:若克隆一个登陆网页,按return
返回上层,然后依次选择选项,设置IP和克隆网址,这次选择蓝墨云登陆网址https://www.mosoteach.cn/web/index.php?c=passport&m=index
- 在靶机中输入kali的IP地址,显示了云班课的登录界面:
- 在登录界面输入用户名和密码,此时kali终端可以捕获到输入的数据:
account_name=18810985762&user_password=123456
1.2 ettercap DNS spoof
这里我试了很久才成功,成功的靶机是英文版的WinXP,网址是www.cnblogs.cn
Step1:使用指令ifconfig eth0 promisc
将kali网卡改为混杂模式;
Step2:输入命令vi /etc/ettercap/etter.dns
对DNS缓存表进行修改,如图所示,可以添加网站和IP的DNS记录,我这里加了三个:
www.besti.edu.cn A 192.168.3.31
www.cnblogs.cn A 192.168.3.31
www.baidu.com A 192.168.3.31
Step3:输入ettercap -G
指令,开启ettercap
,会自动弹出来一个ettercap的可视化界面,选择网卡eth0
,点击√
开始监听,即监听eth0网卡:
Step4:在右上角的三个点中选择Hosts—>Scan for hosts
,扫描子网
Step5:网关为192.168.3.1
,靶机Windows7的IP为192.168.3.33
;将网关的IP添加到target1,将靶机IP添加到target2
Step6:点击工具栏中的Plugins—>Manage the plugins
,选择dns_spoof
即DNS欺骗的插件,双击后即可开启
Step7:此时已经处于嗅探模式,在靶机中执行ping www.cnblogs.cn
命令结果如下,可以看到其实是给攻击机也就是kali虚拟机发送ping命令:
Step8:kali端看到反馈信息如下:
1.3 结合应用两种技术,用DNS spoof引导特定访问到冒名网站
我先参考任务一克隆了一个蓝墨云的登录页面,然后按任务二的步骤进行DNS欺骗,在靶机输入www.cnblogs.cn
,下面是运行结果:
- 靶机:由于我用的是WinXP的英文版,它不支持显示中文字符,所以看起来很奇怪,正常的蓝墨云登录页面有一个文本框用于填写用户名,一个密码框用于填写密码,还有一个提交按钮。盲猜下图空红框中就是对应的文本框、密码框和提交按钮:
- 攻击机:靶机点击提交之后,kali成功获取到靶机的登录信息,并且捕获到了填入的用户名和密码:
2 实验中遇到的问题
2.1 任务二中靶机ping网址是实际的网址,而不是攻击机
解决方法:我试了很多次才成功,失败的话主要要关注以下几个问题:
- 开启
ettercap
时,最好不要输入sudo ettercap -G
指令,先输sudo su
进入root,再输ettercap -G
指令 - DNS缓存表中添加记录时,最好让新加的记录与之前的记录对齐(不对齐也不一定会错,对齐肯定不会错)
- 靶机的选择也会影响结果:我用自己的主机没有成功,最后成功的靶机是WinXP的英文版
- DNS缓存表中添加记录的网址的选择也会有影响,我做的时候加入了三个,cnblogs和besti都可以成功,但是百度不行,具体原因我也没搞明白......
失败的百度,ping的就是百度实际的地址:
成功的cnblogs和besti,ping的是kali的IP地址:
3 基础问题回答
3.1 通常在什么场景下容易受到DNS spoof攻击
- 攻击机和靶机在同一子网中容易受到DNS spoof攻击
- 靶机连接无需密码的WiFi也容易受到DNS spoof攻击
3.2 在日常生活工作中如何防范以上两攻击方法
- 不连接无需密码的WiFi
- 连接不安全网络时,不做登录操作,以防被窃取用户名和密码
4 实践总结与体会
这次实验相比之前的几次实验简单了许多,不管是任务的数量还是任务的难度,总体来说都比较轻松。但是,我还是遇到了很麻烦的问题,在做任务二时,我总是不能捕捉到靶机ping网址的结果,换了很多虚拟机都不能成功,最后在同学的帮助下完成实验。通过这次实验,我明白不能轻易在公共场合连不需要密码的WiFi,否则会有被盗用户名和密码的风险。