实践内容

本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法。具体实践有

1,简单应用SET工具建立冒名网站

2.ettercap DNS spoof

3.结合应用两种技术,用DNS spoof引导特定访问到冒名网站

基础问题回答

问:通常在什么场景下容易受到DNS spoof攻击?

答:同一局域网下,以及各种公共网络。

问:在日常生活工作中如何防范以上两攻击方法?

答:DNS欺骗攻击是很难防御的,因为这种攻击大多数本质都是被动的。通常情况下,除非发生欺骗攻击,否则你不可能知道你的DNS已经被欺骗,只是你打开的网页与你想要看到的网页有所不同。

使用最新版本的DNS服务器软件,并及时安装补丁;

关闭DNS服务器的递归功能。DNS服务器利用缓存中的记录信息回答查询请求或是DNS服务器通过查询其他服务获得查询信息并将它发送给客户机,这两种查询成为递归查询,这种查询方式容易导致DNS欺骗。

不要依赖DNS:不要在高度敏感和保密要求高的系统上浏览网页,最好不要使用DNS。如果有软件依赖于主机名来运行,那么可以在设备主机文件里手动指定。

使用入侵检测系统:只要正确部署和配置,使用入侵检测系统就可以检测出大部分形式的ARP缓存中毒攻击和DNS欺骗攻击。

实践过程

攻击机:kali 靶机:windows XP SP3(English)

1.简单应用SET工具建立冒名网站
1.由于要将钓鱼网站挂在本机的http服务下,所以需要将SET工具的访问端口改为默认的80端口。使用sudo vi /etc/apache2/ports.conf命令修改Apache的端口文件,将端口改为80,如下图所示:

2、在kali中使用netstat -tupln |grep 80命令查看80端口是否被占用。如果有,使用kill+进程号杀死该进程。

3、使用apachectl start开启Apache服务:

4、输入setoolkit打开SET工具:

选择1进行社会工程学攻击:

选择2即钓鱼网站攻击向量:

选择3即登录密码截取攻击:

选择浏览器

选择2进行克隆网站:

接着输入攻击机的IP地址,也就是kali的IP地址:

键入网址http://short.php5developer.com/,输入kali的ip后,点击short,得到伪装地址

在靶机的浏览器中打开伪装地址:等待10秒后自动跳转到伪装地址

输入自己的用户信息后,点击登录,之后你就可以看到自己的用户名以及密码。

ettercap DNS spoof

首先我们要保证攻击机与靶机两个之间可以ping通。

将kali下网卡改为混杂模式。使用命令ifconfig eth0 promisc

对ettercap的dns文件进行编辑,键入命令 vi /etc/ettercap/etter.dns对这个目录进行修改(修改方式如下图,注意:地址需要改为kali的ip地址)

对windows靶机需要记住ip地址和网关地址,靶机ip地址为192.168.234.129 网关地址为192.168.234.2

此时使用命令ping www.baidu.com可以查看一下windows是否可以真确的获得来自百度的信息。

之后在kali下键入命令ettercap -G打开etter图形化界面

点击sniff-unifled sniffing...

之后利用这个软件扫描活动主机点击:Hosts->Scan for hosts扫描结束后点击Hosts List查看活动主机。

将kali网关的IP添加到target1,靶机IP添加到target2

选择Plugins—>Manage the plugins,双击dns_spoof选择DNS欺骗的插件:

然后点击左上角的start选项开始嗅探,此时在靶机中用命令行,会发现解析的地址是攻击机的IP地址也就是kali的IP地址:

此时在ettercap上也显示两条捕获记录。

结合应用两种技术,用DNS spoof引导特定访问到冒名网站。

这个实验其实就是结合前两个进行一个综合,首先利用实验一搭建一个钓鱼网站,来窃取用户的登录信息,利用实验二控制靶机的网络访问,将一些网址导向到自己的IP,当靶机访问这些网址的时候就会直接跳转到自己的钓鱼网站上。

重复实验一的步骤,没有什么不同,实验二的环境还没有关闭就不用再重新搭建了,在靶机打开我设置的那两个网址之一,直接跳转到我的钓鱼网站。

实验感悟

我们可以知道这次实验的难度并不是非常大,而且这次的实验附带着趣味性,所以值得我们每一位同学亲手进行尝试,希望之后的实验也能一直带来趣味性。

最新文章

  1. 连载《一个程序猿的生命周期》- 44.感谢,我从事了IT相关的工作
  2. LeetCode----Word Ladder 2
  3. 创建并配置Filter
  4. Delphi的时间处理
  5. Linux系统安装MySQL步骤及支持远程操作配置方法
  6. vim之grep
  7. Android游戏背景音乐音效音量控制
  8. hdu 2940
  9. Android imageview显示圆形图片
  10. Channel Allocation(四色定理 dfs)
  11. 基于visual Studio2013解决C语言竞赛题之1019填数
  12. 关于Vuex的初步使用
  13. 从PRISM开始学WPF(九)交互Interaction?
  14. REST教程
  15. re模块正则表达式
  16. 环形链表得golang实现
  17. 线程池、进程池(concurrent.futures模块)和协程
  18. 一个C++右值引用的问题
  19. bvlc_reference_caffenet网络权值可视化
  20. MySQL 5.6不删空用户的影响

热门文章

  1. 怎么看SQL表里某列是否是自增列
  2. Netty 实现HTTP文件服务器
  3. Unity3d跨平台原理
  4. asp.net 使用一般处理程序和ajax post实现登录以及记住密码
  5. mysql 查询优化 ~explain解读之extra解读
  6. Android ROM资源文件存放位置
  7. host-only
  8. ubuntu14.04 安装 CUDA 7.5 / CUDA 8.0
  9. ARMV8 datasheet学习笔记4:AArch64系统级体系结构之编程模型(1)-EL/ET/ST
  10. javascript中的return、return true、return false、continue区别