实验指导5木马攻击与防范实验1.实验目的理解和掌握木马传播和运行的机制,掌握检查和删除木马的技巧,学会防御木马的相关知识,加深对木马的安全防范意识。2.预备知识木马及木马技术的介绍(1)木马概念介绍很多人把木马看得很神秘,其实,木马就是在用户不知道的情况下被植入用户计算机,用来获取用户计算机上敏感信息(如用户口令,个人隐私等)或使攻击者可以远程控制用户主机的一个客户服务程序。这种客户/服务模式的原理是一台主机提供服务(服务器),另一台主机使用服务(客户机)。作为服务器的主机一般会打开一个默认的端口并进行监听(Listen),如果有客户机向服务器的这一端口提出连接请求(ConnectRequest),服务器上的相应守护进程就会自动运行,来应答客户机的请求。通常来说,被控制端相当于一台服务器,控制端则相当于一台客户机,被控制端为控制端提供预定的服务。(2)木马的反弹端口技术由于防火墙对于进入的链接往往会进行非常严格的过滤,但是对于连出的链接却疏于防范。于是,与一般的木马相反,反弹端口型木马的服务端(被控制端)使用主动端口,客户端(控制端)使用被动端口。木马定时监测控制端的存在,发现控制端上线立即弹出端口主动连结控制端打开的主动端口;为了隐蔽起见,控制端的被动端口一般开在80,这样,即使用户使用端口扫描软件检查自己的端口,发现的也是类似TCPUserIP:1026ControllerIP:80ESTABLISHED的情况,稍微疏忽一点,你就会以为是自己在浏览网页。(3)线程插入技术木马程序的攻击性有了很大的加强,在进程隐藏方面,做了较大的改动,不再采用独立的EXE可执行文件形式,而是改为内核嵌入方式、远程线程插入技术、挂接PSAPI等。这样木马的攻击性和隐藏性就大大增强了。木马攻击原理特洛伊木马是一个程序,它驻留在目标计算机里,可以随计算机自动启动并在某一端口进行侦听,在对接收的数据识别后,对目标计算机执行特定的操作。木马,其实质就是一个通过端口进行通信的网络客户/服务程序。(1)基本概念网络客户/服务模式的原理是一台主机提供服务(服务器),另一台主机接受服务(客户机)。作为服务器的主机一般会打开一个默认的端口并进行监听(Listen),如果有客户机向服务器的这一端口提出连接请求(ConnectRequest),服务器上的相应程序就会自动运行,来应答客户机的请求,这个程序称为守护进程(UNIX的术语,不过已经被移植到了MS系统上)。对于特洛伊木马,被控制端就成为一台服务器,控制端则是一台客户机,是守护进程,G_client是客户端应用程序。(2)实现木马的控制功能由于Win98开放了所有的权限给用户,因此,以用户权限运行的木马程序几乎可以控制一切,下面仅对木马的主要功能进行简单的概述,主要是使用WindowsAPI函数。①远程监控(控制对方鼠标、键盘,并监视对方屏幕)keybd_event模拟一个键盘动作。mouse_event模拟一次鼠标事件mouse_event(dwFlags,dx,dy,cButtons,dwExtraInfo)dwFlags:MOUSEEVENTF_ABSOLUTE指定鼠标坐标系统中的一个绝对位置MOUSEEVENTF_MOVE移动鼠标MOUSEEVENTF_LEFTDOWN模拟鼠标左键按下MOUSEEVENTF_LEFTUP模拟鼠标左键抬起MOUSEEVENTF_RIGHTDOWN模拟鼠标右键按下MOUSEEVENTF_RIGHTUP模拟鼠标右键按下dx,dy:MOUSEEVENTF_ABSOLUTE中的鼠标坐标。②记录各种口令信息keylogbegin:将击键记录在一个文本文件里,同时还记录执行输入的窗口名。③获取系统信息a.取得计算机名GetComputerNameb.更改计算机名SetComputerNamec.当前用户GetUserNamed.系统路径e.取得系统版本f.当前显示分辨率④限制系统功能a.远程关机或重启计算机,使用WinAPI中的如下函数可以实现。ExitWindowsEx(UINTuFlags,DWORDdwReserved)当uFlags=EWX_LOGOFF中止进程,然后注销=EWX_SHUTDOWN关掉系统但不关电源=EWX_REBOOT重新引导系统=EWX_FORCE强迫中止没有响应的进程=EWX_POWERDOWN关掉系统及关闭电源b.锁定鼠标,ClipCursor(lpRectAsRECT)可以将指针限制到指定区域,或者用ShowCursor(FALSE)把鼠标隐藏起来也可以,RECT是定义的一个矩形。c.让对方掉线RasHangUpd.终止进程ExitProcesse.关闭窗口利用FindWindow函数找到窗口并利用...