20232326 2025-2026-1 《网络与系统攻防技术》实验七实验报告

一、实验内容

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

(2)ettercap DNS spoof

(3)结合应用两种技术,用DNS spoof引导特定访问到冒名网站。
SET通过爬取目标网站的静态资源在攻击机本地搭建视觉一致的冒名Web服务,并在表单中植入数据转发逻辑,用于捕获用户输入的敏感信息;
Ettercap先利用ARP协议无认证的缺陷,向靶机和网关发送伪造ARP应答包,篡改二者的ARP缓存表,使攻击机成为双向中间人,随后拦截靶机的DNS请求,依据预设的域名-攻击机IP映射规则伪造DNS响应,将靶机对目标域名的访问引导至本地冒名网站,最终实现“流量劫持 + 信息窃取”的完整钓鱼攻击链路。

二、实验过程

(一)实验环境准备

  1. 硬件:两台虚拟机,kali作为攻击机,Windows 10作为靶机。

  2. 查看kali的IP地址:192.168.32.129(eth1)
    image
    查看Windows 10的IP地址:192.168.32.131
    image

(二)SET工具建立冒名网站

  1. 启动SET工具:在Kali Linux终端输入setoolkit命令,进入SET主界面,按提示输入“1”(Social-Engineering Attacks,社会工程学攻击)。
    image
    image
  • 菜单选项如下
    1.社会工程学攻击:SET 的核心模块,包含钓鱼邮件、伪造登录页等社会工程学攻击模拟功能。
    2.渗透测试(快速通道):提供简化的渗透测试流程,快速生成恶意载荷、配置监听器等。
    3.第三方模块:支持加载社区开发的扩展功能模块。
    4.更新社会工程学工具包:升级 SET 到最新版本。
    5.更新 SET 配置:修改工具的配置参数(如邮件服务器、载荷设置等)。
    6.帮助、致谢与关于:查看工具帮助文档、开发者信息。
    7.退出社会工程学工具包:关闭 SET。
    按提示输入“1”(Social-Engineering Attacks,社会工程学攻击)。
    image
  • 菜单选项如下
    1.社会工程学攻击向量:包含钓鱼邮件、伪造登录页等核心社会工程学攻击手段,是SET的核心功能模块。
    2.网站钓鱼向量:专门用于克隆目标网站(如登录页),诱骗用户输入凭证并捕获数据。
    3.恶意介质生成器:生成带恶意载荷的U盘/光盘镜像,目标设备运行后可被植入恶意程序。
    4.创建载荷与监听器:生成针对不同系统的恶意载荷,并配置监听器接收目标连接。
    5.邮件群发攻击:批量发送钓鱼邮件,支持植入恶意附件或链接。
    6.Arduino设备攻击向量:利用Arduino设备模拟键盘注入恶意指令。
    7.无线接入点攻击向量:伪造恶意WiFi热点,捕获连接设备的网络数据。
    8.PowerShell攻击向量:通过PowerShell脚本实现隐蔽的恶意代码执行。
    9.第三方模块:加载社区开发的扩展攻击功能。
    99.返回主菜单:回到SET的主界面。
  1. 选择网站攻击类型:输入“2”(Website Attack Vectors,网站攻击向量),
    image
    网站钓鱼攻击模块是一种独特的方式,通过多种基于Web的攻击来攻陷目标受害者。
  • 各攻击方法说明:

    • Java Applet攻击:伪造Java证书并投递基于Metasploit的载荷,使用Thomas Werth开发的自定义Java小程序实现。
    • Metasploit浏览器漏洞利用:通过iframe加载选定的Metasploit浏览器漏洞,投递Metasploit载荷。
    • 凭证窃取:克隆带有用户名和密码字段的网站,捕获用户提交的所有信息。
    • Tabnabbing:等待用户切换到其他标签页后,刷新当前页面为恶意内容。
    • Web劫持攻击:由white_sheep、egent提出,通过替换iframe使高亮显示的URL看似合法,但点击后会弹出窗口并跳转至恶意链接,可在set_config中编辑链接替换设置。
    • 多攻击:在Web攻击菜单中组合多种攻击(如同时使用Java Applet、Metasploit浏览器漏洞、凭证窃取/Tabnabbing),测试哪种方式生效。
    • HTA攻击:克隆网站并通过HTA文件执行PowerShell注入,可用于针对Windows的PowerShell漏洞利用浏览器。
  • 菜单选项及功能

  1. Java Applet攻击方法:伪造Java证书,通过自定义Java小程序投递恶意载荷。
  2. Metasploit浏览器漏洞利用方法:利用iframe加载浏览器漏洞,投递Metasploit载荷。
  3. 凭证窃取攻击方法:克隆目标网站的登录页,捕获用户输入的账号密码。
  4. Tabnabbing攻击方法:在用户切换标签页时,将原页面替换为恶意内容。
  5. Web劫持攻击方法:通过iframe替换伪装合法URL,点击后跳转至恶意链接。
  6. 多攻击方法:同时启用多种Web攻击手段,测试攻击效果。
  7. HTA攻击方法:克隆网站并通过HTA文件实现PowerShell注入,针对Windows浏览器。
  8. 返回主菜单:回到SET的主界面。
  • 再输入“3”(Credential Harvester Attack Method,凭证收集攻击方法),通过该方法获取用户输入的账号密码。
    image

  • 方法说明:
    第一种方法允许SET导入预定义的Web应用列表,在攻击中使用。
    第二种方法会完全克隆你选择的网站,并允许你在克隆的相同应用内使用攻击向量。
    第三种方法允许你导入自己的网站,注意使用“导入网站”功能时,应仅包含index.html文件。

  1. 配置冒名网站:选择“2”(Site Cloner,网站克隆),
    image
    翻译一下,看一下说明
    凭证窃取功能允许你使用SET的克隆能力,从网站中捕获凭证或参数,并将其整理到报告中。
    重要提示在输入IP地址前请阅读
    该功能的工作原理是克隆网站并识别表单字段,通过常规方法重写这些字段(表单通常以POST方式提交)。如果POST字段无法被识别,你可以将HTML表单改为标准表单,或使用“导入”功能。这一点非常重要。
    如果你使用外部IP地址,请在此处填写外部IP,而非NAT地址。此外,如果你不了解基础网络概念,需要自行学习。如果你使用私有IP,需进行端口转发,让NAT将私有IP的流量转发到外部IP。浏览器无法直接通过外部IP访问你的私有IP,因此若使用外部IP却未指定,功能将无法正常工作。这并非SET的问题,而是网络工作的原理。
    请输入凭证窃取/Tabnabbing功能中POST回传对应的IP地址 [当前显示:192.168.32.129]:
  • 由于我的目标虚拟机在本地网络,填写设备的内网IP(192.168.32.129)即可,再输入需要克隆的真实网站URL:https://mail.besti.edu.cn/
    image
    image
  1. 启动冒名网站:SET工具自动克隆目标网站的页面样式,生成冒名网站并在攻击机上开启HTTP服务。
    image
    kali本地打开http://127.0.0.1
    image
    实时显示捕获到的敏感信息,验证冒名网站搭建成功
    image

  2. 测试冒名网站:浏览器中访问http://192.168.32.129。
    image
    可以看到在网页中输入用户名和密码会被kali抓取到。

(三)ettercap DNS spoof

  1. 配置DNS欺骗规则:
    (1)kali设置DNS缓存表————输入命令vim /etc/ettercap/etter.dns进入这个文件后,输入i插入www.bilibili.com A 192.168.32.129保存并关闭文件。
    image
    (2)查看攻击机 kali 的网关地址 命令:route -n 可知网关IP为192.168.32.2
    image

  2. 启动Ettercap工具:在终端输入ettercap -G命令,打开Ettercap图形化界面,
    image
    点击“Sniff”→“Unified sniffing”,在弹出的窗口中选择攻击机的网卡(如eth0),点击“OK”进入嗅探模式。

  3. 扫描局域网设备:点击“Hosts”→“Scan for hosts”,Ettercap自动扫描局域网内所有在线设备;扫描完成后点击“Hosts”→“Hosts list”,在列表中找到kali的网关地址(192.168.32.2)添加到Target 1,目标机Win10的ip(192.168.32.131)添加到Target 2。
    image

  4. 启用ARP欺骗(辅助DNS欺骗):点击“Mitm”→“ARP poisoning”,在弹出的窗口中勾选“Sniff remote connections”,点击“OK”,通过ARP欺骗让目标机访问不了正确的网站。
    image
    image
    image

  5. 启动DNS欺骗:点击“Plugins”→“Manage the plugins”,在插件列表中找到“dns_spoof”(DNS欺骗插件),双击启用该插件;此时目标机对配置文件中“目标域名”的解析请求,会被 Ettercap 篡改,定向到攻击机IP。
    image

  6. 验证DNS欺骗效果:在目标机命令提示符中输入ping www.bilibili.com,返回的IP地址为kali的IP,且在目标机浏览器输入www.bilibil.com时,无法访问,说明DNS欺骗配置成功。
    image
    image

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

  1. 重复“SET工具建立冒名网站”的步骤,对目标网站http://www.tykd.com/User/login/进行克隆。
    image
    这个古老网站没有对密码进行加密,可以在kali中监听到输入的明文密码。
  2. 配置DNS欺骗规则:设计网站为www.zsm2326.com*.zsm2326.comzsm2326.com并将其解析到攻击机的内网IP(192.168.32.129)。
    image
  3. Ettercap:在终端输入ettercap -G命令,打开Ettercap图形化界面,重复之前的步骤,配置DNS欺骗规则。
    双击启用dns_spoof;此时目标机对配置文件中“目标域名”的解析请求,会被 Ettercap 篡改,定向到攻击机IP。
    image
  4. 在目标机Win10上ping www.zsm2326.com时,得到的IP地址为kali的IP,说明DNS欺骗配置成功。
    image
  5. 浏览器中访问www.zsm2326.com时,会跳转到冒名网站,并显示与真实网站一致的登录页。
    image
  6. 这里输入用户名zsm2326@qq.com和密码zsm2326,并点击登录,此时kali终端会显示用户输入的敏感信息。
    image

三、问题及解决方案

  • 问题:使用SET工具克隆网站bilibili时,提示“Connection refused”,无法成功克隆目标网站
  • 解决方案:这是因为B站不支持HTTP协议,仅支持HTTPS协议,在浏览器输入http://www.bilibili.com无法访问
    image
    而SET工具默认通过HTTP协议克隆网站,因协议不兼容导致连接失败。
    所以在克隆时选择了校邮https://mail.besti.edu.cn/和天翼快递http://www.tykd.com/User/login/,并成功克隆目标网站。

四、学习感悟、思考等

这是一次很有意思的实验,让我明白了那些钓鱼网站是怎么伪装成正常网站的、DNS欺骗是如何实现定向引导的。冒名网站伪装成正常降低用户警惕,DNS欺骗则实现了定向引导,两者结合就针对特定用户实施钓鱼攻击,非常可怕。
Win10作为目标机全程只做了提供ip和点击链接两件事(以及需要关闭防火墙哈),而攻击机kali全程充当幕后黑手,默默执行钓鱼网站的搭建、DNS欺骗规则的配置与启动,直到成功捕获敏感信息。所以为了防止被窃取敏感信息,就需要提高警惕性,不轻易点开陌生链接,访问网站时通过官方渠道获取域名,登录前检查浏览器地址栏是否有“HTTPS”标识与正确的域名。
在去年六级报名的时候我在浏览器上搜索找报名入口,结果点到到一个冒名网站,我误以为是真的六级报名网站,试了好多次账号密码都登不上,才反应过来被骗了。

此外,我也深刻认识到“理解攻击原理是做好防范的前提”——只有亲身体验攻击工具的操作逻辑与漏洞利用方式,才能更精准地识别潜在风险点,制定更有效的防范策略。未来在学习网络安全知识时,需继续结合实践操作,平衡“攻击技术认知”与“防御能力提升”,树立全面的网络安全思维。

posted @ 2025-11-30 21:29  20232326朱思敏  阅读(40)  评论(0)    收藏  举报