佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 802|回复: 6

[教学]了解"木馬"工作原理 學習木馬病毒通用解法

[复制链接]
发表于 9-9-2004 02:28 PM | 显示全部楼层 |阅读模式
由於很多新手對安全問題了解不多,所以並不知道自己的計算機中了“木馬”該怎麼樣清除。因此最關鍵的還是要知道“木馬”的工作原理,這樣就會很容易發現“木馬”。相信你看了這篇文章之後,就會成為一名查殺“木馬”的高手了。      

    “木馬”程式會想盡一切辦法隱藏自己,主要途徑有:在任務欄中隱藏自己,
這是最基本的只要把Form的Visible屬性設為False、ShowInTaskBar設為False,程式運行時就不會出現在任務欄中了。在任務管理器中隱形:將程式設為“系統服務”可以很輕鬆地偽裝自己。     

    當然它也會悄無聲息地啟動,你當然不會指望用戶每次啟動後點擊“木馬”圖標來運行服務端,,“木馬”會在每次用戶啟動時自動裝載服務端,Windows系統啟動時自動載入應用程式的方法,“木馬”都會用上,如:啟動組、win.ini、system.ini、註冊表等等都是“木馬”藏身的好地方。下面具體談談“木馬”是怎樣自動載入的。      

    在win.ini文件中,在[WINDOWS]下面,“run=”和“load=”是可能載入“木馬”程式的途徑,必須仔細留心它們。一般情況下,它們的等號後面什麼都沒有,如果發現後面跟有路徑與文件名不是你熟悉的啟動文件,你的計算機就可能中上“木馬”了。當然你也得看清楚,因為好多“木馬”,如“AOL Trojan木馬”,它把自身偽裝成command.exe文件,如果不注意可能不會發現它不是真正的系統啟動文件。      

    在system.ini文件中,在[BOOT]下面有個“shell=文件名”。正確的文件名應該是“explorer.exe”,如果不是“explorer.exe”,而是“shell= explorer.exe 程式名”,那麼後面跟著的那個程式就是“木馬”程式,就是說你已經中“木馬”了。      

    在註冊表中的情況最複雜,透過regedit命令打開註冊表編輯器,在點擊至:“HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\Run”目錄下,查看鍵值中有沒有自己不熟悉的自動啟動文件,擴展名為EXE,這裡切記:有的“木馬”程式生成的文件很像系統自身文件,想透過偽裝矇混過關,如“Acid Battery v1.0木馬”,它將註冊表“HKEY-LOCAL-MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run”下的Explorer 鍵值改為Explorer=“C:\WINDOWS\expiorer.exe”,“木馬”程式與真正的Explorer之間只有“i”與“l”的差別。當然在註冊表中還有很多地方都可以隱藏“木馬”程式,如:“HKEY-CURRENT-USER\Software\Microsoft\Windows\CurrentVersion\Run”、“HKEY-USERS\****\Software\Microsoft\Windows\CurrentVersion\Run”的目錄下都有可能,最好的辦法就是在“HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\Run”下找到“木馬”程式的文件名,再在整個註冊表中搜索即可。   

    知道了“木馬”的工作原理,查殺“木馬”就變得很容易,如果發現有“木馬”存在,最安全也是最有效的方法就是馬上將計算機與網路斷開,防止黑客透過網路對你進行攻擊。然後編輯win.ini文件,將[WINDOWS]下面,“run=“木馬”程式”或“load=“木馬”程式”更改為“run=”和“load=”;編輯system.ini文件,將[BOOT]下面的“shell=‘木馬’文件”,更改為:“shell=explorer.exe”;在註冊表中,用regedit對註冊表進行編輯,先在“HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\Run”下找到“木馬”程式的文件名,再在整個註冊表中搜索並替換掉“木馬”程式,有時候還需注意的是:有的“木馬”程式並不是直接將“HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\Run”下的“木馬”鍵值刪除就行了,因為有的“木馬”如:BladeRunner“木馬”,如果你刪除它,“木馬”會立即自動加上,你需要的是記下“木馬”的名字與目錄,然後退回到MS-DOS下,找到此“木馬”文件並刪除掉。重新啟動計算機,然後再到註冊表中將所有“木馬”文件的鍵值刪除。至此,我們就大功告成了。   

小知識:      

    “木馬”全稱是“特洛伊木馬(Trojan Horse)”,原指古希臘士兵藏在木馬內進入敵方城市從而佔領敵方城市的故事。在Internet上,“特洛伊木馬”指一些程式設計人員在其可從網路上下載(Download)的應用程式或遊戲中,包含了可以控制用戶的計算機系統的程式,可能造成用戶的系統被破壞甚至癱瘓。
回复

使用道具 举报


ADVERTISEMENT

发表于 10-9-2004 12:16 AM | 显示全部楼层
不知道如果用那些掃木馬的程式有用的嗎??
回复

使用道具 举报

 楼主| 发表于 10-9-2004 02:28 AM | 显示全部楼层
gn1731747 于 10-9-2004 12:16 AM  说 :
不知道如果用那些掃木馬的程式有用的嗎??

其实扫木马程序或者防毒软件是没有多大作用的,这个有被木马困扰过的都知道,因为木马程序严格来说根本都不是病毒。还是靠手动清除比较来的有效。
在《揭開木馬的神秘面紗》一文中就有提到:

(之所以把殺病毒軟件放在最后是因為它實在沒有太大的用,包括一些號稱專殺木馬的軟件也同樣是如此, 不過對于過時的木馬以及菜鳥安裝的木馬(沒有配置服務端)還是有點用處的, 值得一提的是最近新出來的ip armor在這一方面可以稱得上是比較領先的,它采用了監視動態鏈接庫的技朮,可以監視所有調用Winsock的程序,并可以動態殺除進程,是一個個人防御的好工具(雖然我對傳說中“該軟件可以查殺未來十年木馬”的說法表示懷疑,嘿嘿,兩年后的事都說不清,誰知道十年后木馬會“進化”到什么程度?甚至十年后的操作系統是什么樣的我都想象不出來))


想了解多一点木马程序的资料可以到这边:
hackland
推荐文章:揭開木馬的神秘面紗《一》到《四》
回复

使用道具 举报

发表于 14-9-2004 01:01 AM | 显示全部楼层
爲何我
win.ini裏面沒有 [WINDOWS]
system.ini 裏面沒有[BOOT]
???
回复

使用道具 举报

 楼主| 发表于 14-9-2004 10:08 AM | 显示全部楼层
hahajojo 于 14-9-2004 01:01 AM  说 :
爲何我
win.ini裏面沒有 [WINDOWS]
system.ini 裏面沒有[BOOT]
???


如果是winXP/2K的话,就直接去regedit寻找线索。木马的registry key大多数是在HKEY_LOCAL_MACHINE\Software\microsoft\windows\ CurrentVersion\Run\,找到可疑的设定后,记录下该程序的位置(大多数会在%SystemRoot%),然后把registry value和该程序一并删除。
回复

使用道具 举报

 楼主| 发表于 14-9-2004 10:21 AM | 显示全部楼层
另外,还可以用另外一种方法检测木马程序,那就是利用netstat:
关于netstat命令,我们先来看看windows帮助文件中的介绍:

  Netstat

  显示协议统计和当前的 TCP/IP 网络连接。该命令只有在安装了 TCP/IP 协议后才可以使用。

  netstat [-a] [-e] [-n] [-s] [-p protocol] [-r] [interval]

  参数

  -a

  显示所有连接和侦听端口。服务器连接通常不显示。

  -e

  显示以太网统计。该参数可以与 -s 选项结合使用。

  -n

  以数字格式显示地址和端口号(而不是尝试查找名称)。

  -s

  显示每个协议的统计。默认情况下,显示 TCP、UDP、ICMP 和 IP 的统计。-p 选项可以用来指定默认的子集。

  -p protocol

  显示由 protocol 指定的协议的连接;protocol 可以是 tcp 或 udp。如果与 -s 选项一同使用显示每个协议的统计,protocol 可以是 tcp、udp、icmp 或 ip。

  -r

  显示路由表的内容。

  interval

  重新显示所选的统计,在每次显示之间暂停 interval 秒。按 CTRL+B 停止重新显示统计。如果省略该参数,netstat 将打印一次当前的配置信息。

  好了,看完这些帮助文件,我们应该明白netstat命令的使用方法了。现在就让我们现学现用,用这个命令看一下自己的机器开放的端口。进入到命令行下,使用netstat命令的a和n两个参数:

  C:\>netstat -an

  Active Connections

  Proto Local Address Foreign Address State
  TCP 0.0.0.0:80 0.0.0.0:0 LISTENING
  TCP 0.0.0.0:21 0.0.0.0:0 LISTENING
  TCP 0.0.0.0:7626 0.0.0.0:0 LISTENING
  UDP 0.0.0.0:445 0.0.0.0:0
  UDP 0.0.0.0:1046 0.0.0.0:0
  UDP 0.0.0.0:1047 0.0.0.0:0

  解释一下,Active Connections是指当前本机活动连接,Proto是指连接使用的协议名称,Local Address是本地计算机的 IP 地址和连接正在使用的端口号,Foreign Address是连接该端口的远程计算机的 IP 地址和端口号,State则是表明TCP 连接的状态,你可以看到后面三行的监听端口是UDP协议的,所以没有State表示的状态。看!我的机器的7626端口已经开放,正在监听等待连接,像这样的情况极有可能是已经感染了冰河!急忙断开网络,用杀毒软件查杀病毒是正确的做法。
回复

使用道具 举报

Follow Us
raymonddic 该用户已被删除
发表于 10-10-2004 06:30 PM | 显示全部楼层
谢谢分享。。。。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 28-10-2024 07:18 PM , Processed in 0.126180 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表