实验报告运用metasploit进行渗透攻击与取证Word文件下载.docx
《实验报告运用metasploit进行渗透攻击与取证Word文件下载.docx》由会员分享,可在线阅读,更多相关《实验报告运用metasploit进行渗透攻击与取证Word文件下载.docx(11页珍藏版)》请在冰点文库上搜索。
![实验报告运用metasploit进行渗透攻击与取证Word文件下载.docx](https://file1.bingdoc.com/fileroot1/2023-5/8/7d6ed8d3-8853-4b74-916e-d20c2aed9521/7d6ed8d3-8853-4b74-916e-d20c2aed95211.gif)
授课学期:
2013年秋季学期
培养类型:
军事指挥类
所属学院:
九院4-3队
专业年级:
网络工程专业2010级
姓名学号:
聂上入
201009021018
姓名学号
吴殿元
201009021030
宋轲轮
201009021023
易春昇
201009021037
实验概要
实验目的:
通过实验,实现从windows7到windowsxp系统的一次成功的渗透攻击,并在xp系统上进行取证。
掌握对操作系统进行渗透攻击的一般方法,同时当自己遭遇渗透攻击或其他计算机领域的侵害时,能够掌握常用的取证办法。
并能够对攻击进行取证。
实验环境:
Windows7操作系统主机一台,装有xp系统的一个virtualbox虚拟机,metasploits软件,内存管理专家(装在xp系统上)。
实验原理:
Metasploit是由HDMoore在2003年开发的一款开源的安全漏洞检测工具,用来进行网络安全中的漏洞发现、渗透攻击,IDS的识别标签等开发方面的开发工作。
该工具在用户群和开发者中已以成倍的速度发展起来了,Metasploit为渗透测试者和研究员提供binaryexploitation,payloads和post-exploitationpayloads这样的一个高端平台。
由开发商和社区所开发的Metasploit为一系列的操作系统,商业和开源软件提供exploit,一份exploit可以提供多种形式,但其最终目的仍然是明确的:
控制程序执行流程。
运用metasploit进行渗透攻击的主要原理就是利用各种操作系统中存在的漏洞如本地缓冲区溢出,堆污染,整数溢出或者格式串漏洞等进行攻击。
在Metasploit宝库中的每一个exploit都提供很多的payload选项,payload实际上是以机器码的形式在受害者的机器上运行的。
Payload可以简单地添加用户到系统中,或者将VNC服务注入到受害者电脑的进程中。
因此,在进行取证时,我们需要对受害者系统内存中的进程进行分析。
为了更为容易地访问物理内存,Windows公布一个名为\Device\PhysicalMemory的sectionobject。
这个sectionobject一打开,应用程序即有一个指向物理内存的句柄。
如果程序通过该句柄读取数据,那么它就会从物理内存中读取。
在访问物理内存之前,Memoryze需要访问每一进程的虚拟地址空间。
地址空间大小随着如线程,动态存储,栈,被加载的可执行文件等的内存需求而进行增减。
WindowsMemoryManager(MM)管理着所有的这些信息,且是以二叉树的形式被管理的。
在ExecutiveProcess(EPROCESS)结构当中一个名为VadRoot(VirtualAddressDescriptorRoot)的成员变量刚好指向该二叉树的根。
每一进程均含有EPROCESS结构,其包含有进程管理器需要用来管理进程的信息。
二叉树的入口实际上是一个名为MemoryManagerVirtualAddressDescriptors(MMVAD)结构。
该结构包含有与MM相关的信息,如被描述的内存段的虚拟内存基址和大小。
若想查看MMVAD结构及其成员,可在windbg中输入dt_MMVAD的命令以显示此结构信息。
通过以上命令可以显示MMVAD结构及其成员的偏移地址和大小。
这里所讨论的技术和研究只是内存取证的一个开端,特别是如何更好地利用发现的人为产生的内存数据进行内存取证的技术。
事实上,Windows内存管理器功能在释放内存页后,并没有马上清除,这对于取证分析很有帮助。
这种行为也类似于传统文件系统取证。
当一个文件被删除后,只是从链表中解链,但开始并没有被覆写,它允许分析人员在文件删除后数天之内进行数据恢复。
这只是迈出了第一步,至少证明了在取证人员的工具箱中内存取证仍占有一席之地。
在以后的研究当中,还有更多的工作要做,以便更好地了解释放内存的限制。
当内存被释放时,它只是被标记为不可用而已,但这些内存页所包含的数据并没有被清除或清零。
这也就意味着一名分析师可以追回和查看内存,并找到释放的内存页。
Meterpreterpacket在内部调度,以指示正确地释放payload。
Meterpreter将通过调用packet_transmit_response来响应TLV,它将调用packet_transmit。
这个函数实际上是用于发送TLV回复给客户端。
响应包一发送,Meterpreter就会调用destroy_packet去释放”payload”。
在我们的例子中,它将会释放整个响应包。
但是,释放内存并不意味着它会丢失和不可获取。
MSFF工程通过扫描每一块获取的内存块,然后查找攻击者在攻击过程中Meterpreter所发回的响应包中已知的“方法”字符串。
MSFF工程扫描每个VAD中这些已知的字符串,如果找到,则开始分析TLV结构。
由于TLV结构包含有type,以指示如何分析它的数据,MSFF利用这些信息恢复响应包。
还因为Meterpreter调用回复方法来响应,这样MSFF就可以知道攻击者请求后响应的结果了。
所有的这些信息都是从内存中获取的,可用于重现所发生的攻击过程。
因此,通过分析这一过程可以是实现对于攻击的取证。
实验过程
攻击环节:
首先,要让虚拟机中的xp系统与win7主机系统连接在同一网段上并能够相互访问。
在这里,要特别注意虚拟机上的网卡设置必须为hostonly网卡,及连接在主机上的那个网卡。
由此图可知在win7上已经可以ping通xp系统。
然后,启动metasploit软件,进入控制台,一步一步的从win7向xp实施渗透攻击。
一、Showexploits显示软件系统收录的漏洞
二、Usewindows/vnc/realvnc_client(这儿是漏洞的名字)这里选择(缓冲区溢出漏洞realvnc_client)来对xp系统进行攻击。
三、Setrhost192.168.56.100(这里输入你要攻击的主机的ip地址)
四、Showpayloads选择绑定方式,以此来保证入侵成功后用来获取权限
五、Setpayloadwindows/shell/bind_tcp(选择绑定方式)
六、Showtargets(显示可以入侵的目标系统)
七、Settarget1选择第1种,也就是我们要攻击的xp系统
八、Set(确认下)
九、Exploit(开始入侵)
可以发现,我们已经对xp上的这一漏洞成功实现了渗透攻击。
Metaspolit上的exploit进程已经作为xp系统上的一个后台程序在运行,并且成功捆绑住了该肉鸡(startedbindhandler)
取证环节:
1.在xp系统上运行内存分析软件—内存优化专家。
2.在内存优化专家中可以发现一个新的进程pg-ctl.Exe.这个就是刚刚win7攻击xp时注入的木马程序,它潜伏在xp系统中,并根据win7上的控制台的指令对xp系统进行控制操作。
我们将这个视频截取下来,作为这个作为windowsxp被攻击侵入的一个证据。
实验总结
实验心得:
通过实验,我们较好的掌握了运用metasploit这一软件对目标操作系统进行渗透攻击的方法,并且初步掌握了计算机取证的方法。
在实验的过程中,曾经碰到过很多困难,包括实验环境的搭建,攻击软件的选择,xp系统漏洞的选择,以及后期的取证处理等。
但是,经过不懈的努力,最终我们克服了种种困难,较为完满的实现了攻击—取证这一实验目的。
这一过程让我们受益匪浅,进一步加深了对计算机网络攻击实践的认识,增强了我们的团队合作意识,最后也提高了我们发现问题和解决问题的能力。
实验分工:
姓名
学号
任务分工
聂上入(组长)
攻击环节实现,ppt汇报展示,视频制作,实验报告撰写
宋轲轮(组员)
取证环节实现,资料收集
吴殿元(组员)
开题报告,资料收集
易春昇(组员)
视频处理,资料收集