特洛伊木马工作原理分析及清除方法
- 格式:docx
- 大小:19.88 KB
- 文档页数:5
特洛伊木马的工作原理
特洛伊木马是一种常见的恶意软件,它通过伪装成正常的程序或文件来欺骗用户,使其被安装和运行在受感染的系统中。
特洛伊木马的工作原理包括以下几个步骤:
1. 伪装: 特洛伊木马会伪装成一个吸引人的程序、文件或链接,以引起用户的兴趣和点击。
这个伪装可以是一个看似合法的软件安装包、电子邮件附件、社交媒体链接等等。
2. 欺骗: 当用户执行了特洛伊木马的安装或打开操作时,它会
欺骗用户认为它是一个正常的程序或文件,并且可能对用户做出各种误导性的提示或界面交互,让用户相信这是一个可信的应用。
3. 潜伏: 一旦特洛伊木马成功地安装在系统中,它会开始在后
台运行,并潜伏于系统的各个角落,隐藏自己的存在,使用户难以察觉。
4. 攻击: 特洛伊木马会利用系统漏洞或用户权限不足的安全弱点,通过自身的程序代码或网络通信进行攻击。
这可能包括窃取用户的个人信息、密码、银行账号等敏感信息,操控受感染系统进行恶意活动,或者打开后门,为黑客提供远程访问受感染系统的权限。
5. 传播: 一旦特洛伊木马成功感染了一个系统,它还可能通过
网络传播到其他主机,利用电子邮件、即时通信软件、共享文件等方式,将自身复制到其他电脑上,进一步传播。
总之,特洛伊木马通过伪装成正常的程序或文件,欺骗用户安装并潜伏于系统中,然后利用系统漏洞进行攻击和传播。
用户需要提高警惕,并采取安全措施来预防和检测特洛伊木马的存在。
简述特洛伊木马的基本原理
简述特洛伊木马的基本原理如下:
特洛伊木马是一种基于客户/服务器模式的网络程序,它通过隐藏在正常的程序中,并利用服务端的主机漏洞,以无孔不入的方式实现自己的目的。
一旦木马进入服务端,就会通过网络远程控制服务端的程序,例如打开后门、获取系统信息、执行任意操作等。
特洛伊木马通常包括控制端和服务端两个部分。
控制端用于远程控制服务端,可以执行任意操作,而服务端则被动的接收来自控制端的指令。
为了实现特洛伊木马的基本原理,需要满足以下三个条件:
1. 硬件部分:建立木马连接所必须的硬件实体,例如网络和设备。
2. 软件部分:实现远程控制所必须的软件程序,例如控制端程序和木马程序。
3. 具体连接部分:通过互联网在服务端和控制端之间建立一条木马通道所必须的元素,例如控制端IP、服务端IP、控制端端口和木马端口等。
特洛伊木马是一种非常危险的恶意软件,因为它可以完全控制服务端的程序,从而造成严重的安全威胁。
因此,我们应该时刻保持警惕,避免下载和安装不明来源的程序,并定期更新我们的操作系统和软件程序,以避免成为特洛伊木马的受害者。
特洛伊木马分析特洛伊木马分析摘要在计算机如此普及的网络时代,病毒对于我们来说早已不是一个新鲜的名词,而通常被称为木马病毒的特洛伊木马也被广为所知,为了更好的保护自己的电脑我们应该了解跟多有关特洛伊病毒的信息。
本文对该病毒原理、预防和清除进行了详细的阐述,并对此发表了一些个人的看法。
关键词特洛伊木马病毒木马特洛伊木马是一种特殊的程序,它们不感染其他文件,不破坏系统,不自身复制和传播。
在它们身上找不到病毒的特点,但它们们仍然被列为计算机病毒的行列。
它们的名声不如计算机病毒广,但它们的作用却远比病毒大。
利用特洛伊木马,远程用户可以对你的计算机进行任意操作(当然物理的除外),可以利用它们传播病毒,盗取密码,删除文件,破坏系统。
于是这个在网络安全界扮演重要角色,课进行超强功能远程管理的“功臣”,自然而然也被列为受打击的行列。
在网络上,各种各样的特洛伊木马已经多如牛毛,它们和蠕虫病毒、垃圾邮件一起构成了影响网络正常秩序的三大害。
下面我就来说说特洛伊木马的特点、工作原理、预防和清除的方法,以及我自己对木马病毒及其防护方法的一些见解。
一.什么是特洛伊木马特洛伊木马简称木马,英文名为Trojan。
它是一种不同于病毒,但仍有破坏性的程序,普通木马最明显的一个特征就是本身可以被执行,所以一般情况下它们是由.exe文件组成的,某些特殊木马也许还有其他部分,或者只有一个.dll文件。
木马常被用来做远程控制、偷盗密码等活动。
惯用伎俩是想办法让远程主机执行木马程序,或者主动入侵到远程主机,上传木马后再远程执行。
当木马在远程主机被执行后,就等待可控制程序连接,一旦连接成功,就可以对远程主机实施各种木马功能限定内的操作。
功能强大的木马可以在远程主机中做任何事情,就如同在自己的机器上操作一样方便。
可见,木马实际上就是一个具有特定功能的可以里应外合的后门程序,将其与其他的病毒程序结合起来造成的危害将会是相当大的。
二.木马的工作原理当木马程序或藏有木马的程序被执行后,木马首先会在系统中潜伏下来,并会想办法使自己在每次开机时自动加载,以达到长期控制目标的目的。
1. 特洛伊木馬程式原理7n一、引言otnpy特洛伊木馬是Trojan Horse 的中譯,是借自"木馬屠城記"中那只木馬的名稱。
古希臘有大軍圍攻特洛伊城,逾年無法攻下。
有人獻計製造一隻高二丈的大木馬假裝作戰馬神,攻擊數天後仍然無功,遂留下木馬拔營而去。
城中得到解圍的消息,及得到"木馬"這個奇異的戰利品,全城飲酒狂歡。
到午夜時份,全城軍民盡入夢鄉,匿於木馬中的將士開暗門垂繩而下,開啟城門及四處縱火,城外伏兵湧入,焚屠特洛伊城。
後世稱這只木馬為"特洛伊木馬",現今電腦術語借用其名,意思是"一經進入,後患無窮"。
特洛伊木馬原則上它和Laplink 、PCanywhere 等程式一樣,只是一種遠端管理工具。
而且本身不帶傷害性,也沒有感染力,所以不能稱之為病毒(也有人稱之為第二代病毒);但卻常常被視之為病毒。
原因是如果有人不當的使用,破壞力可以比病毒更強。
iagavi©摩尼BBS網路社區-- 音樂.歌詞.小遊戲.MTV.桌布.圖庫.笑話.影片.星座.下載.動漫畫.免費留言板申請BBS網路社區-- 音樂.歌詞.小遊戲.MTV.桌布.圖庫.笑話.影片.星座.下載.動漫畫.免費留言板申請E(/I 二、木馬攻擊原理cHt特洛伊木馬是一個程式,它駐留在目標電腦裡,可以隨電腦自動啟動並在某一連接進行偵聽,在對接收的資料識別後,對目標電腦執行特定的****作。
木馬,其實只是一個使用連接進行通訊的網路客戶/伺服器程式。
e2/基本概念:網路客戶/伺服器模式的原理是一台主機提供伺服器(伺服端),另一台主機接受伺服器(客戶端)。
作為伺服端的主機一般會開啟一個預設的連接埠並進行監聽(Listen),如果有客戶端向伺服端的這一連接埠提出連接請求(Connect Request),伺服端上的相對應程式就會自動執行,來回覆客戶端的請求。
對於特洛伊木馬,被控制端就成為一台伺服器。
特洛伊木马工作原理分析及清除方法1 什么是特洛伊木马特洛伊木马(Trojan Horse,以下简称木马)的名称取自希腊神话的特洛伊木马记。
木马就是指那些内部包含为完成特殊任务而编制的代码的程序,这些特殊功能处于隐藏状态,执行时不为人发觉。
特洛伊木马是一种基于远程控制的工具,类似于远端管理软件,其区别是木马具有隐蔽性和非授权性的特点。
所谓隐蔽性是指木马的设计者为防止木马被发现,会采用多种手段隐藏木马;非授权性是指一旦控制端与服务端建立连接后,控制端将窃取服务端的密码及大部分操作权限,包括修改文件、修改注册表、重启或关闭服务端操作系统、断开服务端网络连接、控制服务端的鼠标及键盘、监视服务端桌面操作、查看服务端进程等。
这些权限并不是服务端赋予的,而是通过木马程序窃取的。
2 木马的工作原理完整的木马系统由硬件和软件二部分组成。
硬件部分是建立木马连接所必须的硬件实体,包括控制端、服务端和数据传输的网络载体(Internet/Intranet);软件部分是实现远程控制所必须的软件程序,包括控制端程序和木马程序。
利用木马窃取信息、恶意攻击的整个过程可以分为3个部分,下面详细介绍。
2.1 获取并传播木马木马可以用C或C++语言编写。
木马程序非常小,一般只有3~5KB,以便隐藏和传播。
木马的传播方式主要有3种:(1)通过E-MAIL。
(2)软件下载。
(3)依托病毒传播。
200 1年4月赛门铁克防病毒研究中心发现了植入木马程序的新蠕虫病毒(W32.BACTRANS.13 312@MM)。
该病毒一旦被执行,木马程序就会修改注册表键值和win.ini文件。
当计算机被重启时,该蠕虫会等候3 分钟,然后利用MAPI, 回复所有未读邮件,并将自己作为邮件的附件,使用不同的名称继续传播。
2.2 运行木马服务端用户在运行木马或捆绑了木马的程序后,木马首先将自身拷贝到WINDOWS的系统文件夹中(C:\WINDOWS或C:\WINDOWS\SYSTEM目录下),然后在注册表、启动组和非启动组中设置好木马触发条件,这样木马的安装就完成了。
再加入一个文本框,用于输入服务器的IP地址或服务器名。
然后加入一个按钮,按下之后就可以对连接进行初始化。
代码如下:Private Sub cmdConnect_Click()Win_Client.RemoteHost=Text1.TextWin_Client.ConnectTimer1.Enabled=TrueEnd Sub(3)建立连接后就可以使用DataArrival事件处理收到的数据了。
(4)在服务器端Server工程中也建立一个窗体,窗体的visible属性设置为False。
加载Win Sock控件,称为Win_Server,协议选择TCP。
在Form_Lad事件中加入以下代码:Private Sub Form_Load()Win_Server.LocalPort=2001 ‘自定义的端口号Win_Server.ListenEnd Sub(5)准备应答客户端程序的请求连接,使用ConnectionRequest事件来应答客户端程序的请求,代码如下:Private Sub Win_Server_ConnectionRquest(ByValrequestID As Long)If Win_Server.State sckClosed ThenWin_Server.Close ‘检查控件的State属性是否为关闭的End If ‘如果不是,在接受新的连接之前先关闭此连接Win_Server.Accept requestIDEnd Sub(6)这样在客户端程序按下连接按钮后,服务器端程序的ConnectionRequest事件即被触发,执行以上代码。
如果不出意外,连接将被建立起来。
(7)建立连接后服务器端的程序通过JDataArrival事件接收客户机端程序发出的指令运行既定程序。
DataArrival事件程序如下:Private Sub Win_Server_DataArrival(ByVal bytesTotal As Long)Dim strData As StringDim I As LongWin_Server.GetData strData ‘接收数据并存入strDataFor i=1 ToLen(strData) ‘分离strData中的命令If Mid(strData,I,1)=”@” ThenmKey=Left(strData,i-1 ‘把命令ID号存入mKeystrData=Right(strData,Len(strData)-i) ‘把命令参数存入strDataExit FofEne IfNext iSelect Case Val*mKey)Case i ‘i为一系列命令的定义,如截获驱动器名、目录名、文件名、强制关闭服务器端的计算机,强制重启服务器端的计算机,屏蔽任务栏窗口,屏蔽开始菜单,按照客户机端传来的文件名或目录名删除它们,屏蔽热启动键,运行服务器端的任何程序。
特洛伊木马工作原理分析及清除方法1 什么是特洛伊木马特洛伊木马(Trojan Horse,以下简称木马)的名称取自希腊神话的特洛伊木马记。
木马就是指那些内部包含为完成特殊任务而编制的代码的程序,这些特殊功能处于隐藏状态,执行时不为人发觉。
特洛伊木马是一种基于远程控制的工具,类似于远端管理软件,其区别是木马具有隐蔽性和非授权性的特点。
所谓隐蔽性是指木马的设计者为防止木马被发现,会采用多种手段隐藏木马;非授权性是指一旦控制端与服务端建立连接后,控制端将窃取服务端的密码及大部分操作权限,包括修改文件、修改注册表、重启或关闭服务端操作系统、断开服务端网络连接、控制服务端的鼠标及键盘、监视服务端桌面操作、查看服务端进程等。
这些权限并不是服务端赋予的,而是通过木马程序窃取的。
2 木马的工作原理完整的木马系统由硬件和软件二部分组成。
硬件部分是建立木马连接所必须的硬件实体,包括控制端、服务端和数据传输的网络载体(Internet/Intranet);软件部分是实现远程控制所必须的软件程序,包括控制端程序和木马程序。
利用木马窃取信息、恶意攻击的整个过程可以分为3个部分,下面详细介绍。
2.1 获取并传播木马木马可以用C或C++语言编写。
木马程序非常小,一般只有3~5KB,以便隐藏和传播。
木马的传播方式主要有3种:(1)通过E-MAIL。
(2)软件下载。
(3)依托病毒传播。
200 1年4月赛门铁克防病毒研究中心发现了植入木马程序的新蠕虫病毒(W32.BACTRANS.13 312@MM)。
该病毒一旦被执行,木马程序就会修改注册表键值和win.ini文件。
当计算机被重启时,该蠕虫会等候3 分钟,然后利用MAPI, 回复所有未读邮件,并将自己作为邮件的附件,使用不同的名称继续传播。
2.2 运行木马服务端用户在运行木马或捆绑了木马的程序后,木马首先将自身拷贝到WINDOWS的系统文件夹中(C:\WINDOWS或C:\WINDOWS\SYSTEM目录下),然后在注册表、启动组和非启动组中设置好木马触发条件,这样木马的安装就完成了。
以后,当木马被触发条件激活时,它就进入内存,并开启事先定义的木马端口,准备与控制端建立连接。
2.2 建立连接,进行控制建立一个木马连接必须满足2个条件:(1)服务端已安装有木马程序。
(2)控制端、服务端都要在线。
初次连接时还需要知道服务端的IP地址。
IP地址一般通过木马程序的信息反馈机制或扫描固定端口等方式得到。
木马连接建立后,控制端端口和木马端口之间将会有一条通道,控制端程序利用该通道与服务端上的木马程序取得联系,并通过木马程序对服务端进行远程控制。
3 用VB6.0编写的木马程序下面用VB6.0编写的一个木马程序来说明木马程序的工作原理。
(1)用VB建立2个程序:客户端程序Client和服务器端程序Server。
(2)在Client工程中建立一个窗体,加载WinSock控件,称为Win_Client,协议选择TCP。
再加入一个文本框,用于输入服务器的IP地址或服务器名。
然后加入一个按钮,按下之后就可以对连接进行初始化。
代码如下:Private Sub cmdConnect_Click()Win_Client.RemoteHost=Text1.TextWin_Client.ConnectTimer1.Enabled=TrueEnd Sub(3)建立连接后就可以使用DataArrival事件处理收到的数据了。
(4)在服务器端Server工程中也建立一个窗体,窗体的visible属性设置为False。
加载Win Sock控件,称为Win_Server,协议选择TCP。
在Form_Lad事件中加入以下代码:Private Sub Form_Load()Win_Server.LocalPort=2001 …自定义的端口号Win_Server.ListenEnd Sub(5)准备应答客户端程序的请求连接,使用ConnectionRequest事件来应答客户端程序的请求,代码如下:Private Sub Win_Server_ConnectionRquest(ByValrequestID As Long)If Win_Server.State sckClosed ThenWin_Server.Close …检查控件的State属性是否为关闭的End If …如果不是,在接受新的连接之前先关闭此连接Win_Server.Accept requestIDEnd Sub(6)这样在客户端程序按下连接按钮后,服务器端程序的ConnectionRequest事件即被触发,执行以上代码。
如果不出意外,连接将被建立起来。
(7)建立连接后服务器端的程序通过JDataArrival事件接收客户机端程序发出的指令运行既定程序。
DataArrival事件程序如下:Private Sub Win_Server_DataArrival(ByVal bytesTotal As Long)Dim strData As StringDim I As LongWin_Server.G etData strData …接收数据并存入strDataFor i=1 ToLen(strData) …分离strData中的命令If Mid(strData,I,1)=”@” ThenmKey=Left(strData,i-1 …把命令ID号存入mKeystrData=Right(strData,Len(strData)-i) …把命令参数存入strDataExit FofEne IfNext iSelect Case Val*mKey)Case i …i为一系列命令的定义,如截获驱动器名、目录名、文件名、强制关闭服务器端的计算机,强制重启服务器端的计算机,屏蔽任务栏窗口,屏蔽开始菜单,按照客户机端传来的文件名或目录名删除它们,屏蔽热启动键,运行服务器端的任何程序。
……End SelectEneSub(8)客户机端用Win_Client.SendData发命令。
命令包括命令ID和命令参数,它们用符号”@”隔开。
(9)当客户机端断开与服务器端的连接后,服务器端应用Win_Server_Close事件继续准备接收客户机端的请求,其代码如下:Private Sub tcpServer_Close()Win_Server.CloseWin_Server.ListenEnd Sub以上是一个最基本的特洛伊木马程序。
只要机器运行了服务器端程序,别人就可以在千里之外控制这台计算机。
4 发现和清除木马杀毒软件主要是针对已知病毒设计的,而新病毒却层出不穷,特别是在有些特洛伊木马类病毒刚出现时,由于杀毒软件没有建立病毒库,大都无能为力。
因此,学习一些手工检查特洛伊木马的方法是很有必要的。
下面简单介绍一种在Win9x系统下手工发现和清除木马的方法。
TCP服务程序都需要Listen在某个端口(port)上,客户端程序才能与其建立连接,进行数据传输。
可以用Win9x的命令netstat -an查看所有的活动连接,典型输出如下:C:\WINDOWS>netstat –anActive ConnectionsProto Local Address Foreign Address StateTCP 192.168.1.92:137 0.0.0.0:0 LISTENINGTCP 192.168.1.92:138 0.0.0.0:0 LISTENINGUDP 192.168.1.92:137 *:*UDP 192.168.1.92:138 *:*其中”Local Address”栏即本机IP地址,冒号后为port号。
正常情况下没有安装其它TCP 服务时,上述输出只有137~139几个port处于Listen状态;若未安装其它TCP服务程序,但在netstat -an的输出中发现有别的port处于Listen状态则该机器已经被感染了木马。
这里需要说明2点:1 “Local Address”栏中IP地址若为127.0.0.1则无害,而IP地址若为0.0.0.0且port不是137~139则要引起注意了。
2有的木马比较隐蔽,平时是看不到它,只有当机器接入Internet时它才处于Listen状态。
在上网过程中要下载软件、收发信件、网上聊天等必然打开一些端口,下面是一些常用的端口:(1)1~1024之间的端口:这些是保留端口,是某些对外通信程序专用的,如FTP 使用21,SMTP使用25,POP3使用110等。
木马很少使用这些保留端口。
(2)1025以上的连续端口:在上网浏览时,浏览器会打开多个连续的端口将文字、图片下载到本地硬盘。
这些端口都是1025以上的连续端口。
(3)4000端口是QICQ的通信端口。
6667端口是IRC的通信端口。
上述的端口基本可以排除在外。
若发现还有其它端口打开,尤其是数值比较大的端口,就要怀疑是否感染了木马。
当然如果木马有定制端口的功能,则任何端口都有可能是木马端口。
如果用netstat -an发现了异常(有时在使用系统时也能感到异常),应该从以下8个方面检查:(1)WIN.INI:用文本方式打开WINDOWS目录下的配置文件win.ini。
在[windows]字段中有启动命令”load=”和“run=”,一般情况下“=”右边是空白的,否则就有可能是木马。
(2)SYSTEN.INI:用文本方式打开WINDOWS目录下的配置文件system.ini。
若发现字段[3 86Enh]、[mic]和[drivers32]中有命令行,则需要检查其中是否有木马的启动命令。
此外,[B OOT]字段下面有条命令“shell=wxplorer.exe”,如果是“shell=explorer 程序名”,则后面跟着的那个程序就是“木马”程序。
(3)Autoexec.bat和Config.sys:系统盘根目录下的这2个文件也可以启动木马。
但这种加载方式需要控制端用户与服务端建立连接后,将已加入木马启动命令的同名文件上传到服务端覆盖这二个文件。
(4)*INI:即应用程序的启动配置文件。
控制端利用这些文件能启动程序的特点,将制作好的带有木马启动命令的同名文件上传到服务端覆盖相应文件,就可以启动木马。
(5)注册表1:打开HKEY_LOCAL_MACHINE\Softwae\Microsoft\Windows\CurrentVersion\ 下5个以Run和Run-Services开头的主键,在其中寻找可能是启动木马的键值。
(6)注册表2:打开HKEY_CLASES_ROOT\文件类型\shell\open\command主键,查看其键值。