202222314 2023-2024-2 《网络与系统攻防技术》实验七实验报告
1.实验内容
1.1 实验要求
本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法。具体实践有
(1)简单应用SET工具建立冒名网站
(2)ettercap DNS spoof
(3)结合应用两种技术,用DNS spoof引导特定访问到冒名网站。
1.2 学习内容
(1)Web安全基础
Web安全涉及前端(HTML、JavaScript、CSS等)与后端(C、Java、PHP、数据库语言)技术栈,共同构建用户界面与服务器逻辑。
(2)Web安全攻防
需防范SQL注入、XSS、跨站请求伪造等攻击,采用参数化查询、内容安全策略及身份验证机制保障安全。
(3)Burp Suite工具
Burp Suite是Web安全测试平台,支持请求重放、漏洞扫描、流量拦截修改,助力高效渗透测试。
2.实验过程
2.1 简单应用SET工具建立冒名网站
setoolkit
经过安装后,再次输入该命令
进入如下页面。
可以看到下方的菜单,它们的意思分别是:
- 社会工程攻击(Social-Engineering Attacks) 执行各种社会工程学攻击,如网络钓鱼、网站克隆等,以欺骗目标用户泄露敏感信息
- 渗透测试(快速通道)(Penetration Testing (Fast-Track)) 提供了一个简化的渗透测试流程,旨在快速评估目标系统的安全性。
- 第三方模块(Third Party Modules) 访问和使用SET中包含的第三方模块,这些模块可能提供了额外的功能或工具。
- 更新社会工程师工具箱(Update the Social-Engineer Toolkit) 更新SET到最新版本,以确保你拥有最新的功能和安全修复。
- 更新SET配置文件(Update SET configuration) 更新或修改SET的配置设置,以适应你的特定需求或环境。
- 帮助、信用和关于(Help, Credits, and About) 获取SET的使用帮助、查看开发者致谢信息以及了解SET的详细信息。
- 退出社会工程师工具箱(Exit the Social-Engineer Toolkit) 退出SET程序,返回到操作系统桌面或命令行界面。
我们依次了解各个选项的功能作用,首先是选项一,我们输入1。
依次分析:
- 鱼叉式网络钓鱼攻击向量:这种攻击向量针对特定的个人或组织,通过发送伪装成可信来源的邮件或消息,诱骗受害者点击恶意链接或下载恶意附件,从而获取敏感信息或执行恶意代码。
- 网站攻击向量:利用网站漏洞或社会工程学手段,对目标网站进行攻击,可能包括SQL注入、跨站脚本攻击等,以获取网站控制权或窃取敏感数据。
- 感染性媒体生成器:生成包含恶意代码的媒体文件(如图片、音频、视频等),当受害者打开这些文件时,恶意代码会被触发并执行,从而实现攻击目的。
- 创建有效载荷和监听器:在网络安全测试中,有效载荷是执行攻击或收集数据的恶意代码,而监听器则用于接收来自有效载荷的数据。此选项允许用户创建并配置这些组件。
- 大规模邮件攻击:通过发送大量恶意邮件给目标群体,尝试利用邮件中的漏洞或诱骗用户点击恶意链接,以实现攻击目的。
- 基于Arduino的攻击向量:利用Arduino等开源硬件平台,结合软件编程,构建定制化的攻击工具或设备,用于执行特定的网络安全攻击。
- 无线接入点攻击向量:针对无线网络的接入点进行攻击,可能包括破解密码、伪造网络等,以获取网络访问权限或窃取敏感数据。
- 二维码生成器攻击向量:生成包含恶意链接或代码的二维码,当受害者扫描这些二维码时,可能会触发恶意行为。
- Powershell攻击向量:利用Powershell脚本语言执行网络安全攻击,如远程执行命令、获取系统信息等。
- 第三方模块:此选项可能允许用户加载和使用第三方开发的网络安全测试模块或工具,以扩展软件的功能和能力。
- 返回主菜单:允许用户返回到软件的主菜单界面,以便选择其他功能或选项。
- 可以看到网站攻击是第二个选项,输入2。
依次分析。
- ava Applet 攻击方法: 此方法通过伪造Java证书并传递一个基于Metasploit(一种渗透测试框架)的有效载荷来工作。使用Thomas Werth创建的自定义Java小程序来传递有效载荷。
- Metasploit 浏览器漏洞利用方法: 通过iframe使用特定的Metasploit浏览器漏洞,并传递一个Metasploit有效载荷。
- 凭证收集攻击方法: 通过克隆包含用户名和密码字段的网站来收集发布到该网站的所有信息。
- TabNabbing 攻击方法: 当用户切换到不同的浏览器标签时,此方法会刷新当前页面,将其替换为不同的内容。
- Web-Jacking 攻击方法: 由white_sheep和emgent引入,此方法利用iframe替换,使高亮显示的URL链接看起来合法,但点击后会弹出一个窗口,随后被恶意链接替换。可以在set_config中编辑链接替换设置,以调整其速度。
- 多攻击方法: 通过Web攻击菜单组合多种攻击。例如,可以同时使用Java Applet、Metasploit Browser、Credential Harvester/Tabnabbing来查看哪种攻击成功。
- HTA 攻击方法: 允许克隆一个网站,并通过HTA(HTML应用程序)文件执行PowerShell注入,这可以用于通过浏览器进行基于Windows的PowerShell利用。
- 返回主菜单: 提供一个选项以返回到主菜单。
我们选择第三个选项,输入3。
依次分析。
- Web Templates(网页模板): 通过这个选项,SET 可以导入一系列预定义的网页应用程序模板。这些模板通常是为了模拟真实网站而设计的,以便在攻击中使用。攻击者可以选择一个与目标网站相似的模板,然后在其上部署恶意代码或钓鱼页面。
- Site Cloner(网站克隆器): 这个选项允许用户完全克隆他们选择的任何网站。克隆的网站将包含与目标网站相同的布局、样式和功能,但可以在攻击者的控制下运行。通过克隆网站,攻击者可以利用与目标网站相同的界面和功能来欺骗用户,收集敏感信息或执行其他恶意操作。
- Custom Import(自定义导入): 通过这个选项,用户可以导入他们自己的网站或网页。但是,需要注意的是,当使用导入网站功能时,通常建议只提供一个 index.html 文件作为网站的入口页面。这允许攻击者使用他们自己的设计或特定的钓鱼页面来执行攻击。
- Return to Webattack Menu(返回Web攻击菜单): 这个选项允许用户返回到 SET 的 Web 攻击主菜单,以便选择其他攻击方法或功能。
选择第二个选项进行网站克隆,输入2。
为了排除干扰,先关闭其他Web服务。输入命令。
systemctl stop apache2 systemctl stop nginx
在已有的IP address for the POST back in Harvester/Tabnabbing [192.168.2.128]:一栏后输入回车,表示使用默认IP作为攻击机IP。
选择学习通登录网站为目标网站进行克隆,在kali中输入其URL。
https://v8.chaoxing.com
然后在本地局域网中输入攻击机的IP:192.168.2.128,出现下方页面。
同时,访问该克隆网站的受害者输入登录信息后便可以在setoolkit中捕获到。
其中手机号,密码为编造的。
到此,已经成功简单应用SET工具建立冒名网站并测试攻击成功。
2.2 ettercap DNS spoof
首先输入命令
ifconfig eth0 promisc
将kali的网卡设置为混杂模式,目的是接受网络上传输的所有数据包。
然后要编辑ettercap的DNS表,将域名和攻击机的IP做映射。
输入
vi /etc/ettercap/etter.dns
进入编辑页面。然后添加
*.baidu.com A 192.168.2.128 www.bilibili.com A 192.168.2.128
输入命令
route -n
查看网关,可以看到网关地址为:192.168.2.2
查看靶机 Metasploitable2 (Linux)的IP地址:192.168.2.132
输入命令
ettercap -G
启动ettercap。
点击上图右上角的√,然后点击下图左上角的放大镜,以扫描并打开主机列表,可以看到靶机IP。
将靶机windows10192.168.2.132加入Target 1,将网关192.168.2.2加入Target 2 点击右上角的地球图标打开MITM,点击ARP poisoning,再点击ok 点击右上角的图标打开Ettercap,选择Plugins中的manage Plugins,双击开启dns_spoof
靶机 Metasploitable2 (Linux) 中 ping 百度的域名
可以看到,网站的IP地址已经被欺骗成攻击机IP:192.168.2.128。
2.3 结合应用两种技术,用DNS spoof引导特定访问到冒名网站
输入命令。
vi /etc/ettercap/etter.dns
进入编辑页面。
添加
www.tykd.com A 192.168.147.148 tykd.com A 192.168.147.148
看一下没有欺骗前ping目标域名的结果。
随后按照上面域名欺骗的步骤操作,这里不再赘述。
然后为192.168.2.128克隆网页 http://tykd.com/User/login/
ping一下目标域名,看看IP地址有没有被假冒,可以看到IP地址已经改变。
在靶机中访问 http://www.tykd.com/ ,但其实靶机打开的是攻击机克隆的登录网页,但显示的却是伪造的域名而不是攻击机的IP地址。
输入学号信息作为账户密码,然后点击登录,可以在攻击机中看到登录信息
2.4 提出具体防范方法
从以上实验,可知攻击的方法用到了Web欺骗、ARP欺骗、DNS欺骗。 以下是防范Web欺骗、ARP欺骗、DNS欺骗的方法:
- Web欺骗防范方法:
谨慎连入公共场所的网络:避免在公共WiFi环境下进行敏感操作,如网银交易、登录重要账号等,因为这些网络可能更容易被黑客利用进行Web欺骗。 检查网站真实性:在输入个人信息或进行交易前,务必检查网站地址是否正确,并确认网站使用了HTTPS协议。同时,查看网站证书是否由受信任的证书颁发机构签发,并注意证书的有效期。 使用安全软件:安装可靠的安全软件,如防病毒软件、防火墙等,这些软件可以帮助识别并阻止恶意网站的访问。 避免点击不明链接:不要随意点击来自陌生人或可疑来源的链接,这些链接可能包含恶意代码或重定向到钓鱼网站。
- ARP欺骗防范方法:
设置静态ARP:为网络设备配置静态ARP表,确保网络中的每个设备都使用固定的MAC地址和IP地址对应关系,从而防止ARP欺骗。 使用ARP防火墙:在网络设备上启用ARP防火墙功能,它可以监控ARP请求和回复,并阻止未经授权的ARP更新。 定期更新网络设备:确保网络设备(如交换机、路由器等)的固件和软件版本是最新的,以修复已知的安全漏洞。
- DNS欺骗防范方法:
使用安全的DNS服务器:选择知名的、信誉良好的DNS服务提供商,并避免使用公共DNS服务器,因为这些服务器可能更容易受到攻击。 验证DNS缓存:定期清理本地计算机和网络设备上的DNS缓存,以防止过时的或恶意的DNS记录影响访问。 实施DNSSEC:DNSSEC(域名系统安全扩展)是一种用于增强DNS安全性的协议,它可以防止DNS欺骗和DNS劫持等攻击。如果可能的话,应该在网络中实施DNSSEC。 定期检测:如您所述,通过访问不存在的网页来检测是否受到DNS欺骗。此外,还可以使用专业的网络安全工具来定期扫描和检测网络中的潜在威胁。 设置安全策略:为网络设备配置安全策略,禁止未经授权的ARP和DNS信息,这有助于防止攻击者利用这些信息进行欺骗。
3.问题及解决方案
4.学习感悟、思考等
在实施DNS欺骗的实验中,我进一步探索了DNS spoofing的工作原理及其对网络安全的影响。通过使用ettercap进行DNS欺骗,我深刻体会到,这种攻击方式能够轻易劫持用户的网络请求,导致其访问恶意网站。这让我意识到,保护DNS通信的安全至关重要,任何未加密的DNS请求都可能成为攻击的目标。
一定要提高个人安全意识的实验,针对网络诈骗一定要锻炼“火眼金睛”,保护个人隐私安全。