安防策略 即時剖解防范DOS攻擊
[ 2007-03-25 03:33:36 | 作者: sun ]
意用戶越來越猖獗的今天,網絡中不再是風平浪靜,作為一名保衛計算機安全的管理人員,了解惡意用戶的攻擊手段與原理是必然的,知已知彼方能更好將安全系數提升至另一個境界,而DOS、DDOS攻擊類型方式的興起,也讓網管員再次忙活了起來……
DOS攻擊原理詳探
DOS攻擊可以使被攻擊目標達到無法正常訪問并不能面對用戶提供正常提供服務,其攻擊方式是一對一式的通常稱為點對點式,采用消耗資源、服務中止和物理破壞形式,但當被攻擊機器的性能優越于攻擊者機器時,DOS無明顯效果。此時分布式拒絕服務攻擊手法DDOS應運而生,此攻擊是在DOS基礎上利用大量計算機一起發動大規模攻擊,從而導至目標機資淅耗盡而崩潰,因為DDOS式攻擊可讓惡意用戶控制傀儡機進行跨機攻擊,隱匿性非常強,所以受害機往往很難查出真正發起攻擊的惡意用戶到底是來自那個地區,后果非常糟糕也十分可怕。
常見DOS攻擊及防范
目前網絡中流行的其DOS類攻擊有很多種,而下面的四種卻是惡意用戶最常用的攻擊手法,其危害大、操作相對簡單。
一、UDP Flood攻擊
此種攻擊方法也是讓目標機產生拒絕服務的手段之一,此UDP連接無需任何協議技持即可進行遠程數據傳輸,當惡意用戶向目標機發送4字節的數據包時,此時將會產生UDP淹沒攻擊,目標計算機接收數據包的應用程序,并進行等待確定,一但發現端口中不存在等待連接的應用程序,此時將產生一個目的地址無法連接的ICMP數據包發送給該偽造的源地址,隨著數據包往復發送的次數變多,此時目標機的處理能力慢慢變低,最終將導至計算機無法提供正常服務系統崩潰。
針對此種攻擊的網絡管理人員要充分利用硬件產品與計算機安全策略相互交錯運行,禁用或者過濾監控和響應服務,并過濾或禁用其它的UDP服務,對指定的UDP服務可以通過其代理機制來實行網絡訪問。
二、SYN FLOOD攻擊原理防法方案
此攻擊方法利用了TCP協議中三次握手中的缺憾,并因此為傳輸依據向目標主機發送大量偽造的TCP連接請求,重復一次又一次的SYN報文后依次中斷,讓目標機接收的連接請求保存在一個有限空間緩存隊列中,并越聚越多,從而使目標機出現CPU滿載運行與內存資源耗盡,無法及時回應并處理正常的服務請求,導至服務器不停地處理大量虛假SYN包 ,使堆棧溢出陷入崩潰邊緣,從而造成服務器的拒絕服務。
由于SYN Flood攻擊的效果取決于目標機上的半連接數,這個值等于SYN攻擊的頻度乘以SYN Timeout,所以通過縮短SYN Timeout時間以確定報文無效并丟棄該連接即可抵御,其修改方法如下:首先在計算機運行項里輸入regedit.exe調出注冊表項,并依次展開HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\parameters鍵值,并在右側窗體中建立DWORD值名為SynAttackProtect,設置其鍵值范圍為2(提示:此值減少SYN攻擊時采取的保護措施,0為無保護)并再次建立DWORD值命名為TcpMaxHalfOpen,此值的設置要根據實際情況進行設定,用以控制系統允許打開的半連接數,最后再次建立DWORD名為TcpMaxHalfOpenRetriec,此值決定系統于何種情況下自動打開SYN攻擊保護,修改注冊表鍵值將針對攻擊頻率不高的SYN Flood攻擊產生效果。
三、ICMP Flood攻擊原理及防法
ICMP攻擊是通過Ping產生的大量數據包,使目標計算機的CPU占用率滿載繼而當機,此類的攻擊方法更加簡單,惡意用戶只要在DOS窗體中輸入ping -t -l 65500 IP地址即可實現向目標計算機發送一個65500的ICMP報文,此時目標用戶即受到ICMP洪水攻擊,計算機因此逐漸變慢,從而死機。
用戶或管理人員可以通過在運行菜單中輸入regedit.exe調出注冊表,打開HKEY_LOCAL_Machine/System/CurrentControlSt/Services?TCPIP/Paramters鍵值并在其右窗口中創建DWORD鍵值命名為EnableICMPRedirects鍵值數為0,此時即可禁止計算機響應ICMP得定向報文,以達保護目的,而還有一種方法是通過修改注冊表禁止響應ICMP路由通告報文,來守護此類攻擊,依次打開注冊表如下鍵值HKEY_LOCAL_Machine/System/CurrentControlSt/Services?TCPIP/Paramters/Interfaces在右側窗體中創建DWORD值命名為PerformRouterDiscovery其鍵值為0即可停止響應。
DDOS攻擊
DDoS是英文Distributed Denial of Service的縮寫(網絡統稱為:分布式拒絕服務)。其原理是主攻擊利用所控制的N臺中間人計算機(傀儡主機)一起向目標機器發送大量看似合法的數據包,造成目標機網絡阻塞或服務器資源耗盡而導致拒絕服務產生,導至合法的網絡數據包被虛假的網絡數據包淹沒而無法到達主機,形成合法用戶無法正常訪問,也可以通過大量的攻擊數據包導至主機的CPU滿裁、內存耗盡造成目標機也無法對正常用戶提供網絡服務,威力更加龐大。
了解了DOS及DDOS的幾類攻擊手法后,那么用戶或管理人員如何才能做到有效地防備呢?首先要安裝專業抗DDOS防火墻,安裝完成對利用端口掃描軟件對本機進行掃描,發現高危端口時使用新建防火墻規則,對其進行攔截或過濾某些特定的數據包,在系統安全上要經常打上最新的安全補丁程序,建立備份機制刪除多余用戶,禁止不必要的網絡服務,并建立路由器、防火墻等負載均衡設備策略,當網絡被惡意用戶DDOS時最先崩潰的是路由器,此時當一臺路由器被攻擊死機時,另一臺則馬上進行工作,而內部計算機在其保護之下完好無損,崩潰的路由器經重啟很快便于能進入替補角色,從而最大程度的削減了DDOS的攻擊,做到防危滴漏!
防御后記
網絡用戶在以后的網絡中遇上此類攻擊,相信在了解其原理的情況下,能即時應對所發生的突發事件,在情節處理上要做到穩而不亂,忙而能靜的攻守原則,在硬件上下下功夫做好防火墻與策略的把關工作,定能大事化小小事化了
DOS攻擊原理詳探
DOS攻擊可以使被攻擊目標達到無法正常訪問并不能面對用戶提供正常提供服務,其攻擊方式是一對一式的通常稱為點對點式,采用消耗資源、服務中止和物理破壞形式,但當被攻擊機器的性能優越于攻擊者機器時,DOS無明顯效果。此時分布式拒絕服務攻擊手法DDOS應運而生,此攻擊是在DOS基礎上利用大量計算機一起發動大規模攻擊,從而導至目標機資淅耗盡而崩潰,因為DDOS式攻擊可讓惡意用戶控制傀儡機進行跨機攻擊,隱匿性非常強,所以受害機往往很難查出真正發起攻擊的惡意用戶到底是來自那個地區,后果非常糟糕也十分可怕。
常見DOS攻擊及防范
目前網絡中流行的其DOS類攻擊有很多種,而下面的四種卻是惡意用戶最常用的攻擊手法,其危害大、操作相對簡單。
一、UDP Flood攻擊
此種攻擊方法也是讓目標機產生拒絕服務的手段之一,此UDP連接無需任何協議技持即可進行遠程數據傳輸,當惡意用戶向目標機發送4字節的數據包時,此時將會產生UDP淹沒攻擊,目標計算機接收數據包的應用程序,并進行等待確定,一但發現端口中不存在等待連接的應用程序,此時將產生一個目的地址無法連接的ICMP數據包發送給該偽造的源地址,隨著數據包往復發送的次數變多,此時目標機的處理能力慢慢變低,最終將導至計算機無法提供正常服務系統崩潰。
針對此種攻擊的網絡管理人員要充分利用硬件產品與計算機安全策略相互交錯運行,禁用或者過濾監控和響應服務,并過濾或禁用其它的UDP服務,對指定的UDP服務可以通過其代理機制來實行網絡訪問。
二、SYN FLOOD攻擊原理防法方案
此攻擊方法利用了TCP協議中三次握手中的缺憾,并因此為傳輸依據向目標主機發送大量偽造的TCP連接請求,重復一次又一次的SYN報文后依次中斷,讓目標機接收的連接請求保存在一個有限空間緩存隊列中,并越聚越多,從而使目標機出現CPU滿載運行與內存資源耗盡,無法及時回應并處理正常的服務請求,導至服務器不停地處理大量虛假SYN包 ,使堆棧溢出陷入崩潰邊緣,從而造成服務器的拒絕服務。
由于SYN Flood攻擊的效果取決于目標機上的半連接數,這個值等于SYN攻擊的頻度乘以SYN Timeout,所以通過縮短SYN Timeout時間以確定報文無效并丟棄該連接即可抵御,其修改方法如下:首先在計算機運行項里輸入regedit.exe調出注冊表項,并依次展開HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\parameters鍵值,并在右側窗體中建立DWORD值名為SynAttackProtect,設置其鍵值范圍為2(提示:此值減少SYN攻擊時采取的保護措施,0為無保護)并再次建立DWORD值命名為TcpMaxHalfOpen,此值的設置要根據實際情況進行設定,用以控制系統允許打開的半連接數,最后再次建立DWORD名為TcpMaxHalfOpenRetriec,此值決定系統于何種情況下自動打開SYN攻擊保護,修改注冊表鍵值將針對攻擊頻率不高的SYN Flood攻擊產生效果。
三、ICMP Flood攻擊原理及防法
ICMP攻擊是通過Ping產生的大量數據包,使目標計算機的CPU占用率滿載繼而當機,此類的攻擊方法更加簡單,惡意用戶只要在DOS窗體中輸入ping -t -l 65500 IP地址即可實現向目標計算機發送一個65500的ICMP報文,此時目標用戶即受到ICMP洪水攻擊,計算機因此逐漸變慢,從而死機。
用戶或管理人員可以通過在運行菜單中輸入regedit.exe調出注冊表,打開HKEY_LOCAL_Machine/System/CurrentControlSt/Services?TCPIP/Paramters鍵值并在其右窗口中創建DWORD鍵值命名為EnableICMPRedirects鍵值數為0,此時即可禁止計算機響應ICMP得定向報文,以達保護目的,而還有一種方法是通過修改注冊表禁止響應ICMP路由通告報文,來守護此類攻擊,依次打開注冊表如下鍵值HKEY_LOCAL_Machine/System/CurrentControlSt/Services?TCPIP/Paramters/Interfaces在右側窗體中創建DWORD值命名為PerformRouterDiscovery其鍵值為0即可停止響應。
DDOS攻擊
DDoS是英文Distributed Denial of Service的縮寫(網絡統稱為:分布式拒絕服務)。其原理是主攻擊利用所控制的N臺中間人計算機(傀儡主機)一起向目標機器發送大量看似合法的數據包,造成目標機網絡阻塞或服務器資源耗盡而導致拒絕服務產生,導至合法的網絡數據包被虛假的網絡數據包淹沒而無法到達主機,形成合法用戶無法正常訪問,也可以通過大量的攻擊數據包導至主機的CPU滿裁、內存耗盡造成目標機也無法對正常用戶提供網絡服務,威力更加龐大。
了解了DOS及DDOS的幾類攻擊手法后,那么用戶或管理人員如何才能做到有效地防備呢?首先要安裝專業抗DDOS防火墻,安裝完成對利用端口掃描軟件對本機進行掃描,發現高危端口時使用新建防火墻規則,對其進行攔截或過濾某些特定的數據包,在系統安全上要經常打上最新的安全補丁程序,建立備份機制刪除多余用戶,禁止不必要的網絡服務,并建立路由器、防火墻等負載均衡設備策略,當網絡被惡意用戶DDOS時最先崩潰的是路由器,此時當一臺路由器被攻擊死機時,另一臺則馬上進行工作,而內部計算機在其保護之下完好無損,崩潰的路由器經重啟很快便于能進入替補角色,從而最大程度的削減了DDOS的攻擊,做到防危滴漏!
防御后記
網絡用戶在以后的網絡中遇上此類攻擊,相信在了解其原理的情況下,能即時應對所發生的突發事件,在情節處理上要做到穩而不亂,忙而能靜的攻守原則,在硬件上下下功夫做好防火墻與策略的把關工作,定能大事化小小事化了
木馬取自古希臘神話的特洛伊木馬記,是一種基于遠程控制的黑客工具,具有很強的隱藏性和危害性。為了達到控制服務端主機的目的,木馬往往要采用各種手段達到激活自己,加載運行的目的。這里,我們簡要的介紹一下木馬通用的激活方式,它們的藏身地,并通過一些實例來讓您體會一下手動清除木馬的方法。
●在Win.ini中啟動木馬:
在Win.ini的[Windows]小節中有啟動命令“load=”和“run=”,在一般的情況下“=”后面是空的,如果后面跟有程序,比如:
run=C:\Windows ile.exe
load=C:\Windows ile.exe
則這個file.exe很有可能就是木馬程序。
●在Windows XP注冊表中修改文件關聯:
修改注冊表中的文件關聯是木馬常用的手段,如何修改的方法已在本系列的前幾文中有過闡述。舉個例子,在正常情況下txt文件的打開方式為Notepad.exe(記事本),但一旦感染了文件關聯木馬,則txt文件就變成條用木馬程序打開了。如著名的國產木馬“冰河”,就是將注冊表HKEY_CLASSES_ROOT xtfileshellopencommand子鍵分支下的鍵值項“默認”的鍵值“C:\Windows otepad.exe %1”修改為“C:\WindowsSystemSysexplr.exe”,這樣,當你雙擊一個txt文件時,原本應該用記事本打開的文件,現在就成了啟動木馬程序了。當然,不僅是txt 文件,其它類型的文件,如htm、exe、zip、com等文件也都是木馬程序的目標,要小心。
對這類木馬程序,只能檢查注冊表中的HKEY_CLASSES_ROOT中的文件類型shellopencommand子鍵分支,查看其值是否正常。
●在Windows XP系統中捆綁木馬文件:
實現這種觸發條件首先要控制端和服務端已通過木馬建立連接,控制端用戶使用工具軟件將木馬文件和某一應用程序捆綁在一起,上傳到服務端覆蓋原有文件,這樣即使木馬被刪除了,只要運行捆綁了木馬的應用程序,木馬又會被重新安裝了。如果捆綁在系統文件上,則每次Windows XP啟動都會啟動木馬。
關閉注冊表,打開C:\Autoexec.bat文件,刪除如下兩行:
@echo off copy c:\sys.lon C:\WindowsStart MenuStartup Items
Del c:\win.reg
保存并關閉Autoexec.exe文件。
●IndocTrination v0.1-v0.11注冊表清除實例:
在注冊表中打開如下子鍵:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnce
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices Once
將這些子鍵右邊窗口中的如下鍵值項刪除:
Msgsrv16=“Msgsrv16”,關閉注冊表后重啟Windows,刪除C:\WindowsSystemmsgserv16.exe文件。
●SubSeven-Introduction v1.8注冊表清除實例:
打開HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun子鍵分支和HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices子鍵分支,在右窗口中查找到含有“C:\WindowsSystem.ini”的鍵值項數據,將它刪除。
打開Win.ini文件,將其中的“run=kernel16.dl”改為“run=”,保存并關閉Win.ini文件。
打開System.ini文件,將其中的“shell=explorer.exe kernel32.dl”改為“shell=explorer.exe”,保存并關閉System.ini文件,重啟Windows,刪除C:\Windowskernel16.dl文件。
●廣外女生注冊表清除實例:
退到MS-DOS模式下,刪除System目錄下的diagcfg.exe。由于該病毒關聯的是exe文件,因此,現在刪除它后Windows環境下任何exe文件都將無法運行。我們先找到Windows目錄下的注冊表編輯器“Regedit.exe”,將其改名為“Regedit.com”。
回到Windows模式下,運行“Regedit.com”。打開HKEY_CLASSES_ROOTexefileshellopencommand,將其默認值改為“%1 %*”,刪除HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices下的鍵值項“Diagnostic Configuration”。關閉注冊表。
回到Windows目錄,將“Regedit.com”改回“Regedit.exe”。
●Netbull(網絡公牛)注冊表清除實例:
該病毒在Windows 9X下:捆綁notepad.exe、writre.exe、regedit.exe、winmine.exe和winhelp.exe。在Windows NT/2000下捆綁:notepad.exe、regedit.exe、regedt32.exe、drwtsn32.exe和winmine.exe。打開:
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices
HKEY_USERS.DEFAULTSoftwareMicrosoftWindowsCurrentVersionRun
在這些子鍵下刪除鍵值項“CheckDll.exe”=“C:\WindowsSystemCheckDll..exe”。
另外,要察看自己的機器是否中了該病毒,可以察看上面列出的文件,如果發現該文件長度發生變化(大約增加了40K左右),就刪除它們。然后點擊[開始]|[附件]|[系統工具]|[系統文件檢查器],在彈出的對話框中選擇“從安裝軟盤提取一個文件”,在框中填入要提取的文件(前面你刪除的),點“確定”,按屏幕提示將這些文件恢復即可。如果是開機時自動運行的第三方軟件,如realplay.exe、QQ等被捆綁上了,那就必須把這些文件刪除后重新安裝了。
●聰明基因注冊表清除實例:
刪除C:\Windows下的MBBManager.exe和Explore32.exe,再刪除C:\WindowsSystem下的editor.exe文件。如果服務端已經運行,則要先用進程管理軟件終止MBBManager.exe這個進程后才能將它刪除。
打開HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun,刪除鍵值項“MainBroad BackManager”。將HKEY_CLASSES_ROOT xtfileshellopencommand的默認值改為“C:\WindowsNotepad.exe %1”,恢復txt文件關聯。將HKEY_CLASSES_ROOThlpfileshellopencommand的默認值改為“C:\Windowswinhlp32.exe %1”,恢復hlp文件關聯。
以上是一些比較典型的手動清除特洛伊木馬操作步驟,希望大家能在動手的過程中得到啟發,慢慢摸索木馬的藏身和激活規律,以達到以不變應萬變的境地。
●在Win.ini中啟動木馬:
在Win.ini的[Windows]小節中有啟動命令“load=”和“run=”,在一般的情況下“=”后面是空的,如果后面跟有程序,比如:
run=C:\Windows ile.exe
load=C:\Windows ile.exe
則這個file.exe很有可能就是木馬程序。
●在Windows XP注冊表中修改文件關聯:
修改注冊表中的文件關聯是木馬常用的手段,如何修改的方法已在本系列的前幾文中有過闡述。舉個例子,在正常情況下txt文件的打開方式為Notepad.exe(記事本),但一旦感染了文件關聯木馬,則txt文件就變成條用木馬程序打開了。如著名的國產木馬“冰河”,就是將注冊表HKEY_CLASSES_ROOT xtfileshellopencommand子鍵分支下的鍵值項“默認”的鍵值“C:\Windows otepad.exe %1”修改為“C:\WindowsSystemSysexplr.exe”,這樣,當你雙擊一個txt文件時,原本應該用記事本打開的文件,現在就成了啟動木馬程序了。當然,不僅是txt 文件,其它類型的文件,如htm、exe、zip、com等文件也都是木馬程序的目標,要小心。
對這類木馬程序,只能檢查注冊表中的HKEY_CLASSES_ROOT中的文件類型shellopencommand子鍵分支,查看其值是否正常。
●在Windows XP系統中捆綁木馬文件:
實現這種觸發條件首先要控制端和服務端已通過木馬建立連接,控制端用戶使用工具軟件將木馬文件和某一應用程序捆綁在一起,上傳到服務端覆蓋原有文件,這樣即使木馬被刪除了,只要運行捆綁了木馬的應用程序,木馬又會被重新安裝了。如果捆綁在系統文件上,則每次Windows XP啟動都會啟動木馬。
關閉注冊表,打開C:\Autoexec.bat文件,刪除如下兩行:
@echo off copy c:\sys.lon C:\WindowsStart MenuStartup Items
Del c:\win.reg
保存并關閉Autoexec.exe文件。
●IndocTrination v0.1-v0.11注冊表清除實例:
在注冊表中打開如下子鍵:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnce
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices Once
將這些子鍵右邊窗口中的如下鍵值項刪除:
Msgsrv16=“Msgsrv16”,關閉注冊表后重啟Windows,刪除C:\WindowsSystemmsgserv16.exe文件。
●SubSeven-Introduction v1.8注冊表清除實例:
打開HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun子鍵分支和HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices子鍵分支,在右窗口中查找到含有“C:\WindowsSystem.ini”的鍵值項數據,將它刪除。
打開Win.ini文件,將其中的“run=kernel16.dl”改為“run=”,保存并關閉Win.ini文件。
打開System.ini文件,將其中的“shell=explorer.exe kernel32.dl”改為“shell=explorer.exe”,保存并關閉System.ini文件,重啟Windows,刪除C:\Windowskernel16.dl文件。
●廣外女生注冊表清除實例:
退到MS-DOS模式下,刪除System目錄下的diagcfg.exe。由于該病毒關聯的是exe文件,因此,現在刪除它后Windows環境下任何exe文件都將無法運行。我們先找到Windows目錄下的注冊表編輯器“Regedit.exe”,將其改名為“Regedit.com”。
回到Windows模式下,運行“Regedit.com”。打開HKEY_CLASSES_ROOTexefileshellopencommand,將其默認值改為“%1 %*”,刪除HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices下的鍵值項“Diagnostic Configuration”。關閉注冊表。
回到Windows目錄,將“Regedit.com”改回“Regedit.exe”。
●Netbull(網絡公牛)注冊表清除實例:
該病毒在Windows 9X下:捆綁notepad.exe、writre.exe、regedit.exe、winmine.exe和winhelp.exe。在Windows NT/2000下捆綁:notepad.exe、regedit.exe、regedt32.exe、drwtsn32.exe和winmine.exe。打開:
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices
HKEY_USERS.DEFAULTSoftwareMicrosoftWindowsCurrentVersionRun
在這些子鍵下刪除鍵值項“CheckDll.exe”=“C:\WindowsSystemCheckDll..exe”。
另外,要察看自己的機器是否中了該病毒,可以察看上面列出的文件,如果發現該文件長度發生變化(大約增加了40K左右),就刪除它們。然后點擊[開始]|[附件]|[系統工具]|[系統文件檢查器],在彈出的對話框中選擇“從安裝軟盤提取一個文件”,在框中填入要提取的文件(前面你刪除的),點“確定”,按屏幕提示將這些文件恢復即可。如果是開機時自動運行的第三方軟件,如realplay.exe、QQ等被捆綁上了,那就必須把這些文件刪除后重新安裝了。
●聰明基因注冊表清除實例:
刪除C:\Windows下的MBBManager.exe和Explore32.exe,再刪除C:\WindowsSystem下的editor.exe文件。如果服務端已經運行,則要先用進程管理軟件終止MBBManager.exe這個進程后才能將它刪除。
打開HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun,刪除鍵值項“MainBroad BackManager”。將HKEY_CLASSES_ROOT xtfileshellopencommand的默認值改為“C:\WindowsNotepad.exe %1”,恢復txt文件關聯。將HKEY_CLASSES_ROOThlpfileshellopencommand的默認值改為“C:\Windowswinhlp32.exe %1”,恢復hlp文件關聯。
以上是一些比較典型的手動清除特洛伊木馬操作步驟,希望大家能在動手的過程中得到啟發,慢慢摸索木馬的藏身和激活規律,以達到以不變應萬變的境地。
菜鳥電腦安全防范技巧
[ 2007-03-25 03:33:10 | 作者: sun ]
大家好,今天是我第一次寫點東西給大家分享有點緊張。如果哪里寫的不對請高手給予指正。
今天我所講的一切都是關于個人計算機安全,也都是我所知道的知識。我想大家都有過這樣的經歷,我們都是研究HACK技術的,經常會有一少部分人會給我們下木馬病毒(損人不利己的事)!很多人都會黑某些WEB主機、攻擊/入侵對方計算機。但是做同樣的事情的也有別人,在我們攻擊別人的時候,也會有人在攻擊我們的電腦,我想那些人也不是吃素的,一般的殺毒軟件、防火墻,我想對他們來說也是可以輕松突破的。
畢竟世界上沒有絕對完美的防御。沒有什么電腦可以一點漏洞都沒有。所以我們大家都會入侵某某網站、個人計算機。但是相對于我們這方面的技術,欠缺的是防御自己計算機方面的方法與意識。今天我就把我個人知道的一些方法和知識寫出來,和大家一起分享。
安全軟件:殺毒軟件、防火墻、病毒木馬專殺軟件、流氓軟件清理類。(Windows系統上最好安裝上這些安全產品)
Windows 的系統更新對于計算機安全來說由為重要,系統更新一定要打開,以及時修補計算機漏洞。
必要的計算機設置,比如:關閉潛在危險的服務telnet、ftp、3389、netbios等;給管理員用戶設置一個強度密碼,不要使用弱口令;刪除其他無用的用戶帳號、禁用guest用戶、刪除默認共享 $admin $c\d\e\f $ipc。
還有一些安全常識,要知道:有些木馬病毒的隱藏性很好,而且事先一定做好了病毒免殺,所以不要把系統的安全全部放在殺毒軟件上,也不要過分依賴于軟件,要學會手動查殺計算機病毒木馬。一般來說計算機病毒木馬程序分為:鍵盤記錄、遠程控制、后門類等。因為殺毒軟件的隱藏性都很好,一般是加載到啟動項,這樣系統在下次啟動的時候就可以秘密的啟動病毒木馬程序。現在我要說一下病毒木馬的幾種啟動方式:加載到win.ini、注冊表啟動項、引導扇區,一般來說就算病毒木馬經過了免殺處理也就是:改變程序的入口點、插入進程技術等。使用病毒木馬專殺工具就可以很有效的清除病毒木馬程序。但是如果上面的方式都無法清除病毒木馬程序的話,你可以嘗試手動清理的方式,經常聽見大家說手動清理病毒木馬程序,但是有很多朋友還是不知道怎么清理。今天我就為大家介紹如何實現手動清理病毒木馬程序。有幾個病毒木馬程序隱藏的地方我先告訴大家:注冊表、引導扇區、win.ini、system32目錄等,都是病毒木馬程序隱藏的地方。一般來說首先要先刪除病毒木馬程序的啟動項,然后再刪除病毒木馬程序的源文件,清理一下引導扇區、內存就可以了。
入侵一般是沖著你電腦里的重要資料來的,或者是廣泛的入侵(大范圍掃描)。所以之前最好對自己電腦里的數據資料做加密處理,這樣才能有效的保護好你的資料不被其他人下載和閱讀。
還有就是大家最好都有些安全意識。比如你的電腦感染了木馬程序(這里指鍵盤記錄程序),首先你運行了某些程序之后大概過了幾分鐘之后你的程序突然掉了,那就不要在登陸帳號了,因為很有可能你的電腦已經感染了病毒木馬,感染這類木馬你也不需要太過擔心只要你不登陸帳號你也不怕什么的,有些木馬程序是全局范圍的,只要你在Windows上的text框輸入字符木馬程序都會記錄下來并發送出去。而有些木馬則是記錄指定程序的,你不運行指定程序的時候那木馬是不會工作的。
在你懷疑自己電腦感染了病毒木馬程序的時候首先你可以先用專殺工具查殺一便,也可以看看有沒有什么可疑進程在運行,有沒有開放可疑端口。一般隱藏好的木馬這兩點是不會暴露的。找到了可疑木馬病毒程序你可以在注冊表和計算機的系統盤搜索一下,把注冊表啟動項目刪除,再把分區內的源文件刪除。然后再檢測一下內存、引導扇區,應該沒問題了。
還有一些是針對黑客入侵,大家都知道HACK技術入侵之前要做的事情。先會掃描我們計算機是否存在漏洞,我們可以先用安全工具檢測一下自己的電腦是否也存在安全漏洞。比如默認共享要關閉、IPC共享、ADMIN共享。還有文件和打印機共享。此漏洞存在遠程緩沖區溢出漏洞。
系統管理員密碼最好是高強度密碼,千萬不要使用弱口令。遠程連接服務不需要的話也一定要關閉:telnet、ftp、3389之類的。
因為我不經常使用那些軟件,我的愛好是計算機編程。雖然我現在還在學習階段,也不經常用軟件。我建議大家不要過分依賴于軟件。有的人使用了好幾年的軟件最后還都不知道軟件實現的原理。
如果你要是學會了一門計算機語言那對你以后學習HACK技術會有很大幫助,只是會用工具、對黑客來說會有很大的局限性,做的事也很受限制。
再回到計算機防御上來說吧,防御好自己的計算機一點都不簡單,我上面所說的也只是針對一般性的入侵。但對于真正的黑客我想可能也是沒用的,我相信真正的黑客一定掌握著一種以上沒被發現的漏洞。因為他沒有公布所以很少人知道此漏洞。MS也不知道吧?
下面介紹一下常見的病毒木馬欺騙的方法,以提高大家的安全意識。
WEB掛馬,我想大家也都知道有些站點被黑客入侵以后首頁被掛上了木馬程序。只要用戶打開對應的頁面,木馬就會利用瀏覽器的漏洞自動下載并執行。(所以本地電腦最好把殺毒軟件的WEB監視功能打開)。
不要輕易接受陌生網友傳送過來的文件和圖片,軟件有可能被惡意捆綁木馬病毒程序。
盡量要去一些大型、專業的網站下載軟件,打開軟件之前要先查毒。
要禁得住誘惑!要知道天上沒掉餡餅的時候,不要輕易去點別人發給你的連接地址(地址很有可能已經被掛上了木馬病毒程序)。
因為現在大部分的漏洞也都是針對IE,如果不是很有必要就不要使用IE了,個人推薦使用Firefox瀏覽器。
把殺毒軟件的下載更新打開、或者定期下載殺毒軟件的更新補丁,以保持殺毒軟件的最新病毒庫。不然你的殺毒軟件就行同虛設。
一些病毒木馬在注冊表的啟動項鍵值:
1、HEKY_LOCAL_MACHINE\SOFTWAER\MICROSOFT\Windows\CURRENTVERSION\RUN
2、HKEY_CURRENT_USER\SOFTWAER\MICROSOFT\Windows\CURRENTVERSION\RUN
3、HKEY_USERS\.DEFAULT\SOFTWAER\MICROSOFT\Windows\CURRENTVERSION\RUN
今天我所講的一切都是關于個人計算機安全,也都是我所知道的知識。我想大家都有過這樣的經歷,我們都是研究HACK技術的,經常會有一少部分人會給我們下木馬病毒(損人不利己的事)!很多人都會黑某些WEB主機、攻擊/入侵對方計算機。但是做同樣的事情的也有別人,在我們攻擊別人的時候,也會有人在攻擊我們的電腦,我想那些人也不是吃素的,一般的殺毒軟件、防火墻,我想對他們來說也是可以輕松突破的。
畢竟世界上沒有絕對完美的防御。沒有什么電腦可以一點漏洞都沒有。所以我們大家都會入侵某某網站、個人計算機。但是相對于我們這方面的技術,欠缺的是防御自己計算機方面的方法與意識。今天我就把我個人知道的一些方法和知識寫出來,和大家一起分享。
安全軟件:殺毒軟件、防火墻、病毒木馬專殺軟件、流氓軟件清理類。(Windows系統上最好安裝上這些安全產品)
Windows 的系統更新對于計算機安全來說由為重要,系統更新一定要打開,以及時修補計算機漏洞。
必要的計算機設置,比如:關閉潛在危險的服務telnet、ftp、3389、netbios等;給管理員用戶設置一個強度密碼,不要使用弱口令;刪除其他無用的用戶帳號、禁用guest用戶、刪除默認共享 $admin $c\d\e\f $ipc。
還有一些安全常識,要知道:有些木馬病毒的隱藏性很好,而且事先一定做好了病毒免殺,所以不要把系統的安全全部放在殺毒軟件上,也不要過分依賴于軟件,要學會手動查殺計算機病毒木馬。一般來說計算機病毒木馬程序分為:鍵盤記錄、遠程控制、后門類等。因為殺毒軟件的隱藏性都很好,一般是加載到啟動項,這樣系統在下次啟動的時候就可以秘密的啟動病毒木馬程序。現在我要說一下病毒木馬的幾種啟動方式:加載到win.ini、注冊表啟動項、引導扇區,一般來說就算病毒木馬經過了免殺處理也就是:改變程序的入口點、插入進程技術等。使用病毒木馬專殺工具就可以很有效的清除病毒木馬程序。但是如果上面的方式都無法清除病毒木馬程序的話,你可以嘗試手動清理的方式,經常聽見大家說手動清理病毒木馬程序,但是有很多朋友還是不知道怎么清理。今天我就為大家介紹如何實現手動清理病毒木馬程序。有幾個病毒木馬程序隱藏的地方我先告訴大家:注冊表、引導扇區、win.ini、system32目錄等,都是病毒木馬程序隱藏的地方。一般來說首先要先刪除病毒木馬程序的啟動項,然后再刪除病毒木馬程序的源文件,清理一下引導扇區、內存就可以了。
入侵一般是沖著你電腦里的重要資料來的,或者是廣泛的入侵(大范圍掃描)。所以之前最好對自己電腦里的數據資料做加密處理,這樣才能有效的保護好你的資料不被其他人下載和閱讀。
還有就是大家最好都有些安全意識。比如你的電腦感染了木馬程序(這里指鍵盤記錄程序),首先你運行了某些程序之后大概過了幾分鐘之后你的程序突然掉了,那就不要在登陸帳號了,因為很有可能你的電腦已經感染了病毒木馬,感染這類木馬你也不需要太過擔心只要你不登陸帳號你也不怕什么的,有些木馬程序是全局范圍的,只要你在Windows上的text框輸入字符木馬程序都會記錄下來并發送出去。而有些木馬則是記錄指定程序的,你不運行指定程序的時候那木馬是不會工作的。
在你懷疑自己電腦感染了病毒木馬程序的時候首先你可以先用專殺工具查殺一便,也可以看看有沒有什么可疑進程在運行,有沒有開放可疑端口。一般隱藏好的木馬這兩點是不會暴露的。找到了可疑木馬病毒程序你可以在注冊表和計算機的系統盤搜索一下,把注冊表啟動項目刪除,再把分區內的源文件刪除。然后再檢測一下內存、引導扇區,應該沒問題了。
還有一些是針對黑客入侵,大家都知道HACK技術入侵之前要做的事情。先會掃描我們計算機是否存在漏洞,我們可以先用安全工具檢測一下自己的電腦是否也存在安全漏洞。比如默認共享要關閉、IPC共享、ADMIN共享。還有文件和打印機共享。此漏洞存在遠程緩沖區溢出漏洞。
系統管理員密碼最好是高強度密碼,千萬不要使用弱口令。遠程連接服務不需要的話也一定要關閉:telnet、ftp、3389之類的。
因為我不經常使用那些軟件,我的愛好是計算機編程。雖然我現在還在學習階段,也不經常用軟件。我建議大家不要過分依賴于軟件。有的人使用了好幾年的軟件最后還都不知道軟件實現的原理。
如果你要是學會了一門計算機語言那對你以后學習HACK技術會有很大幫助,只是會用工具、對黑客來說會有很大的局限性,做的事也很受限制。
再回到計算機防御上來說吧,防御好自己的計算機一點都不簡單,我上面所說的也只是針對一般性的入侵。但對于真正的黑客我想可能也是沒用的,我相信真正的黑客一定掌握著一種以上沒被發現的漏洞。因為他沒有公布所以很少人知道此漏洞。MS也不知道吧?
下面介紹一下常見的病毒木馬欺騙的方法,以提高大家的安全意識。
WEB掛馬,我想大家也都知道有些站點被黑客入侵以后首頁被掛上了木馬程序。只要用戶打開對應的頁面,木馬就會利用瀏覽器的漏洞自動下載并執行。(所以本地電腦最好把殺毒軟件的WEB監視功能打開)。
不要輕易接受陌生網友傳送過來的文件和圖片,軟件有可能被惡意捆綁木馬病毒程序。
盡量要去一些大型、專業的網站下載軟件,打開軟件之前要先查毒。
要禁得住誘惑!要知道天上沒掉餡餅的時候,不要輕易去點別人發給你的連接地址(地址很有可能已經被掛上了木馬病毒程序)。
因為現在大部分的漏洞也都是針對IE,如果不是很有必要就不要使用IE了,個人推薦使用Firefox瀏覽器。
把殺毒軟件的下載更新打開、或者定期下載殺毒軟件的更新補丁,以保持殺毒軟件的最新病毒庫。不然你的殺毒軟件就行同虛設。
一些病毒木馬在注冊表的啟動項鍵值:
1、HEKY_LOCAL_MACHINE\SOFTWAER\MICROSOFT\Windows\CURRENTVERSION\RUN
2、HKEY_CURRENT_USER\SOFTWAER\MICROSOFT\Windows\CURRENTVERSION\RUN
3、HKEY_USERS\.DEFAULT\SOFTWAER\MICROSOFT\Windows\CURRENTVERSION\RUN
協議欺騙攻擊技術常見種類簡析及防范
[ 2007-03-25 03:32:42 | 作者: sun ]
IP欺騙攻擊
IP欺騙技術就是通過偽造某臺主機的IP地址騙取特權從而進行攻擊的技術。許多應用程序認為如果數據包能夠使其自身沿著路由到達目的地,而且應答包也可以回到源地,那么源IP地址一定是有效的,而這正是使源IP地址欺騙攻擊成為可能的前提。
假設同一網段內有兩臺主機A、B,另一網段內有主機X。B 授予A某些特權。X 為獲得與A相同的特權,所做欺騙攻擊如下:首先,X冒充A,向主機 B發送一個帶有隨機序列號的SYN包。主機B響應,回送一個應答包給A,該應答號等于原序 列號加1。然而,此時主機A已被主機X利用拒絕服務攻擊 “淹沒”了,導致主機A服務失效。結果,主機A將B發來的包丟棄。為了完成三次握手,X還需要向B回送一個應答包,其應答號等于B向A發送數據 包的序列號加1。此時主機X 并不能檢測到主機B的數據包(因為不在同一網段),只有利用TCP順序號估算法來預測應答包的順序號并將其發送給目標機B。如果猜測正確,B則認為收到的ACK是來自內部主機A。此時,X即獲得了主機A在主機B上所享有的特權,并開始對這些服務實施攻擊。
要防止源IP地址欺騙行為,可以采取以下措施來盡可能地保護系統免受這類攻擊:
·拋棄基于地址的信任策略: 阻止這類攻擊的一種非常容易的辦法就是放棄以地址為基礎的驗證。不允許r類遠程調用命令的使用;刪除.rhosts 文件;清空/etc/hosts.equiv 文件。這將迫使所有用戶使用其它遠程通信手段,如telnet、ssh、skey等等。
·使用加密方法: 在包發送到 網絡上之前,我們可以對它進行加密。雖然加密過程要求適當改變目前的網絡環境,但它將保證數據的完整性和真實性。
·進行包過濾:可以配置路由器使其能夠拒絕網絡外部與本網內具有相同IP地址的連接請求。而且,當包的IP地址不在本網內時,路由器不應該把本網主機的包發送出去。
有一點要注意,路由器雖然可以封鎖試圖到達內部網絡的特定類型的包。但它們也是通過分析測試源地址來實現操作的。因此,它們僅能對聲稱是來自于內部網絡的外來包進行過濾,若你的網絡存在外部可信任主機,那么路由器將無法防止別人冒充這些主機進行IP欺騙。
ARP欺騙攻擊
在局域網中,通信前必須通過ARP協議來完成IP地址轉換為第二層物理地址(即MAC地址)。ARP協議對網絡安全具有重要的意義,但是當初ARP方式的設計沒有考慮到過多的安全問題,給ARP留下很多的隱患,ARP欺騙就是其中一個例子。而ARP欺騙攻擊就是利用該協議漏洞,通過偽造IP地址和MAC地址實現ARP欺騙的攻擊技術。
我們假設有三臺主機A,B,C位于同一個交換式局域網中,監聽者處于主機A,而主機B,C正在通信。現在A希望能嗅探到B->C的數據, 于是A就可以偽裝成C對B做ARP欺騙——向B發送偽造的ARP應答包,應答包中IP地址為C的IP地址而MAC地址為A的MAC地址。 這個應答包會刷新B的ARP緩存,讓B認為A就是C,說詳細點,就是讓B認為C的IP地址映射到的MAC地址為主機A的MAC地址。 這樣,B想要發送給C的數據實際上卻發送給了A,就達到了嗅探的目的。我們在嗅探到數據后,還必須將此數據轉發給C, 這樣就可以保證B,C的通信不被中斷。
以上就是基于ARP欺騙的嗅探基本原理,在這種嗅探方法中,嗅探者A實際上是插入到了B->C中, B的數據先發送給了A,然后再由A轉發給C,其數據傳輸關系如下所示:
B----->A----->C
B<----A<------C
于是A就成功于截獲到了它B發給C的數據。上面這就是一個簡單的ARP欺騙的例子。
ARP欺騙攻擊有兩種可能,一種是對路由器ARP表的欺騙;另一種是對內網電腦ARP表的欺騙,當然也可能兩種攻擊同時進行。但不管怎么樣,欺騙發送后,電腦和路由器之間發送的數據可能就被送到錯誤的MAC地址上。
防范ARP欺騙攻擊可以采取如下措施:
·在客戶端使用arp命令綁定網關的真實MAC地址命令
·在交換機上做端口與MAC地址的靜態綁定。
·在路由器上做IP地址與MAC地址的靜態綁定
·使用“ARP SERVER”按一定的時間間隔廣播網段內所有主機的正確IP-MAC映射表。
DNS欺騙攻擊
DNS欺騙即域名信息欺騙是最常見的DNS安全問題。當一個DNS服務器掉入陷阱,使用了來自一個惡意DNS服務器的錯誤信息,那么該DNS服務器就被欺騙了。DNS欺騙會使那些易受攻擊的DNS服務器產生許多安全問題,例如:將用戶引導到錯誤的互聯網站點,或者發送一個電子郵件到一個未經授權的郵件服務器。網絡攻擊者通常通過以下幾種方法進行DNS欺騙。
(1)緩存感染
黑客會熟練的使用DNS請求,將數據放入一個沒有設防的DNS服務器的緩存當中。這些緩存信息會在客戶進行DNS訪問時返回給客戶,從而將客戶引導到入侵者所設置的運行木馬的Web服務器或郵件服務器上,然后黑客從這些服務器上獲取用戶信息。
(2)DNS信息劫持
入侵者通過監聽客戶端和DNS服務器的對話,通過猜測服務器響應給客戶端的DNS查詢ID。每個DNS報文包括一個相關聯的16位ID號,DNS服務器根據這個ID號獲取請求源位置。黑客在DNS服務器之前將虛假的響應交給用戶,從而欺騙客戶端去訪問惡意的網站。
(3)DNS重定向
攻擊者能夠將DNS名稱查詢重定向到惡意DNS服務器。這樣攻擊者可以獲得DNS服務器的寫權限。
防范DNS欺騙攻擊可采取如下措施
·直接用IP訪問重要的服務,這樣至少可以避開DNS欺騙攻擊。但這需要你記住要訪問的IP地址。
·加密所有對外的數據流,對服務器來說就是盡量使用SSH之類的有加密支持的協議,對一般用戶應該用PGP之類的軟件加密所有發到網絡上的數據。這也并不是怎么容易的事情。
源路由欺騙攻擊
通過指定路由,以假冒身份與其他主機進行合法通信或發送假報文,使受攻擊主機出現錯誤動作,這就是源路由攻擊。在通常情況下,信息包從起點到終點走過的路徑是由位于此兩點間的路由器決定的,數據包本身只知道去往何處,但不知道該如何去。源路由可使信息包的發送者將此數據包要經過的路徑寫在數據包里,使數據包循著一個對方不可預料的路徑到達目的主機。下面仍以上述源IP欺騙中的例子給出這種攻擊的形式:
主機A享有主機B的某些特權,主機X想冒充主機A從主機B(假設IP為aaa.bbb.ccc.ddd)獲得某些服務。首先,攻擊者修改距離X最近的路由器,使得到達此路由器且包含目的地址aaa.bbb.ccc.ddd的數據包以主機X所在的網絡為目的地;然后,攻擊者X利用IP欺騙向主機B發送源路由(指定最近的路由器)數據包。當B回送數據包時,就傳送到被更改過的路由器。這就使一個入侵者可以假冒一個主機的名義通過一個特殊的路徑來獲得某些被保護數據。
為了防范源路由欺騙攻擊,一般采用下面兩種措施:
·對付這種攻擊最好的辦法是配置好路由器,使它拋棄那些由外部網進來的卻聲稱是內部主機的報文。
·在路由器上關閉源路由。用命令no ip source-route。
IP欺騙技術就是通過偽造某臺主機的IP地址騙取特權從而進行攻擊的技術。許多應用程序認為如果數據包能夠使其自身沿著路由到達目的地,而且應答包也可以回到源地,那么源IP地址一定是有效的,而這正是使源IP地址欺騙攻擊成為可能的前提。
假設同一網段內有兩臺主機A、B,另一網段內有主機X。B 授予A某些特權。X 為獲得與A相同的特權,所做欺騙攻擊如下:首先,X冒充A,向主機 B發送一個帶有隨機序列號的SYN包。主機B響應,回送一個應答包給A,該應答號等于原序 列號加1。然而,此時主機A已被主機X利用拒絕服務攻擊 “淹沒”了,導致主機A服務失效。結果,主機A將B發來的包丟棄。為了完成三次握手,X還需要向B回送一個應答包,其應答號等于B向A發送數據 包的序列號加1。此時主機X 并不能檢測到主機B的數據包(因為不在同一網段),只有利用TCP順序號估算法來預測應答包的順序號并將其發送給目標機B。如果猜測正確,B則認為收到的ACK是來自內部主機A。此時,X即獲得了主機A在主機B上所享有的特權,并開始對這些服務實施攻擊。
要防止源IP地址欺騙行為,可以采取以下措施來盡可能地保護系統免受這類攻擊:
·拋棄基于地址的信任策略: 阻止這類攻擊的一種非常容易的辦法就是放棄以地址為基礎的驗證。不允許r類遠程調用命令的使用;刪除.rhosts 文件;清空/etc/hosts.equiv 文件。這將迫使所有用戶使用其它遠程通信手段,如telnet、ssh、skey等等。
·使用加密方法: 在包發送到 網絡上之前,我們可以對它進行加密。雖然加密過程要求適當改變目前的網絡環境,但它將保證數據的完整性和真實性。
·進行包過濾:可以配置路由器使其能夠拒絕網絡外部與本網內具有相同IP地址的連接請求。而且,當包的IP地址不在本網內時,路由器不應該把本網主機的包發送出去。
有一點要注意,路由器雖然可以封鎖試圖到達內部網絡的特定類型的包。但它們也是通過分析測試源地址來實現操作的。因此,它們僅能對聲稱是來自于內部網絡的外來包進行過濾,若你的網絡存在外部可信任主機,那么路由器將無法防止別人冒充這些主機進行IP欺騙。
ARP欺騙攻擊
在局域網中,通信前必須通過ARP協議來完成IP地址轉換為第二層物理地址(即MAC地址)。ARP協議對網絡安全具有重要的意義,但是當初ARP方式的設計沒有考慮到過多的安全問題,給ARP留下很多的隱患,ARP欺騙就是其中一個例子。而ARP欺騙攻擊就是利用該協議漏洞,通過偽造IP地址和MAC地址實現ARP欺騙的攻擊技術。
我們假設有三臺主機A,B,C位于同一個交換式局域網中,監聽者處于主機A,而主機B,C正在通信。現在A希望能嗅探到B->C的數據, 于是A就可以偽裝成C對B做ARP欺騙——向B發送偽造的ARP應答包,應答包中IP地址為C的IP地址而MAC地址為A的MAC地址。 這個應答包會刷新B的ARP緩存,讓B認為A就是C,說詳細點,就是讓B認為C的IP地址映射到的MAC地址為主機A的MAC地址。 這樣,B想要發送給C的數據實際上卻發送給了A,就達到了嗅探的目的。我們在嗅探到數據后,還必須將此數據轉發給C, 這樣就可以保證B,C的通信不被中斷。
以上就是基于ARP欺騙的嗅探基本原理,在這種嗅探方法中,嗅探者A實際上是插入到了B->C中, B的數據先發送給了A,然后再由A轉發給C,其數據傳輸關系如下所示:
B----->A----->C
B<----A<------C
于是A就成功于截獲到了它B發給C的數據。上面這就是一個簡單的ARP欺騙的例子。
ARP欺騙攻擊有兩種可能,一種是對路由器ARP表的欺騙;另一種是對內網電腦ARP表的欺騙,當然也可能兩種攻擊同時進行。但不管怎么樣,欺騙發送后,電腦和路由器之間發送的數據可能就被送到錯誤的MAC地址上。
防范ARP欺騙攻擊可以采取如下措施:
·在客戶端使用arp命令綁定網關的真實MAC地址命令
·在交換機上做端口與MAC地址的靜態綁定。
·在路由器上做IP地址與MAC地址的靜態綁定
·使用“ARP SERVER”按一定的時間間隔廣播網段內所有主機的正確IP-MAC映射表。
DNS欺騙攻擊
DNS欺騙即域名信息欺騙是最常見的DNS安全問題。當一個DNS服務器掉入陷阱,使用了來自一個惡意DNS服務器的錯誤信息,那么該DNS服務器就被欺騙了。DNS欺騙會使那些易受攻擊的DNS服務器產生許多安全問題,例如:將用戶引導到錯誤的互聯網站點,或者發送一個電子郵件到一個未經授權的郵件服務器。網絡攻擊者通常通過以下幾種方法進行DNS欺騙。
(1)緩存感染
黑客會熟練的使用DNS請求,將數據放入一個沒有設防的DNS服務器的緩存當中。這些緩存信息會在客戶進行DNS訪問時返回給客戶,從而將客戶引導到入侵者所設置的運行木馬的Web服務器或郵件服務器上,然后黑客從這些服務器上獲取用戶信息。
(2)DNS信息劫持
入侵者通過監聽客戶端和DNS服務器的對話,通過猜測服務器響應給客戶端的DNS查詢ID。每個DNS報文包括一個相關聯的16位ID號,DNS服務器根據這個ID號獲取請求源位置。黑客在DNS服務器之前將虛假的響應交給用戶,從而欺騙客戶端去訪問惡意的網站。
(3)DNS重定向
攻擊者能夠將DNS名稱查詢重定向到惡意DNS服務器。這樣攻擊者可以獲得DNS服務器的寫權限。
防范DNS欺騙攻擊可采取如下措施
·直接用IP訪問重要的服務,這樣至少可以避開DNS欺騙攻擊。但這需要你記住要訪問的IP地址。
·加密所有對外的數據流,對服務器來說就是盡量使用SSH之類的有加密支持的協議,對一般用戶應該用PGP之類的軟件加密所有發到網絡上的數據。這也并不是怎么容易的事情。
源路由欺騙攻擊
通過指定路由,以假冒身份與其他主機進行合法通信或發送假報文,使受攻擊主機出現錯誤動作,這就是源路由攻擊。在通常情況下,信息包從起點到終點走過的路徑是由位于此兩點間的路由器決定的,數據包本身只知道去往何處,但不知道該如何去。源路由可使信息包的發送者將此數據包要經過的路徑寫在數據包里,使數據包循著一個對方不可預料的路徑到達目的主機。下面仍以上述源IP欺騙中的例子給出這種攻擊的形式:
主機A享有主機B的某些特權,主機X想冒充主機A從主機B(假設IP為aaa.bbb.ccc.ddd)獲得某些服務。首先,攻擊者修改距離X最近的路由器,使得到達此路由器且包含目的地址aaa.bbb.ccc.ddd的數據包以主機X所在的網絡為目的地;然后,攻擊者X利用IP欺騙向主機B發送源路由(指定最近的路由器)數據包。當B回送數據包時,就傳送到被更改過的路由器。這就使一個入侵者可以假冒一個主機的名義通過一個特殊的路徑來獲得某些被保護數據。
為了防范源路由欺騙攻擊,一般采用下面兩種措施:
·對付這種攻擊最好的辦法是配置好路由器,使它拋棄那些由外部網進來的卻聲稱是內部主機的報文。
·在路由器上關閉源路由。用命令no ip source-route。
一、基礎知識
在介紹木馬的原理之前有一些木馬構成的基礎知識我們要事先加以說明,因為下面有很多地方會提到這些內容。
一個完整的木馬系統由硬件部分、軟件部分和具體連接部分組成。
1.硬件部分
建立木馬連接所必須的硬件實體。
控制端:對服務端進行遠程控制的一方。
服務端:被控制端遠程控制的一方。
INTERNET:控制端對服務端進行遠程控制,數據傳輸的網絡載體。
2.軟件部分
實現遠程控制所必須的軟件程序。
控制端程序:控制端用以遠程控制服務端的程序。
木馬程序:潛入服務端內部,獲取其操作權限的程序。
木馬配置程序:設置木馬程序的端口號,觸發條件,木馬名稱等,使其在服務端藏得更隱蔽的程序。
3.具體連接部分
通過INTERNET在服務端和控制端之間建立一條木馬通道所必須的元素。
控制端IP,服務端IP:即控制端,服務端的網絡地址,也是木馬進行數據傳輸的目的地。
控制端端口,木馬端口:即控制端,服務端的數據入口,通過這個入口,數據可直達控制端程序或木馬程序。
二、特洛伊木馬的攻擊步驟
用木馬這種黑客工具進行網絡入侵,從過程上看大致可分為六步,下面我們就按這六步來詳細闡述木馬的攻擊原理。
1. 配置木馬
一般來說一個設計成熟的木馬都有木馬配置程序,從具體的配置內容看,主要是為了實現以下兩方面功能:
(1)木馬偽裝:木馬配置程序為了在服務端盡可能好的隱藏木馬,會采用多種偽裝手段,如修改圖標、捆綁文件、定制端口、自我銷毀等等。
(2)信息反饋:木馬配置程序將就信息反饋的方式或地址進行設置,如設置信息反饋的郵件地址、IRC號、ICQ號等。
2. 傳播木馬
(1)傳播方式
木馬的傳播方式主要有兩種:一種是通過E-MAIL,控制端將木馬程序以附件的形式夾在郵件中發送出去,收信人只要打開附件系統就會感染木馬;另一種是軟件下載,一些非正規的網站以提供軟件下載為名義,將木馬捆綁在軟件安裝程序上,下載后,只要一運行這些程序,木馬就會自動安裝。
(2)偽裝方式
鑒于木馬的危害性,很多人對木馬知識還是有一定了解的,這對木馬的傳播起了一定的抑制作用,這是木馬設計者所不愿見到的。因此他們開發了多種功能來偽裝木馬,以達到降低用戶警覺,欺騙用戶的目的。一般來說有以下幾種:
◆修改圖標
也許你會在E-MAIL的附件中看到一個很平常的文本圖標,但是我不得不告訴你,這也有可能是個木馬程序,現在已經有木馬可以將木馬服務端程序的圖標改成HTML、TXT、ZIP等各種文件的圖標,這有相當大的迷惑性,但是目前提供這種功能的木馬還不多見,并且這種偽裝也不是無懈可擊的,所以不必整天提心吊膽、疑神疑鬼的。
◆捆綁文件
這種偽裝手段是將木馬捆綁到一個安裝程序上,當安裝程序運行時,木馬在用戶毫無察覺的情況下,偷偷的進入了系統。至于被捆綁的文件一般是可執行文件,即EXE、COM一類的文件。
◆出錯顯示
有一定木馬知識的人都知道,如果打開一個文件,沒有任何反應,這很可能就是個木馬程序,木馬的設計者也意識到了這個缺陷,所以已經有木馬提供了一個叫做出錯顯示的功能。當服務端用戶打開木馬程序時,會彈出一個錯誤提示框——這當然是假的,錯誤內容可自由定義,大多會定制成一些諸如“文件已破壞,無法打開的!”之類的信息,當服務端用戶信以為真時,木馬卻悄悄侵入了系統。
◆定制端口
很多老式的木馬端口都是固定的,這給判斷是否感染了木馬帶來了方便,只要查一下特定的端口就知道感染了什么木馬,所以現在很多新式的木馬都加入了定制端口的功能,控制端用戶可以在1024——65535之間任選一個端口作為木馬端口。一般不選1024以下的端口,這樣就給判斷所感染木馬類型帶來了麻煩。
◆自我銷毀
這項功能是為了彌補木馬的一個缺陷。我們知道當服務端用戶打開含有木馬的文件后,木馬會將自己拷貝到WINDOWS的系統文件的C:\WINDOWS或C:\WINDOWS\SYSTEM目錄下,一般來說原木馬文件和系統文件夾中的木馬文件的大小是一樣的,捆綁文件的木馬除外。那么中了木馬的朋友只要在近來收到的信件和下載的軟件中找到原木馬文件,然后根據原木馬的大小去系統文件夾找相同大小的文件, 判斷一下哪個是木馬就行了。而木馬的自我銷毀功能是指安裝完木馬后,原木馬文件將自動銷毀,這樣服務端用戶就很難找到木馬的來源,在沒有查殺木馬的工具幫助下,就很難刪除木馬了。
◆木馬更名
安裝到系統文件夾中的木馬的文件名一般是固定的,那么只要根據一些查殺木馬的文章,按圖索驥在系統文件夾查找特定的文件,就可以斷定中了什么木馬。所以現在有很多木馬都允許控 制端用戶自由定制安裝后的木馬文件名,這樣很難判斷所感染的木馬類型了。
3.運行木馬
服務端用戶運行木馬或捆綁木馬的程序后,木馬就會自動進行安裝。首先將自身拷貝到WINDOWS的系統文件夾中C:\WINDOWS或C:\WINDOWS\SYSTEM目錄下。然后在注冊表、啟動組、非啟動組中設置好木馬的觸發條件,這樣木馬的安裝就完成了。安裝后就可以啟動木馬了。
由觸發條件激活木馬
觸發條件是指啟動木馬的條件,大致出現在下面八個地方:
◆注冊表
打開HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\下的五個以Run和RunServices主鍵,在其中尋找可能是啟動木馬的鍵值。
◆WIN.INI
C:\WINDOWS目錄下有一個配置文件win.ini,用文本方式打開,在windows字段中有啟動命令load=和run=,在一般情況下是空白的,如果有啟動程序,可能是木馬。
◆SYSTEM.INI
C:\WINDOWS目錄下有個配置文件system.ini,用文本方式打開,在386Enh、mic、drivers32中有命令行,在其中尋找木馬的啟動命令。
◆Autoexec.bat和Config.sys
在C盤根目錄下的這兩個文件也可以啟動木馬。但這種加載方式一般都需要控制端用戶與服務端建立連接后,將已添加木馬啟動命令的同名文件上傳到服務端覆蓋這兩個文件才行。
◆*.INI
即應用程序的啟動配置文件,控制端利用這些文件能啟動程序的特點,將制作好的帶有木馬啟動命令的同名文件上傳到服務端覆蓋這同名文件,這樣就可以達到啟動木馬的目的了。
◆注冊表
打開HKEY_CLASSES_ROOT\文件類型\shell\open\command主鍵,查看其鍵值。舉個例子,國產木馬“冰河”就是修改HKEY_CLASSES_ROOT\txtfile\shell\open\command下的鍵值,將“C:\WINDOWS \NOTEPAD.EXE %1”改為“C:\WINDOWS\SYSTEM\SYSEXPLR.EXE %1”,這時你雙擊一個TXT文件后,原本應用NOTEPAD打開文件的,現在卻變成啟動木馬程序了。還要說明的是不光是TXT文件,通過修改HTML、EXE、ZIP等文件的啟動命令的鍵值都可以啟動木馬,不同之處只在于“文件類型”這個主鍵的差別,TXT是txtfile,ZIP是WINZIP,大家可以試著去找一下。
◆捆綁文件
實現這種觸發條件首先要控制端和服務端通過木馬建立連接,然后控制端用戶用工具軟件將木馬文件和某一應用程序捆綁在一起,然后上傳到服務端覆蓋原文件,這樣即使木馬被刪除了,只要運行捆綁了木馬的應用程序,木馬又會被安裝上去了。
◆啟動菜單
在“開始—程序—啟動”選項下也可能有木馬的觸發條件。
在介紹木馬的原理之前有一些木馬構成的基礎知識我們要事先加以說明,因為下面有很多地方會提到這些內容。
一個完整的木馬系統由硬件部分、軟件部分和具體連接部分組成。
1.硬件部分
建立木馬連接所必須的硬件實體。
控制端:對服務端進行遠程控制的一方。
服務端:被控制端遠程控制的一方。
INTERNET:控制端對服務端進行遠程控制,數據傳輸的網絡載體。
2.軟件部分
實現遠程控制所必須的軟件程序。
控制端程序:控制端用以遠程控制服務端的程序。
木馬程序:潛入服務端內部,獲取其操作權限的程序。
木馬配置程序:設置木馬程序的端口號,觸發條件,木馬名稱等,使其在服務端藏得更隱蔽的程序。
3.具體連接部分
通過INTERNET在服務端和控制端之間建立一條木馬通道所必須的元素。
控制端IP,服務端IP:即控制端,服務端的網絡地址,也是木馬進行數據傳輸的目的地。
控制端端口,木馬端口:即控制端,服務端的數據入口,通過這個入口,數據可直達控制端程序或木馬程序。
二、特洛伊木馬的攻擊步驟
用木馬這種黑客工具進行網絡入侵,從過程上看大致可分為六步,下面我們就按這六步來詳細闡述木馬的攻擊原理。
1. 配置木馬
一般來說一個設計成熟的木馬都有木馬配置程序,從具體的配置內容看,主要是為了實現以下兩方面功能:
(1)木馬偽裝:木馬配置程序為了在服務端盡可能好的隱藏木馬,會采用多種偽裝手段,如修改圖標、捆綁文件、定制端口、自我銷毀等等。
(2)信息反饋:木馬配置程序將就信息反饋的方式或地址進行設置,如設置信息反饋的郵件地址、IRC號、ICQ號等。
2. 傳播木馬
(1)傳播方式
木馬的傳播方式主要有兩種:一種是通過E-MAIL,控制端將木馬程序以附件的形式夾在郵件中發送出去,收信人只要打開附件系統就會感染木馬;另一種是軟件下載,一些非正規的網站以提供軟件下載為名義,將木馬捆綁在軟件安裝程序上,下載后,只要一運行這些程序,木馬就會自動安裝。
(2)偽裝方式
鑒于木馬的危害性,很多人對木馬知識還是有一定了解的,這對木馬的傳播起了一定的抑制作用,這是木馬設計者所不愿見到的。因此他們開發了多種功能來偽裝木馬,以達到降低用戶警覺,欺騙用戶的目的。一般來說有以下幾種:
◆修改圖標
也許你會在E-MAIL的附件中看到一個很平常的文本圖標,但是我不得不告訴你,這也有可能是個木馬程序,現在已經有木馬可以將木馬服務端程序的圖標改成HTML、TXT、ZIP等各種文件的圖標,這有相當大的迷惑性,但是目前提供這種功能的木馬還不多見,并且這種偽裝也不是無懈可擊的,所以不必整天提心吊膽、疑神疑鬼的。
◆捆綁文件
這種偽裝手段是將木馬捆綁到一個安裝程序上,當安裝程序運行時,木馬在用戶毫無察覺的情況下,偷偷的進入了系統。至于被捆綁的文件一般是可執行文件,即EXE、COM一類的文件。
◆出錯顯示
有一定木馬知識的人都知道,如果打開一個文件,沒有任何反應,這很可能就是個木馬程序,木馬的設計者也意識到了這個缺陷,所以已經有木馬提供了一個叫做出錯顯示的功能。當服務端用戶打開木馬程序時,會彈出一個錯誤提示框——這當然是假的,錯誤內容可自由定義,大多會定制成一些諸如“文件已破壞,無法打開的!”之類的信息,當服務端用戶信以為真時,木馬卻悄悄侵入了系統。
◆定制端口
很多老式的木馬端口都是固定的,這給判斷是否感染了木馬帶來了方便,只要查一下特定的端口就知道感染了什么木馬,所以現在很多新式的木馬都加入了定制端口的功能,控制端用戶可以在1024——65535之間任選一個端口作為木馬端口。一般不選1024以下的端口,這樣就給判斷所感染木馬類型帶來了麻煩。
◆自我銷毀
這項功能是為了彌補木馬的一個缺陷。我們知道當服務端用戶打開含有木馬的文件后,木馬會將自己拷貝到WINDOWS的系統文件的C:\WINDOWS或C:\WINDOWS\SYSTEM目錄下,一般來說原木馬文件和系統文件夾中的木馬文件的大小是一樣的,捆綁文件的木馬除外。那么中了木馬的朋友只要在近來收到的信件和下載的軟件中找到原木馬文件,然后根據原木馬的大小去系統文件夾找相同大小的文件, 判斷一下哪個是木馬就行了。而木馬的自我銷毀功能是指安裝完木馬后,原木馬文件將自動銷毀,這樣服務端用戶就很難找到木馬的來源,在沒有查殺木馬的工具幫助下,就很難刪除木馬了。
◆木馬更名
安裝到系統文件夾中的木馬的文件名一般是固定的,那么只要根據一些查殺木馬的文章,按圖索驥在系統文件夾查找特定的文件,就可以斷定中了什么木馬。所以現在有很多木馬都允許控 制端用戶自由定制安裝后的木馬文件名,這樣很難判斷所感染的木馬類型了。
3.運行木馬
服務端用戶運行木馬或捆綁木馬的程序后,木馬就會自動進行安裝。首先將自身拷貝到WINDOWS的系統文件夾中C:\WINDOWS或C:\WINDOWS\SYSTEM目錄下。然后在注冊表、啟動組、非啟動組中設置好木馬的觸發條件,這樣木馬的安裝就完成了。安裝后就可以啟動木馬了。
由觸發條件激活木馬
觸發條件是指啟動木馬的條件,大致出現在下面八個地方:
◆注冊表
打開HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\下的五個以Run和RunServices主鍵,在其中尋找可能是啟動木馬的鍵值。
◆WIN.INI
C:\WINDOWS目錄下有一個配置文件win.ini,用文本方式打開,在windows字段中有啟動命令load=和run=,在一般情況下是空白的,如果有啟動程序,可能是木馬。
◆SYSTEM.INI
C:\WINDOWS目錄下有個配置文件system.ini,用文本方式打開,在386Enh、mic、drivers32中有命令行,在其中尋找木馬的啟動命令。
◆Autoexec.bat和Config.sys
在C盤根目錄下的這兩個文件也可以啟動木馬。但這種加載方式一般都需要控制端用戶與服務端建立連接后,將已添加木馬啟動命令的同名文件上傳到服務端覆蓋這兩個文件才行。
◆*.INI
即應用程序的啟動配置文件,控制端利用這些文件能啟動程序的特點,將制作好的帶有木馬啟動命令的同名文件上傳到服務端覆蓋這同名文件,這樣就可以達到啟動木馬的目的了。
◆注冊表
打開HKEY_CLASSES_ROOT\文件類型\shell\open\command主鍵,查看其鍵值。舉個例子,國產木馬“冰河”就是修改HKEY_CLASSES_ROOT\txtfile\shell\open\command下的鍵值,將“C:\WINDOWS \NOTEPAD.EXE %1”改為“C:\WINDOWS\SYSTEM\SYSEXPLR.EXE %1”,這時你雙擊一個TXT文件后,原本應用NOTEPAD打開文件的,現在卻變成啟動木馬程序了。還要說明的是不光是TXT文件,通過修改HTML、EXE、ZIP等文件的啟動命令的鍵值都可以啟動木馬,不同之處只在于“文件類型”這個主鍵的差別,TXT是txtfile,ZIP是WINZIP,大家可以試著去找一下。
◆捆綁文件
實現這種觸發條件首先要控制端和服務端通過木馬建立連接,然后控制端用戶用工具軟件將木馬文件和某一應用程序捆綁在一起,然后上傳到服務端覆蓋原文件,這樣即使木馬被刪除了,只要運行捆綁了木馬的應用程序,木馬又會被安裝上去了。
◆啟動菜單
在“開始—程序—啟動”選項下也可能有木馬的觸發條件。
口令攻擊的主要方式及相關防護手段
[ 2007-03-25 03:32:16 | 作者: sun ]
口令是網絡系統的第一道防線。當前的網絡系統都是通過口令來驗證用戶身份、實施訪問控制的。口令攻擊是指黑客以口令為攻擊目標,破解合法用戶的口令,或避開口令驗證過程,然后冒充合法用戶潛入目標網絡系統,奪取目標系統控制權的過程。
如果口令攻擊成功黑客進入了目標網絡系統,他就能夠隨心所欲地竊取、破壞和篡改被侵入方的信息,直至完全控制被侵入方。所以,口令攻擊是黑客實施網絡攻擊的最基本、最重要、最有效的方法之一。
口令攻擊的主要方法
1、社會工程學(social Engineering),通過人際交往這一非技術手段以欺騙、套取的方式來獲得口令。避免此類攻擊的對策是加強用戶意識。
2、猜測攻擊。首先使用口令猜測程序進行攻擊。口令猜測程序往往根據用戶定義口令的習慣猜測用戶口令,像名字縮寫、生日、寵物名、部門名等。在詳細了解用戶的社會背景之后,黑客可以列舉出幾百種可能的口令,并在很短的時間內就可以完成猜測攻擊。
3、字典攻擊。如果猜測攻擊不成功,入侵者會繼續擴大攻擊范圍,對所有英文單詞進行嘗試,程序將按序取出一個又一個的單詞,進行一次又一次嘗試,直到成功。據有的傳媒報導,對于一個有8萬個英文單詞的集合來說,入侵者不到一分半鐘就可試完。所以,如果用戶的口令不太長或是單詞、短語,那么很快就會被破譯出來。
4、窮舉攻擊。如果字典攻擊仍然不能夠成功,入侵者會采取窮舉攻擊。一般從長度為1的口令開始,按長度遞增進行嘗試攻擊。由于人們往往偏愛簡單易記的口令,窮舉攻擊的成功率很高。如果每千分之一秒檢查一個口令,那么86%的口令可以在一周內破譯出來。
5、混合攻擊,結合了字典攻擊和窮舉攻擊,先字典攻擊,再暴力攻擊。
避免以上四類攻擊的對策是加強口令策略。
6、直接破解系統口令文件。所有的攻擊都不能夠奏效,入侵者會尋找目標主機的安全漏洞和薄弱環節,飼機偷走存放系統口令的文件,然后破譯加密的口令,以便冒充合法用戶訪問這臺主機。
7:網絡嗅探(sniffer),通過嗅探器在局域網內嗅探明文傳輸的口令字符串。避免此類攻擊的對策是網絡傳輸采用加密傳輸的方式進行。
8:鍵盤記錄,在目標系統中安裝鍵盤記錄后門,記錄操作員輸入的口令字符串,如很多間諜軟件,木馬等都可能會盜取你的口述。
9:其他攻擊方式,中間人攻擊、重放攻擊、生日攻擊、時間攻擊。
避免以上幾類攻擊的對策是加強用戶安全意識,采用安全的密碼系統,注意系統安全,避免感染間諜軟件、木馬等惡意程序。
口令攻擊的防護手段
要有效防范口令攻擊,我們要選擇一個好口令,并且要注意保護口令的安全。
1、好口令是防范口令攻擊的最基本、最有效的方法。最好采用字母、數字、還有標點符號、特殊字符的組合,同時有大小寫字母,長度最好達到8個以上,最好容易記憶,不必把口令寫下來,絕對不要用自己或親友的生日、手機號碼等易于被他人獲知的信息作密碼。
2、注意保護口令安全。不要將口令記在紙上或存儲于計算機文件中;最好不要告訴別人你的口令;不要在不同的系統中使用相同的口令;在輸入口令時應確保無人在身邊窺視;在公共上網場所如網吧等處最好先確認系統是否安全;定期更改口令,至少六個月更改一次,這會使自己遭受口令攻擊的風險降到最低,要永遠不要對自己的口令過于自信.
如果口令攻擊成功黑客進入了目標網絡系統,他就能夠隨心所欲地竊取、破壞和篡改被侵入方的信息,直至完全控制被侵入方。所以,口令攻擊是黑客實施網絡攻擊的最基本、最重要、最有效的方法之一。
口令攻擊的主要方法
1、社會工程學(social Engineering),通過人際交往這一非技術手段以欺騙、套取的方式來獲得口令。避免此類攻擊的對策是加強用戶意識。
2、猜測攻擊。首先使用口令猜測程序進行攻擊。口令猜測程序往往根據用戶定義口令的習慣猜測用戶口令,像名字縮寫、生日、寵物名、部門名等。在詳細了解用戶的社會背景之后,黑客可以列舉出幾百種可能的口令,并在很短的時間內就可以完成猜測攻擊。
3、字典攻擊。如果猜測攻擊不成功,入侵者會繼續擴大攻擊范圍,對所有英文單詞進行嘗試,程序將按序取出一個又一個的單詞,進行一次又一次嘗試,直到成功。據有的傳媒報導,對于一個有8萬個英文單詞的集合來說,入侵者不到一分半鐘就可試完。所以,如果用戶的口令不太長或是單詞、短語,那么很快就會被破譯出來。
4、窮舉攻擊。如果字典攻擊仍然不能夠成功,入侵者會采取窮舉攻擊。一般從長度為1的口令開始,按長度遞增進行嘗試攻擊。由于人們往往偏愛簡單易記的口令,窮舉攻擊的成功率很高。如果每千分之一秒檢查一個口令,那么86%的口令可以在一周內破譯出來。
5、混合攻擊,結合了字典攻擊和窮舉攻擊,先字典攻擊,再暴力攻擊。
避免以上四類攻擊的對策是加強口令策略。
6、直接破解系統口令文件。所有的攻擊都不能夠奏效,入侵者會尋找目標主機的安全漏洞和薄弱環節,飼機偷走存放系統口令的文件,然后破譯加密的口令,以便冒充合法用戶訪問這臺主機。
7:網絡嗅探(sniffer),通過嗅探器在局域網內嗅探明文傳輸的口令字符串。避免此類攻擊的對策是網絡傳輸采用加密傳輸的方式進行。
8:鍵盤記錄,在目標系統中安裝鍵盤記錄后門,記錄操作員輸入的口令字符串,如很多間諜軟件,木馬等都可能會盜取你的口述。
9:其他攻擊方式,中間人攻擊、重放攻擊、生日攻擊、時間攻擊。
避免以上幾類攻擊的對策是加強用戶安全意識,采用安全的密碼系統,注意系統安全,避免感染間諜軟件、木馬等惡意程序。
口令攻擊的防護手段
要有效防范口令攻擊,我們要選擇一個好口令,并且要注意保護口令的安全。
1、好口令是防范口令攻擊的最基本、最有效的方法。最好采用字母、數字、還有標點符號、特殊字符的組合,同時有大小寫字母,長度最好達到8個以上,最好容易記憶,不必把口令寫下來,絕對不要用自己或親友的生日、手機號碼等易于被他人獲知的信息作密碼。
2、注意保護口令安全。不要將口令記在紙上或存儲于計算機文件中;最好不要告訴別人你的口令;不要在不同的系統中使用相同的口令;在輸入口令時應確保無人在身邊窺視;在公共上網場所如網吧等處最好先確認系統是否安全;定期更改口令,至少六個月更改一次,這會使自己遭受口令攻擊的風險降到最低,要永遠不要對自己的口令過于自信.
對網絡安全技術及其方案對策的分析
[ 2007-03-25 03:32:03 | 作者: sun ]
內部網
目前的局域網基本上都采用以廣播為技術基礎的以太網,任何兩個節點之間的通信數據包,不僅為這兩個節點的網卡所接收,也同時為處在同一以太網上的任何一個節點的網卡所截取。因此,黑客只要接入以太網上的任一節點進行偵聽,就可以捕獲發生在這個以太網上的所有數據包,對其進行解包分析,從而竊取關鍵信息,這就是以太網所固有的安全隱患。
A.局域網安全
事實上,Internet上許多免費的黑客工具,如SATAN、ISS、NETCAT等等,都把以太網偵聽作為其最基本的手段。
當前,局域網安全的解決辦法有以下幾種:
1.網絡分段
網絡分段通常被認為是控制網絡廣播風暴的一種基本手段,但其實也是保證網絡安全的一項重要措施。其目的就是將非法用戶與敏感的網絡資源相互隔離,從而防止可能的非法偵聽,網絡分段可分為物理分段和邏輯分段兩種方式。
目前,海關的局域網大多采用以交換機為中心、路由器為邊界的網絡格局,應重點挖掘中心交換機的訪問控制功能和三層交換功能,綜合應用物理分段與邏輯分段兩種方法,來實現對局域網的安全控制。例如:在海關系統中普遍使用的DEC MultiSwitch 900的入侵檢測功能,其實就是一種基于MAC地址的訪問控制,也就是上述的基于數據鏈路層的物理分段。
2.以交換式集線器代替共享式集線器
對局域網的中心交換機進行網絡分段后,以太網偵聽的危險仍然存在。這是因為網絡最終用戶的接入往往是通過分支集線器而不是中心交換機,而使用最廣泛的分支集線器通常是共享式集線器。這樣,當用戶與主機進行數據通信時,兩臺機器之間的數據包(稱為單播包Unicast Packet)還是會被同一臺集線器上的其他用戶所偵聽。一種很危險的情況是:用戶TELNET到一臺主機上,由于TELNET程序本身缺乏加密功能,用戶所鍵入的每一個字符(包括用戶名、密碼等重要信息),都將被明文發送,這就給黑客提供了機會。
因此,應該以交換式集線器代替共享式集線器,使單播包僅在兩個節點之間傳送,從而防止非法偵聽。當然,交換式集線器只能控制單播包而無法控制廣播包(Broadcast Packet)和多播包(Multicast Packet)。所幸的是,廣播包和多播包內的關鍵信息,要遠遠少于單播包。
3.VLAN的劃分
為了克服以太網的廣播問題,除了上述方法外,還可以運用VLAN(虛擬局域網)技術,將以太網通信變為點到點通信,防止大部分基于網絡偵聽的入侵。
目前的VLAN技術主要有三種:基于交換機端口的VLAN、基于節點MAC地址的VLAN和基于應用協議的VLAN。基于端口的VLAN雖然稍欠靈活,但卻比較成熟,在實際應用中效果顯著,廣受歡迎。基于MAC地址的VLAN為移動計算提供了可能性,但同時也潛藏著遭受MAC欺詐攻擊的隱患。而基于協議的VLAN,理論上非常理想,但實際應用卻尚不成熟。
在集中式網絡環境下,我們通常將中心的所有主機系統集中到一個VLAN里,在這個VLAN里不允許有任何用戶節點,從而較好地保護敏感的主機資源。在分布式網絡環境下,我們可以按機構或部門的設置來劃分VLAN。各部門內部的所有服務器和用戶節點都在各自的VLAN內,互不侵擾。
VLAN內部的連接采用交換實現,而VLAN與VLAN之間的連接則采用路由實現。目前,大多數的交換機(包括海關內部普遍采用的DEC MultiSwitch 900)都支持RIP和OSPF這兩種國際標準的路由協議。如果有特殊需要,必須使用其他路由協議(如CISCO公司的EIGRP或支持DECnet的IS-IS),也可以用外接的多以太網口路由器來代替交換機,實現VLAN之間的路由功能。當然,這種情況下,路由轉發的效率會有所下降。
無論是交換式集線器還是VLAN交換機,都是以交換技術為核心,它們在控制廣播、防止黑客上相當有效,但同時也給一些基于廣播原理的入侵監控技術和協議分析技術帶來了麻煩。因此,如果局域網內存在這樣的入侵監控設備或協議分析設備,就必須選用特殊的帶有SPAN(Switch Port Analyzer)功能的交換機。這種交換機允許系統管理員將全部或某些交換端口的數據包映射到指定的端口上,提供給接在這一端口上的入侵監控設備或協議分析設備。筆者在廈門海關外部網設計中,就選用了Cisco公司的具備SPAN功能的Catalyst系列交換機,既得到了交換技術的好處,又使原有的Sniffer協議分析儀“英雄有用武之地”。
廣域網
B.廣域網安全
由于廣域網大多采用公網來進行數據傳輸,信息在廣域網上傳輸時被截取和利用的可能性就比局域網要大得多。如果沒有專用的軟件對數據進行控制,只要使用Internet上免費下載的“包檢測”工具軟件,就可以很容易地對通信數據進行截取和破譯。
因此,必須采取手段,使得在廣域網上發送和接收信息時能夠保證:
①除了發送方和接收方外,其他人是無法知悉的(隱私性);
②傳輸過程中不被篡改(真實性);
③發送方能確知接收方不是假冒的(非偽裝性);
④發送方不能否認自己的發送行為(不可抵賴性)。
為了達到以上安全目的,廣域網通常采用以下安全解決辦法:
1.加密技術
加密型網絡安全技術的基本思想是不依賴于網絡中數據通道的安全性來實現網絡系統的安全,而是通過對網絡數據的加密來保障網絡的安全可靠性。數據加密技術可以分為三類,即對稱型加密、不對稱型加密和不可逆加密。
其中不可逆加密算法不存在密鑰保管和分發問題,適用于分布式網絡系統,但是其加密計算量相當可觀,所以通常用于數據量有限的情形下使用。計算機系統中的口令就是利用不可逆加密算法加密的。近年來,隨著計算機系統性能的不斷提高,不可逆加密算法的應用逐漸增加,常用的如RSA公司的MD5和美國國家標準局的SHS。在海關系統中廣泛使用的Cisco路由器,有兩種口令加密方式:Enable Secret和Enable Password。其中,Enable Secret就采用了MD5不可逆加密算法,因而目前尚未發現破解方法(除非使用字典攻擊法)。而Enable Password則采用了非常脆弱的加密算法(即簡單地將口令與一個常數進行XOR與或運算),目前至少已有兩種破解軟件。因此,最好不用Enable Password。
2.VPN技術
VPN(虛擬專網)技術的核心是采用隧道技術,將企業專網的數據加密封裝后,透過虛擬的公網隧道進行傳輸,從而防止敏感數據的被竊。VPN可以在Internet、服務提供商的IP、幀中繼或ATM網上建立。企業通過公網建立VPN,就如同通過自己的專用網建立內部網一樣,享有較高的安全性、優先性、可靠性和可管理性,而其建立周期、投入資金和維護費用卻大大降低,同時還為移動計算提供了可能。因此,VPN技術一經推出,便紅遍全球。
但應該指出的是,目前VPN技術的許多核心協議,如L2TP、IPSec等,都還未形成通用標準。這就使得不同的VPN服務提供商之間、VPN設備之間的互操作性成為問題。因此,企業在VPN建網選型時,一定要慎重選擇VPN服務提供商和VPN設備。
3.身份認證技術
對于從外部撥號訪問總部內部網的用戶,由于使用公共電話網進行數據傳輸所帶來的風險,必須更加嚴格控制其安全性。一種常見的做法是采用身份認證技術,對撥號用戶的身份進行驗證并記錄完備的登錄日志。較常用的身份認證技術,有Cisco公司提出的TACACS+以及業界標準的RADIUS。筆者在廈門海關外部網設計中,就選用了Cisco公司的CiscoSecure ACS V2.3軟件進行RADIUS身份認證。
外部網
C.外部網安全
海關的外部網建設,通常指與Internet的互聯及與外部企業用戶的互聯兩種。無論哪一種外部網,都普遍采用基于TCP/IP的Internet協議族。Internet協議族自身的開放性極大地方便了各種計算機的組網和互聯,并直接推動了網絡技術的迅猛發展。但是,由于在早期網絡協議設計上對安全問題的忽視,以及Internet在使用和管理上的無政府狀態,逐漸使Internet自身的安全受到威脅,黑客事件頻頻發生。
對外部網安全的威脅主要表現在:非授權訪問、冒充合法用戶、破壞數據完整性、干擾系統正常運行、利用網絡傳播病毒、線路竊聽等。
外部網安全解決辦法主要依靠防火墻技術、入侵檢測技術和網絡防病毒技術。在實際的外部網安全設計中,往往采取上述三種技術(即防火墻、入侵檢測、網絡防病毒)相結合的方法。筆者在廈門海關外部網設計中,就選用了NAI公司最新版本的三宿主自適應動態防火墻Gauntlet Active Firewall。該防火墻產品集成了Gauntlet Firewall、CyberCop Scanner、CyberCop Monitor、WebShield for Firewall等套件,將防火墻技術、入侵檢測技術與網絡防病毒技術融為一體,緊密結合,相得益彰,性價比比較高。
目前的局域網基本上都采用以廣播為技術基礎的以太網,任何兩個節點之間的通信數據包,不僅為這兩個節點的網卡所接收,也同時為處在同一以太網上的任何一個節點的網卡所截取。因此,黑客只要接入以太網上的任一節點進行偵聽,就可以捕獲發生在這個以太網上的所有數據包,對其進行解包分析,從而竊取關鍵信息,這就是以太網所固有的安全隱患。
A.局域網安全
事實上,Internet上許多免費的黑客工具,如SATAN、ISS、NETCAT等等,都把以太網偵聽作為其最基本的手段。
當前,局域網安全的解決辦法有以下幾種:
1.網絡分段
網絡分段通常被認為是控制網絡廣播風暴的一種基本手段,但其實也是保證網絡安全的一項重要措施。其目的就是將非法用戶與敏感的網絡資源相互隔離,從而防止可能的非法偵聽,網絡分段可分為物理分段和邏輯分段兩種方式。
目前,海關的局域網大多采用以交換機為中心、路由器為邊界的網絡格局,應重點挖掘中心交換機的訪問控制功能和三層交換功能,綜合應用物理分段與邏輯分段兩種方法,來實現對局域網的安全控制。例如:在海關系統中普遍使用的DEC MultiSwitch 900的入侵檢測功能,其實就是一種基于MAC地址的訪問控制,也就是上述的基于數據鏈路層的物理分段。
2.以交換式集線器代替共享式集線器
對局域網的中心交換機進行網絡分段后,以太網偵聽的危險仍然存在。這是因為網絡最終用戶的接入往往是通過分支集線器而不是中心交換機,而使用最廣泛的分支集線器通常是共享式集線器。這樣,當用戶與主機進行數據通信時,兩臺機器之間的數據包(稱為單播包Unicast Packet)還是會被同一臺集線器上的其他用戶所偵聽。一種很危險的情況是:用戶TELNET到一臺主機上,由于TELNET程序本身缺乏加密功能,用戶所鍵入的每一個字符(包括用戶名、密碼等重要信息),都將被明文發送,這就給黑客提供了機會。
因此,應該以交換式集線器代替共享式集線器,使單播包僅在兩個節點之間傳送,從而防止非法偵聽。當然,交換式集線器只能控制單播包而無法控制廣播包(Broadcast Packet)和多播包(Multicast Packet)。所幸的是,廣播包和多播包內的關鍵信息,要遠遠少于單播包。
3.VLAN的劃分
為了克服以太網的廣播問題,除了上述方法外,還可以運用VLAN(虛擬局域網)技術,將以太網通信變為點到點通信,防止大部分基于網絡偵聽的入侵。
目前的VLAN技術主要有三種:基于交換機端口的VLAN、基于節點MAC地址的VLAN和基于應用協議的VLAN。基于端口的VLAN雖然稍欠靈活,但卻比較成熟,在實際應用中效果顯著,廣受歡迎。基于MAC地址的VLAN為移動計算提供了可能性,但同時也潛藏著遭受MAC欺詐攻擊的隱患。而基于協議的VLAN,理論上非常理想,但實際應用卻尚不成熟。
在集中式網絡環境下,我們通常將中心的所有主機系統集中到一個VLAN里,在這個VLAN里不允許有任何用戶節點,從而較好地保護敏感的主機資源。在分布式網絡環境下,我們可以按機構或部門的設置來劃分VLAN。各部門內部的所有服務器和用戶節點都在各自的VLAN內,互不侵擾。
VLAN內部的連接采用交換實現,而VLAN與VLAN之間的連接則采用路由實現。目前,大多數的交換機(包括海關內部普遍采用的DEC MultiSwitch 900)都支持RIP和OSPF這兩種國際標準的路由協議。如果有特殊需要,必須使用其他路由協議(如CISCO公司的EIGRP或支持DECnet的IS-IS),也可以用外接的多以太網口路由器來代替交換機,實現VLAN之間的路由功能。當然,這種情況下,路由轉發的效率會有所下降。
無論是交換式集線器還是VLAN交換機,都是以交換技術為核心,它們在控制廣播、防止黑客上相當有效,但同時也給一些基于廣播原理的入侵監控技術和協議分析技術帶來了麻煩。因此,如果局域網內存在這樣的入侵監控設備或協議分析設備,就必須選用特殊的帶有SPAN(Switch Port Analyzer)功能的交換機。這種交換機允許系統管理員將全部或某些交換端口的數據包映射到指定的端口上,提供給接在這一端口上的入侵監控設備或協議分析設備。筆者在廈門海關外部網設計中,就選用了Cisco公司的具備SPAN功能的Catalyst系列交換機,既得到了交換技術的好處,又使原有的Sniffer協議分析儀“英雄有用武之地”。
廣域網
B.廣域網安全
由于廣域網大多采用公網來進行數據傳輸,信息在廣域網上傳輸時被截取和利用的可能性就比局域網要大得多。如果沒有專用的軟件對數據進行控制,只要使用Internet上免費下載的“包檢測”工具軟件,就可以很容易地對通信數據進行截取和破譯。
因此,必須采取手段,使得在廣域網上發送和接收信息時能夠保證:
①除了發送方和接收方外,其他人是無法知悉的(隱私性);
②傳輸過程中不被篡改(真實性);
③發送方能確知接收方不是假冒的(非偽裝性);
④發送方不能否認自己的發送行為(不可抵賴性)。
為了達到以上安全目的,廣域網通常采用以下安全解決辦法:
1.加密技術
加密型網絡安全技術的基本思想是不依賴于網絡中數據通道的安全性來實現網絡系統的安全,而是通過對網絡數據的加密來保障網絡的安全可靠性。數據加密技術可以分為三類,即對稱型加密、不對稱型加密和不可逆加密。
其中不可逆加密算法不存在密鑰保管和分發問題,適用于分布式網絡系統,但是其加密計算量相當可觀,所以通常用于數據量有限的情形下使用。計算機系統中的口令就是利用不可逆加密算法加密的。近年來,隨著計算機系統性能的不斷提高,不可逆加密算法的應用逐漸增加,常用的如RSA公司的MD5和美國國家標準局的SHS。在海關系統中廣泛使用的Cisco路由器,有兩種口令加密方式:Enable Secret和Enable Password。其中,Enable Secret就采用了MD5不可逆加密算法,因而目前尚未發現破解方法(除非使用字典攻擊法)。而Enable Password則采用了非常脆弱的加密算法(即簡單地將口令與一個常數進行XOR與或運算),目前至少已有兩種破解軟件。因此,最好不用Enable Password。
2.VPN技術
VPN(虛擬專網)技術的核心是采用隧道技術,將企業專網的數據加密封裝后,透過虛擬的公網隧道進行傳輸,從而防止敏感數據的被竊。VPN可以在Internet、服務提供商的IP、幀中繼或ATM網上建立。企業通過公網建立VPN,就如同通過自己的專用網建立內部網一樣,享有較高的安全性、優先性、可靠性和可管理性,而其建立周期、投入資金和維護費用卻大大降低,同時還為移動計算提供了可能。因此,VPN技術一經推出,便紅遍全球。
但應該指出的是,目前VPN技術的許多核心協議,如L2TP、IPSec等,都還未形成通用標準。這就使得不同的VPN服務提供商之間、VPN設備之間的互操作性成為問題。因此,企業在VPN建網選型時,一定要慎重選擇VPN服務提供商和VPN設備。
3.身份認證技術
對于從外部撥號訪問總部內部網的用戶,由于使用公共電話網進行數據傳輸所帶來的風險,必須更加嚴格控制其安全性。一種常見的做法是采用身份認證技術,對撥號用戶的身份進行驗證并記錄完備的登錄日志。較常用的身份認證技術,有Cisco公司提出的TACACS+以及業界標準的RADIUS。筆者在廈門海關外部網設計中,就選用了Cisco公司的CiscoSecure ACS V2.3軟件進行RADIUS身份認證。
外部網
C.外部網安全
海關的外部網建設,通常指與Internet的互聯及與外部企業用戶的互聯兩種。無論哪一種外部網,都普遍采用基于TCP/IP的Internet協議族。Internet協議族自身的開放性極大地方便了各種計算機的組網和互聯,并直接推動了網絡技術的迅猛發展。但是,由于在早期網絡協議設計上對安全問題的忽視,以及Internet在使用和管理上的無政府狀態,逐漸使Internet自身的安全受到威脅,黑客事件頻頻發生。
對外部網安全的威脅主要表現在:非授權訪問、冒充合法用戶、破壞數據完整性、干擾系統正常運行、利用網絡傳播病毒、線路竊聽等。
外部網安全解決辦法主要依靠防火墻技術、入侵檢測技術和網絡防病毒技術。在實際的外部網安全設計中,往往采取上述三種技術(即防火墻、入侵檢測、網絡防病毒)相結合的方法。筆者在廈門海關外部網設計中,就選用了NAI公司最新版本的三宿主自適應動態防火墻Gauntlet Active Firewall。該防火墻產品集成了Gauntlet Firewall、CyberCop Scanner、CyberCop Monitor、WebShield for Firewall等套件,將防火墻技術、入侵檢測技術與網絡防病毒技術融為一體,緊密結合,相得益彰,性價比比較高。
普通用戶選用防火墻面面通
[ 2007-03-25 03:31:50 | 作者: sun ]
什么是防火墻?通常應用防火墻的目的有以下幾方面:限制他人進入內部網絡;過濾掉不安全的服務和非法用戶;防止入侵者接近你的防御設施;限定人們訪問特殊站點;為監視局域網安全提供方便。
個人防火墻一般具有以下功能:
1、數據包過濾
過濾技術(Ip Filtering or packet filtering) 的原理在于監視并過濾網絡上流入流出的Ip包,拒絕發送可疑的包。
在互聯網這樣的信息包交換網絡上,所有往來的信息都被分割成許許多多一定長度的信息包,包頭信息中包括IP源地址、IP目標地址、內裝協議(ICP、UDP、ICMP、或IP Tunnel)、TCP/UDP目標端口、ICMP消息類型、包的進入接口和出接口。當這些包被送上互聯網時,防火墻會讀取接收者的IP并選擇一條物理上的線路發送出去,信息包可能以不同的路線抵達目的地,當所有的包抵達后會在目的地重新組裝還原。包過濾式的防火墻會檢查所有通過信息包里的IP地址,并按照系統管理員所給定的過濾規則過濾信息包。如果防火墻設定某一IP為危險的話,從這個地址而來的所有信息都會被防火墻屏蔽掉。
2、防火墻的安全規則
安全規則就是對你計算機所使用局域網、互聯網的內制協議設置,從而達到系統的最佳安全狀態。
個人防火墻軟件中的安全規則方式可分為兩種:
一種是定義好的安全規則
就是把安全規則定義成幾種方案,一般分為低、中、高三種。這樣不懂網絡協議的用戶,就可以根據自己的需要靈活的設置不同的安全方案。例如:ZoneAlarm防火墻.
還有一種用戶可以自定義安全規則
也就是說,在你非常了解網絡協議的情況下,你就可以根據自已所需的安全狀態,單獨設置某個協議。
3、事件日記
這是每個防火墻軟件所不能少的主要的功能。記錄著防火墻軟件監聽到發生的一切事件,比如入侵者的來源、協議、端口、時間等等。記錄的事件是由防火墻的功能來決定的。
那么那一種防火墻最好呢?這是網友經常詢問的問題。
我個人認為選用防火墻,不一定非要用最好的,因為個人防火墻主要是針對個人用戶的實用性來制作的,除了以上幾種功能外,還集成一些工具,比如說追蹤主機名或IP地址、檢測特洛伊木馬、偽裝等等。根據自己不同的需要來選用,在不斷地學習中淘汰一些簡單的防火墻。本人把用戶大概分成五種:
1、不了解網絡協議的用戶,只是為了游覽網頁。你可以使用傻瓜式防火墻。例如:Intrusion Detector、Intruder Alert' 99
2、如果你上網是為了聊天或者經常受到攻擊的用戶,那么你就可以選用:ProtectX、LockDown2000兩個防火墻,它們都有追蹤IP的功能。如果你受到攻擊,立即可以追蹤。
3、經常遭遇到掃描的用戶,使用Internet Firewall 2000、AnalogX、NetAlert。這兩個防火墻可以封鎖或監視你的對外開放端口。
4、在局域網環境中上網的用戶,那么防火墻必須支持NETBIOS設置功能。例如:AtGuard、Zone Alarm、conseal pc firewall、天網防火墻、BlackICE。
5、自己對網絡協議運用自如的用戶。Norton Internet Security 2000 V2.0 Personal Firewall與AtGuard防火墻都有非常詳細的自定義網絡協議。
這里說明一下,上面所說的五種用戶分類,不是必須按照這樣的分類使用的,只不過它們有那種分類的功能特點。比如說,Zone Alarm、天網防火墻,這兩個防火墻也對普通用戶提供了安全規則方案,不了解網絡協議的用戶也可以運用自如。
個人防火墻一般具有以下功能:
1、數據包過濾
過濾技術(Ip Filtering or packet filtering) 的原理在于監視并過濾網絡上流入流出的Ip包,拒絕發送可疑的包。
在互聯網這樣的信息包交換網絡上,所有往來的信息都被分割成許許多多一定長度的信息包,包頭信息中包括IP源地址、IP目標地址、內裝協議(ICP、UDP、ICMP、或IP Tunnel)、TCP/UDP目標端口、ICMP消息類型、包的進入接口和出接口。當這些包被送上互聯網時,防火墻會讀取接收者的IP并選擇一條物理上的線路發送出去,信息包可能以不同的路線抵達目的地,當所有的包抵達后會在目的地重新組裝還原。包過濾式的防火墻會檢查所有通過信息包里的IP地址,并按照系統管理員所給定的過濾規則過濾信息包。如果防火墻設定某一IP為危險的話,從這個地址而來的所有信息都會被防火墻屏蔽掉。
2、防火墻的安全規則
安全規則就是對你計算機所使用局域網、互聯網的內制協議設置,從而達到系統的最佳安全狀態。
個人防火墻軟件中的安全規則方式可分為兩種:
一種是定義好的安全規則
就是把安全規則定義成幾種方案,一般分為低、中、高三種。這樣不懂網絡協議的用戶,就可以根據自己的需要靈活的設置不同的安全方案。例如:ZoneAlarm防火墻.
還有一種用戶可以自定義安全規則
也就是說,在你非常了解網絡協議的情況下,你就可以根據自已所需的安全狀態,單獨設置某個協議。
3、事件日記
這是每個防火墻軟件所不能少的主要的功能。記錄著防火墻軟件監聽到發生的一切事件,比如入侵者的來源、協議、端口、時間等等。記錄的事件是由防火墻的功能來決定的。
那么那一種防火墻最好呢?這是網友經常詢問的問題。
我個人認為選用防火墻,不一定非要用最好的,因為個人防火墻主要是針對個人用戶的實用性來制作的,除了以上幾種功能外,還集成一些工具,比如說追蹤主機名或IP地址、檢測特洛伊木馬、偽裝等等。根據自己不同的需要來選用,在不斷地學習中淘汰一些簡單的防火墻。本人把用戶大概分成五種:
1、不了解網絡協議的用戶,只是為了游覽網頁。你可以使用傻瓜式防火墻。例如:Intrusion Detector、Intruder Alert' 99
2、如果你上網是為了聊天或者經常受到攻擊的用戶,那么你就可以選用:ProtectX、LockDown2000兩個防火墻,它們都有追蹤IP的功能。如果你受到攻擊,立即可以追蹤。
3、經常遭遇到掃描的用戶,使用Internet Firewall 2000、AnalogX、NetAlert。這兩個防火墻可以封鎖或監視你的對外開放端口。
4、在局域網環境中上網的用戶,那么防火墻必須支持NETBIOS設置功能。例如:AtGuard、Zone Alarm、conseal pc firewall、天網防火墻、BlackICE。
5、自己對網絡協議運用自如的用戶。Norton Internet Security 2000 V2.0 Personal Firewall與AtGuard防火墻都有非常詳細的自定義網絡協議。
這里說明一下,上面所說的五種用戶分類,不是必須按照這樣的分類使用的,只不過它們有那種分類的功能特點。比如說,Zone Alarm、天網防火墻,這兩個防火墻也對普通用戶提供了安全規則方案,不了解網絡協議的用戶也可以運用自如。
隱藏入侵蹤跡技術講座
[ 2007-03-25 03:31:33 | 作者: sun ]
第一章 理論篇
I. 概述
II. 思想認識(MENTAL)
III. 基礎知識
IV. 高級技巧
V. 當你受到懷疑時...
VI. 被捕
VII. 有用的程序
VIII. 最后的話
I. 概述
----------------------------------------------------------------------
>> 譯者注:本文是德國著名hacker組織"The Hacker's Choice"的96年寫的一篇文章但今天讀來仍頗有收獲,就象他自己說的:"即使是一個很有經驗的hacker也能從這里學到一些東西".在翻譯的過程中對原文做了一些改動,也加入了一些自己的理解,
>> 不當之處,還請賜教.
warning3@hotmail.com
注意 : 本文分為兩部分.
第一部分講述了一些背景和理論知識.第二部分通過具體的實例教你一步一步了解該做什么和不該做什么.
如果你懶得看完全部文章,那就只讀第二部分吧.它主要是寫給那些Unix hack新手看的.
如果你把盡快得到最新的exploits當成最重要的事的話,那我要說-你錯了.
>> 譯者注:exploits可以理解為"漏洞",不過我并不想這么翻,翻過來總感覺怪怪的,所以我還是保留了原文.文中還有一些地方也是如此處理,不再一一注明
一旦警察沒收了你的計算機、你的所有帳戶都被取消、你的一切活動都被監視的時候,即便是最好的exploit對你又有什么用呢?我不想聽那些辯解的話.不,最重要的事應該是不要被捕!這是每個hacker都應該明白的第一件事.因為在很多情況下,特別是當你首次hack一個由于飽受入侵之苦而開始對系統安全敏感的站點時,你的第一次hack也許就將成為你最后一次hack.
所以請仔細閱讀所有章節!
即使是一個很有經驗的hacker也能從中學到一些東西.
下面是各節的簡介:
節 I - 你現在正在讀的
節 II - 思想認識
1. 動機
2. 為什么你必須要謹慎(paranoid)
3. 怎樣才能謹慎
4. 保持謹慎
節 III - 在你開始hack前應當知道的基本知識
1. 前言
2. 自身安全
3. 自己的帳戶
4. log文件
5. 不要留下痕跡
6. 你應當避免的事
節 IV - 你該了解的高級技巧
1. 前言
2. 阻止任何跟蹤
3. 找到并處理所有的log文件
4. 檢查syslog設置和log文件
5. 檢查安裝的安全程序
6. 檢查系統管理員
7. 怎樣修正checksum檢查軟件
8. 注意某些用戶的安全陷阱(詭計?)
9. 其他
節 V - 一旦你受到懷疑你該怎么做
節 VI - 當你被捕時該做的與不該做的
節 VII - 一些用于隱藏痕跡的程序的列表
節 VIII- 最后的話,作者想說的一些廢話
請仔細閱讀,開動腦筋.
II. 思想認識(MENTAL)
>> 譯者注:這一節的目的主要是提醒你樹立正確的"hack"觀 ;)
----------------------------------------------------------------------
內容: 1. 動機
2. 為什么你必須要謹慎(paranoid)
3. 怎樣才能謹慎
4. 保持謹慎
>> 譯者注:paranoid的意思是"患偏執狂的",在這里可能是當
>> "小心謹慎"來講吧.
* 1. 動機 *
不管做什么事,信念總是取得成功的一個關鍵.它是你的動力源泉,它激發你去奮斗,自我約束,小心謹慎而又面對現實,準確的估計風險,它也能讓你去做你不喜歡做但又非常重要的事情(即使你現在就想去游泳).如果你不激勵自己去編制重要工具,等候恰當的時機去攻擊目標,那你永
遠不能成為真正的hacker.
一個成功而又優秀的hacker必須滿足這些要求.它就象健身和節食---如果你真正努力去做,你就能成功.
* 2. 為什么你必須要謹慎 *
當然,小心謹慎并不會讓你的生活變得更幸福.然而如果你從不做最壞的打算,任何事情都能擊倒你,讓你失去平衡.你正在做的事會讓你冒很大風險.而在你正常的生活中你并不需要擔心警察,小偷什么的.但如果你從另一方面考慮,你要知道你正在給別人的生活帶來麻煩和惡夢--他們很
想阻止你.盡管你不認為這是犯罪.但當警察迅速逮捕每個可能被牽扯的人時,你會發現一件很悲慘的事:你是有罪的除非你能證明你無罪!一旦你得到了一個hacker的"污名",你就永遠不能將其去除.一旦你有了犯罪紀錄,你將很難找到一份工作.特別是沒有軟件公司甚至沒有與計算機有關的公司會聘用你,他們會害怕你的技術.你也許不得不移民...一旦跌倒了,能再爬起來的只是少數人.
要小心謹慎!要保護好你自己!記住你得到的一切都可能失去!絕不為做額外的反跟蹤工作而感到愚蠢!絕不為如果別人嘲笑你太謹慎而煩心!決不要因為太懶或者厭倦而放棄修改log文件!一名hacker必須%100的完成他的"工作"!
* 3. 怎樣才能小心謹慎 *
如果你讀了上面的話并且你認為那是對的,那就容易了---你已經變得小心謹慎了但這必須要變成你生活中的一部分才行,當你總是考慮究竟是誰告訴你了那些事,考慮你的電話和email可能已被監視的時候,那它已經變成你生活的一部分了.
如果上面這些還不能幫你,那么考慮一下如果你被捕會發生什么.你的女友還會站在你這邊嗎?你想看到你父母為你流淚嗎?你想丟掉飯碗或學業嗎?
不要給這一切以發生的機會!
如果這還不能警醒你:離HACKING遠點兒!!!對整個hacker社會和你的朋友來說,你都是個危險人物!
* 4. 保持謹慎 *
我希望現在你明白為什么小心謹慎的重要性了.
所以保持謹慎.一個錯誤或者一次偷懶都可能徹底毀掉你的生活和事業.在做一件事時應時刻記著你的動機是什么.
>> 譯者注:這部分是讓你知道你正在干什么及你的處境.如果你不想讓你成為無聊記者津津樂道的話題---"某地破獲重大黑客案...",那就多看看,多想想.要知道,自己是這種新聞的主角和看別人的新聞可完全不是一個感覺.所以要:謙虛謹慎,戒驕戒躁 :-)
III. 基礎知識
----------------------------------------------------------------------
內容 :
1. 前言
2. 自身安全
3. 自己的帳戶
4. log文件
5. 不要留下痕跡
6. 你應當避免的事
* 1. 前言 *
在你開始你的初次hack之前,你應當知道這些并且進行些練習.這些都是非常基本的,不知道這些你很快就會有麻煩了.即便是一名很有經驗的hacker也能從中得到一些新的提示.
* 2. 自身安全 *
系統管理員讀了你的email嗎?你的電話被警察監聽了嗎?警察沒收了你存有所有hacking數據的計算機嗎?
如果你不接收可疑的email,不在電話里談論hacking/phreaking的話題,在你的硬盤上也沒有敏感和私人數據的話,那你不必擔心上面那些情景.但那樣你就并不是一個hacker.每個hacker和phreaker都與其他人保持聯系并把他的數據保存在某個地方.
加密所有敏感數據!!!
在線硬盤加密程序是非常重要和有用的:
在internet上游很多好的免費硬盤加密程序,它們對你的操作系統來說是完全透明的.下面所列的幾個軟件都是經過測試的,是hacker's的首選工具:
- 如果你用MsDos,你可以使用SFS v1.17或者SecureDrive 1.4b
- 如果你用Amiga,你可以使用EnigmaII v1.5
- 如果你用Unix,你可以使用CFS v1.33
>> 譯者注:在win9x下可以考慮emf,iprotect...
文件加密軟件: 你可以使用任何一種加密軟件,但它應該是使用一種眾所周知的安全加密機制.絕對不要用那些被出口的加密程序,它們的有效密鑰長度被縮短了!
- Triple DES
- IDEA
- Blowfish (32 rounds)
加密你的Email!
- PGP v2.6.x 是個不錯的工具.
如果你想討論重要的事情的話,加密你的電話.
- Nautilus v1.5a 是迄今最好的
當你連到一個unix系統時加密你的終端.
一些人可能正在sniffing或者監視你的電話線:
- SSH 是最安全的
- DES-Login 也不錯
>> 譯者注:- SSL 基于SSL的一些軟件也可以一試
用強壯的不可猜測的,不在任何字典中的密碼.它應當看起來象隨機的但又容易記憶.如果密碼長度可以比10個字符更長,那就用更長的.可以從書中抽取一句話,并略作修改.請將你的hacker朋友的電話號碼加密兩遍.如果你不加密,你應當從公用電話給他打電話.
>> 譯者注:其實有個好記又難猜的密碼并不難,例如考慮句子"I'm a haxor!"可以從中抽>> 取幾個單詞組成I'mhaxor,好象沒有數字,呵呵,用"eleet"的hacker語言,haxor=h4x0r所以我們的口令可以是:I'mh4x0r(我是hacker).這樣的密碼恐怕只能用暴力破解了.
如果你對hacking有了深入了解,你應當加密所有的東西!
為你的數據做個備份,當然要先加密,把它放在一個隱秘的地方,最好不要在家里.所以即使你因為失誤,火災或警察搜捕等原因丟失了數據,你還可以得到備份數據.
只有當你真的需要它們時才寫出來,否則將它們放在一個機密文件或加密分區里更安全.一旦你不需要它們了,燒掉那些紙.你也可以用只有你自己知道的加密機制將它們寫下來,但不要告訴任何人,也別太經常的使用它.也許它很容易被分析和破解。真正沉穩和謹慎的hackers應該考慮實施干擾方案.警察,間諜,其他hacker能監視你的舉動.一個擁有先進設備的人可以獲得他想要的任何東西:
計算機發射的電子脈沖可以從100米以外的距離被截獲,可以顯示你的監視器屏幕,監聽你的私人談話,確認鍵盤敲擊時的高頻信號等等...所以各種可能性總是存在的.成本低廉的應付方法就是采用電子脈沖干擾發射機,商店里就有賣的.如果你不想讓任何人監視你,我認為這些還不夠...
>> 譯者注:不知道我們的商店里有沒有賣的.;-)
* 3. 你自己的帳戶 *
下面讓我們談談你自己的帳戶.它就是你在學校/公司/ISP那里得到的帳戶,它總是與你的真實姓名聯系在一起,所以在使用它時絕對不要違背下面的原則:
永遠不要用你的真實帳戶做任何非法或者惹人懷疑的事!永遠不要試圖從你的真實帳戶telnet到任何被hacked主機去!當然可以用這個帳號訂閱安全mailing lists.但任何與hacking有關的東西都必須加密或者立刻銷毀.決不要在你帳號下保存hacking或security工具.盡量用POP3連到你的mailserver下載或者刪除你的郵件(如果你對unix比較熟悉,還可以直接telnet到POP3端口執行下載或者刪除命令).決不要泄漏你的真實email給你不信任的人,只把它給你信任的人,他們也
應當是比較注意安全問題的人,否則如果他們被捕,下一個就是你了(或許他們根本就是警察,而不是hacker.).與其他的hacker用email交流時必須要用PGP加密,因為系統管理員經常偷看用戶目錄,甚至讀區別人的email!!其他的hacker也可能hack你們的站點并試圖得到你的數據.
絕不要用你的帳號表明你對hacking感興趣!對安全感興趣可以,但不要再進一步了.
>> 譯者注:與別人交流時可以申請免費信箱,最好是國外的,比如hotmail之類,登陸時注意最好
通過proxy.自己的真實信箱應當只用來進行一般的正常通信,與朋友/老師/同事...
* 4. LOG文件 *
有三個重要的log文件:
WTMP - 記錄每次登錄的信息,包括登陸/退出的時間,終端,登錄主機ip
UTMP - 在線用戶記錄
LASTLOG - 記錄用戶上次是從哪里登錄的
當然還有其他的log,它們將在"高級技巧"一節種討論.每次通過telnet,ftp,rlogin,rsh
的登錄都會被記錄到這些文件中.如果你正在hacking,把自己從這些記錄中刪除就是很重要的了.否則他們會:
a) 準確的發現你什么時候在搞hacking活動
b) 發現你從那個站點過來
c) 知道你在線的時間有多長,以便計算你給他們造成的損失
絕對不要刪除這些log文件!!!那等于通知管理員:"嗨,你的機器上有個hacker!".找一個好程序來修改這些log.ZAP(或ZAP2)經常被認為是最好的但事實上它并不是.它只是簡單的用0來填充用戶上次登陸的數據段.CERT已經發布了一個簡單的程序用來檢查這些全零數據項.所以這樣也會很容易就讓人知道現在有個hacker在活動,這樣你所有的工作就沒有意義了.ZAP的另外一個缺陷是當它找不到那些log文件時,它并不報告.所以在編譯之前必須先檢查一下路徑!你應該使用能改變記錄內容的程序(象cloark2.c)或者能真正刪掉記錄的程序(象clear)
>> 譯者注: THC提供的cleara.c ,clearb.c是非常好用的清除工具.可以清除utmp/utmpx,wtmp/wtmpx,修復lastlog讓其仍然顯示該用戶的上次登錄信息(而不是你登錄的信息).如果你發現你登錄后沒有顯示上次登錄信息,那很可能你的機器,可能已經被人hack了,當然,即使顯示正確的信息也未必就沒有被hack.;-)
一般來說要修改log你必須是root(有些老版本系統例外,它們將utmp/wtmp設成允許所有人可寫)但如果你不能得到root權限---你該怎么做呢?你應該rlogin到你現在所處的主機,以便在lastlog種增加一個不是那么惹人懷疑的數據項,它將在該用戶下次登錄時被顯示,如果他看到"上次從localhost登錄"的信息時也許不會懷疑.
>> 譯者注:這也是沒有辦法的辦法,換了我,我就會懷疑.;)
很多unix系統的login命令有一個bug.當你登錄以后再執行一遍login命令時,它將用你當前的終端重寫UTMP中的login from段(它顯示你是從哪里來的!)那么這些log文件缺省在什么地方呢?
這依賴于不同的Unix版本.
UTMP : /etc 或 /var/adm 或 /usr/adm 或 /usr/var/adm 或 /var/log
WTMP : /etc 或 /var/adm 或 /usr/adm 或 /usr/var/adm 或 /var/log
LASTLOG : /usr/var/adm 或 /usr/adm 或 /var/adm 或 /var/log
在一些舊unix版本中lastlog數據被寫到$HOME/.lastlog
* 5. 不要留下痕跡 *
我曾經碰到很多hacker,他們把自己從log里刪除了.但他們忘記刪掉他們在機器中留下的其他一些東西:在/tmp和$HOME中的文件Shell 記錄一些shell會保留一個history文件(依賴于環境設置)記錄你執行的命令.這對hacker來說確實是件很糟糕的事.最好的選擇就是當你登錄以后先啟動一個新shell,然后在你的$HOME中查找歷史紀錄.
歷史記錄文件:
sh : .sh_history
csh : .history
ksh : .sh_history
bash: .bash_history
zsh : .history
>> 譯者注:.*history是我最喜歡看的文件之一,通過它你可以了解root或用戶常干些什么, 從而得知他們的水平如何,如果他們只會執行"ls","pwd","cp"...那說明水平不過爾爾,無須太擔心.不過如果你發現root喜歡"find / -type f -perm -04000 -exec ls -a
l {} \;"," "vim /var/adm/messages","ps -aux( -elf) ","netstat -an"....那你就要小心一點了。
備份文件 :
dead.letter, *.bak, *
在你離開前執行一下"ls -altr"看看你有沒有留下什么不該留下的東西.你可以敲4個csh命令,它能讓你離開時刪掉這些歷史文件,不留下任何痕跡.
mv .logout save.1
echo rm .history>.logout
echo rm .logout>>.logout
echo mv save.1 .logout>>.logout
>> 譯者注:對于bash,有一個簡單的辦法就是執行一下"HISTFILE=",就是不設置bash的歷史文件,這樣就不會有討厭的.bash_history了.(準確地說,是不會往$HOME/.bash_history里寫了)
>> 或者退出的時候簡單的敲kill -9 0 ,它會殺掉這次登錄后產生的所有進程,bash也不會往.bash_history里寫
* 6. 你應當避免的事 *
不要在不屬于你的機器上crack口令.如果你在別人(比如說一所大學)的機器上破解口令,一旦root發現了你的進程,并且檢查它.那么不僅你hacking的帳號保不住了,可能連你得到的那passwd文件也沒了.那學校將會密切注視你的一舉一動...所以得到口令文件后應該在自己的機器上破解.你并不需要破解太多的帳號,能破出幾個就夠了.如果你運行攻擊/檢測程序象ypx,iss,satan或其他的exploiting程序,應當先改名再執行它們.或者你可以修改源碼改變它們在進程列表中顯示的名字...
>> 譯者注:這并不難,你只要在main()中將argv[]用你喜歡顯示的名字替代就可以了比如argv[0] ="in.telnetd",argv
=""...(當然必須在程序已經從argv中讀取了所需的參數之后).
如果某個細心的用戶/root發現5個ypx程序在后臺運行,他馬上就會明白發生了什么.當然如果可能的話不要在命令行中輸入參數.如果程序支持交互方式,象telnet.應當先敲"telnet",然后"o target.host.com"...這就不會在進程表中顯示目標主機名.
>> 譯者注:如果你用ftp,最好這樣做:
>> $ ftp -n
>> $ ftp>o target.host
>> blahblah...(一些連接信息)
>> blahblah...(ftp server版本)
>> ftp>user xxx
>> ....
如果你hack了一個系統---不要在任何地方放suid shell!最好裝一些后門象(ping,quota或者login),用fix來更正文件的atime和mtime.
>> 譯者注: 放suid shell是很蠢的,非常容易被root發現.
IV. 高級技巧
----------------------------------------------------------------------
內容 : 1. 前言
2. 阻止任何跟蹤
3. 找到并處理所有的log文件
4. 檢查syslog設置和log文件
5. 檢查安裝的安全程序
6. 檢查系統管理員
7. 怎樣修正checksum檢查軟件
8. 注意某些用戶的安全陷阱(詭計?)
9. 其他
* 1. 前言 *
一旦你裝了第一個sniffer開始你的hack生涯,你就應該知道并使用這些技巧!請運用這些技巧---否則你的hack之旅就行將結束.
* 2. 阻止任何跟蹤 *
有時候你的hacking活動會被人發現.那并不是什么大問題 - 你hacked一些站點可能會被關掉,但誰管它呢,趕緊離開就是了.但如果他們試圖跟蹤你的來路(通常是為了抓住你)的話那就很危險了!
這一節將告訴你他們跟蹤你的各種可能的方法以及你該如何應對.
* 通常對系統管理員來說發現一個hacker是從哪里來的并不是什么問題:檢查log記錄(如果那個hacker真的那么蠢的話);看看hacker安裝的sniffer的輸出記錄(也許里面也記下了他的連接)或者其他系統記帳軟件(象loginlog等等);甚至可以用netstat,顯示所有已經建立的網絡連接--如果那個hacker正在線的話,那他就被發現了.這就是為什么你需要一個gateway server(網關).
* 什么是gateway server?
它是你所"擁有"的很多服務器中的一個,你已經得到了它的root權限.你需要root權限去清除wtmp/lastlog/utmp等系統記錄或者其他一些記帳軟件的log文件.除此之外你不在這臺機器上做任何其他的事(它只是個中轉站).你應當定期更換gateway server,可以每隔1,2個星期更換一次,然后至少一個月內不再使用原來的gateway server.這樣他們就很難跟蹤到你的hacking server.
* hackin server - 所有活動的出發點你從這些機器開始hacking.Telnet(或者更好的:remsh/rsh)到一個gateway server,
然后再到一個目標機器.你需要有root權限以修改log.你必須每隔2-4個星期就更換hacking server..
* 你的堡壘/撥號主機.
這是個臨界點.一但他們能跟蹤回你撥號進入的機器,你就有麻煩了.只要打個電話給警察,再進行一次通信線路跟蹤,你的hack活動就會成為歷史了,也許是你的未來.在堡壘主機上你不需要得到root權限.既然你只是通過modem撥入,那里沒有什么必須修改的記錄.你應該每天用一個不同的帳號撥號進入,盡量用那些很少使用的.你應該找到至少2個你能撥號進去堡壘主機,每隔1-2個
月更換一次.
>> 譯者注:我對phreak不熟.我猜大部分的國內hacker還沒什么本事能躲過電信局的跟蹤.所以最好不要用別人的帳號上網,特別是那些很少上網的帳號,一旦他發現上網費用劇增,肯定會讓電信局追查的,到時候你就大難臨頭了.如果你用那些上網頻繁的人的帳號,他反倒不會注意,只會以為這個月上的太厲害了.:-)(這絕對沒有鼓勵你盜用別人帳號的意思,這等于盜竊,憑什么你
上網要別人交錢?就憑你會用john破幾個口令嗎?hacker的名聲就是讓這些打著hacker旗號的無恥之徒敗壞的.對這種人就得抓!所以我對這樣的phreaker沒有什么好感,你要真有本事,就別嫁禍別人,而且還要讓電信局查不出來.) 說多了,咱們言歸正傳.
注意: 如果你能每天撥入不同的系統(比如通過"藍盒子"),那你就不需要那些hacking server了.
* 使用藍盒子,這樣即使他們跟蹤到你的堡壘主機,也不能(至少是不能很容易地)追蹤到你的電話...使用藍盒子必須小心,德國和美國的電話公司有專門的監視系統來追蹤使用藍盒子的人...
使用一個中間系統來傳送你的電話將會使跟蹤更加困難, 但是同樣由于你使用一個pbx或其他的什么東西, 仍使你處于被抓的危險中. 這取決于你.
注意在丹麥所有的電話數據均被記錄!即使在你打完電話10年后,他們仍然能證明你曾登錄過他們的撥號系統從事hack活動...
- 其他的
如果你想運行satan,iss,ypx,nfs文件句柄猜測程序..你應當使用一個專門的服務器來完成.不要用這個服務器telnet/rlogin到目標服務器,只是用它來進行檢測.
有些程序可以bind到一個特殊端口,當一個指定到該端口的連接建立的時候,它自動打開一個連接連到另外一個服務器的某個端口(有些就模擬一個shell,你可以從這個socket daemon中"telnet"到其他機器).使用這種程序你不會被記錄(防火墻log除外).有很多程序可以幫你完
成上述功能.
>> 譯者注:這種程序我常用的有datapipe.c,telbounc.c,還是很好用的.它就象是個代理服務器,但是不會有記錄.:)
如果可能的話,hacking server或者gateway server應該在國外!因為如果你的入侵被發現,當發現你來自國外的主機時,大多數網管都會放棄追查.即使是警察要通過不同的國家追蹤你,這也至少可以拖延2-10個星期的時間...
#下面是hack過程的簡圖,也許對你有些幫助;-)
+-------+ ~---------------> +-------------+ +-----------+
|+-----+| > > | | | |
||本機 || --> > 安全撥號線路 > --> | 堡壘主機 | --> | hacki
ng |
|+-----+| > > | (至少有3個) | | server |
+-------+ ~---------------> +-------------+ +-----------+
|
|
v
+-----------------+ +--------+ +-----------+
| | | | | |
| 內部網絡中的主機| ... <-- ... |目標主機| <-- | gateway | | | | | | server | +-----------------+ +--------+ +-----------+ * 3. 找到并處理所有的LOG文件 * 找到所有的logfiles是很重要的---即使他們被隱藏.要找到它們有兩種可 能的方法: 1)找到所有打開的文件. 既然所有的log必須寫到某個地方去,所以用可以用LSOF(LiSt Open Files)程序 去檢查所有打開的文件,必要的話就得修改它們.>> 譯者注:lsof由Vic Abell 編寫,用來提供被進程打開的文件的信息,
>> 它的最新版本可以在ftp://vic.cc.purdue.edu/pub/tools/unix/lsof下找到.有趣的是,不久前有人發現lsof4.40以前的版本中存在buffer overflow問題,可以取得root權限.:-)
2) 搜索所有在你登錄后有變化的文件在你登錄后,執行"touch /tmp/check",然后可以干你的活.最后只要執行"find / -newer /tmp/check -print",并檢查找到的文件,如果其中有記帳文件,就應該修改它.注意不是所有版本的find都支持 -newer 參數.你也可以用"find / -ctime 0
-print" 或者 "find / -cmin 0 -print"來查找它們.
>> 譯者注:我更喜歡用-exec ls -l {} \;來代替-print,因為這可以列出比較詳細的信息. 注意上述方法主要是針對系統記帳軟件的,它可能會記錄你執行的命令.對于只記錄login信息的軟件,它在你看到shell提示符以前就已經完成記錄了.所以用這種檢查是查不出來的.
檢查你找到的所有的logfiles.它們一般在/usr/adm,/var/adm或者/var/log,/var/run
.
如果它們被記錄到@loghost,那你可能就有點麻煩了.你需要hack那臺loghost主機去修改log...
>> 譯者注:一般單純用作loghost的機器比較難hack,因為它往往關掉了幾乎所有端口,并且只
允許從控制臺登錄.對于這樣的機器,可以用DoS攻擊使之癱瘓,從而失去log功能.(要hack往往比較難,要crash it則相對容易一些.;-)當然,本次登陸的記錄仍然會被保存下來.
為了處理logs,你可以用"grep -v"或者用wc統計行數后,再用"tail -10 log"察看最后10行
,或者用編輯器vi,emcas.
>> 譯者注:如果你從a.b.c來,你可以用grep -v "a.b.c" logfile>logtemp;mv logtemp logfile;來清除所有含有a.b.c的行.如果log文件比較大,你也可以用vim來編輯.注意這只能用來修改文本文件!!!對二進制文件的修改可能導致文件格式被破壞!!!
如果數據文件是二進制格式的,你應當首先查明它是由什么軟件產生的,然后設法找到該軟件的源碼,分析記錄項的結構,自己編程修改記錄.(可以利用現成的程序加以修改,比如Zap,clear
cloak...).
如果系統安裝了accounting軟件.你可以用zhart寫的acct-clener---它非常有效!
如果你必須修改wtmp,但系統又不能編譯源程序也沒有perl....你可以這樣做,先uuencode
wtmp,然后運行vi,移動到最后一行,刪除最后以"M"開頭的4行...然后保存退出.uudecode
.然后最后5個wtmp記錄項就被刪除了.;-) 注意這只在SCO unix下有效,linux下是不行的.
>> 譯者注:我沒有驗證這個,因為沒有SCO服務器.如果你要這么做,記得要先做個wtmp的備份.
如果系統用wtmpx和utmpx,那你又有麻煩了..迄今我還不知道有哪個cleaner程序可以處理它們.你不得不自己編一個程序來完成工作.
>> 譯者注:wtmpx和utmpx結構與wtmp和utmp類似,只要將清除utmp和wtmp的軟件略加修改就可
>> 以了.而且現在已經不少現成的程序可以修改utmpx/wtmpx了.
* 4. 檢查SYSLOG配置和記錄 *
大部分程序都用syslog函數來記錄它們需要的所有東西.因而檢查syslogd的配置文件是很重要的.這個配置文件是/etc/syslog.conf - 我不會告訴你它的格式是什么/每一項是什么意思
,
自己去讀它的man頁.
對你來說重要的syslog類型是kern.*,auth.*和authpriv.*.看看它們被寫到哪里了,如果寫到文件里還可以修改.如果被轉發到其他主機,你必須也要hack它們.如果消息被發給某個用戶,tty或者控制臺.你能耍點小花招發很多個假消息象"echo 17:04 12-05-85 kernelsendmail[243]: can't resolve bla.bla.com > /dev/console"(或其他你想flood的的設備),讓它卷屏,以隱藏你引發的信息.這些log文件是非常非常重要的!檢查它們!
* 5. 檢查已經安裝的安全程序 *
很多注重安全的站點都通過cron運行安全檢查程序.crontabs通常在/var/spool/cron/crontabs.檢查里面所有的文件,特別是"root"文件,檢查它里面都運行了什么程序.用"crontab -l root"可以快速的檢查root crontab的內容.
這些安全工具往往裝在管理員的目錄下比如~/bin.
這些檢查軟件可能是 tiger, cops, spi, tripwire, l5,binaudit, hobgoblin, s3 等等...
你必須檢查它們都報告了些什么東西,看它們是否報告了一些顯示出你入侵跡象的東西.如果是的話,你可以 - 更新軟件的數據文件,是它們不再報告這種類型的消息.
- 可以重新編程或修改該軟件使它們不再產生報告.
- 如果可能的話,刪除你安裝的后門或其他程序,并試著用其他的方法來完成。
* 6. 檢查系統管理員 *
對你來說了解系統管理員采取了那些安全措施是非常重要的.因此你需要知道他們經常使用哪些
普通用戶帳號.你可以檢查root的.forward文件和alias內容.看看sulog文件,注意那些成功su成root的用戶.檢查group文件中的wheel和admin組(或者其他任何與管理員相關的組).你也可以
在passwd文件中查找admin,也許你又能找到一個管理員帳號.現在你應該已經知道這臺機器上誰是管理員了.進入他們的目錄(如果系統不允許root讀所有的文件,用chid.c或者changeid.c將自己的uid變成該用戶的),檢查他們的.history/.sh_history/.bash_history文件看看他們經常執行什么命令.也應當檢查他們的.profile/.login/.bash_profile文件看看里面都設置了什么alias,是否執行了什么自動安全檢查或logging程序.也檢查他們的~/bin目錄!大多數情況下被編譯的安全程序被放到那里面!當然也要看一下他們的每一個目錄(ls -alR ~/).如果你找到任何與安全有關的東西,請讀5小節以設法繞過它們的安全保護.
* 7. 怎樣修正checksum檢查軟件 *
一些管理員真得很怕hacker所以裝了一些軟件來檢查二進制文件.如果一個二進制文件被改動了,下次管理員做二進制檢查的時候,它將被檢測到.那么你怎么找到是否系統安裝了這樣的程序,又怎樣修改它們以便你能植入你的木馬程序呢?
注意有很多的二進制檢查程序,而且要寫一個也真是非常容易(15分鐘就夠了),你可以用一個
小的script完成這個工作.所以如果這樣的軟件被安裝的話要找到它們是比較困難的.注意
有些常用安全檢查程序也提供這樣的檢查.下面是一些應用得很廣泛的軟件:
軟件名 標準路徑 二進制文件名
tripwire : /usr/adm/tcheck, /usr/local/adm/tcheck : databases, tri
pwir
e
binaudit : /usr/local/adm/audit : auditscan
hobgoblin : ~user/bin : hobgoblin
raudit : ~user/bin : raudit.pl
l5 : 編譯所在目錄 : l5
你要明白有很多種可能!這軟件或數據庫甚至可能放在一個正常情況下不被mount的盤上或者在其他主機export的NFS分區上.也可能checksum數據庫是儲存在一個寫保護的介質上的.各種可能性都有!但一般情況下你只要檢查上述軟件是否被安裝就可以了,如果沒有的話,你就可以改變某些二進制文件.如果你沒有找到那些軟件,但你又知道這是一個進行了完善安全保護的站點的話,你就不應該改變二進制文件!它們(二進制檢查軟件)肯定被藏在什么地方了.
如果你發現了這種軟件被安裝并且你可以修改它們(比如不是放在只讀介質上,或者可以通過一些辦法繞過限制 - 比如umount該盤然后重新mount成可寫的)的話,你該怎么做呢?你有兩種選擇:首先你可以只檢查軟件的參數,然后對已經修改過的二進制文件執行一次"update"檢查.比如用tripwire的話你可以執行" tripwire -update /bin/target ".第二種辦法是你可以編輯要被檢查的二進制文件名單 - 從中刪除你改動過的二進制文件名.注意你也應當看看是不是連數據庫文件自身也會被檢查!如果是的話 - 先update再刪除數據庫文件名.
* 8. 注意某些用戶的安全陷阱(詭計?) *
這種情況較少發生,這里提出來主要是為了討論的更完全.一些用戶(可能是管理員或者hacker)通常不象他自己的帳戶被別人使用.所以他們有時候會在他們的啟動文件里采取一點安全措施.
所以要檢查所有的以"."開頭的文件(.profile,.cshrc,.login,.logout 等等),看看他們執行了什么命令,記錄了些什么東西,以及他們的搜索路徑是怎么攝制的.如果某個目錄(比如HOME/bin)出現在/bin的前面,你就應該檢查一下那個目錄的內容了...也許里面裝了個程序"ls"或者"w",它會先記錄被執行的時間然后再執行真正的程序也許還有些程序用來自動檢查wtmp和lastlog文件是否被zap處理過,檢查.rhosts,.Xauthority文件,或是否有sniffer正在運行...千萬不要使用一個unix高手的帳號!
* 9. 其他 *
最后,在討論受懷疑或被捕的話題之前,還有一些其他的事情值得引起注意.老的telnet client會export USER變量.一個了解這一點的系統管理員可以編輯telnetd,從而得到所有(通過telnet登錄進來的)用戶名.一旦他注意到你,他就可以很容易的得知你是從(遠方主機的)哪個帳號hack進來的.新的client(客戶端程序)已經解決了了這一問題 -但是一個聰明的管理員仍然可以得到其他的信息以鑒別用戶:UID,MAIL,HOME變量,這些變量仍然被export,這就可以很容易得鑒別 hacker使用的是哪個帳戶.因此在你進行telnet前,記得要改變USER,UID,MAIL和HOME變量,如果你正處在home目錄下的話也許甚至要改變PWD變量.
在HP Unix(版本低于v10)中你可以建立隱藏目錄.我不是說那些以"."開頭的目錄而是一些有特殊標志的目錄.HP在v9版推出了它,但從v10版本以后就去除了(因為只有hacker才是用它 ;-).
如果你執行"chmod +H directory",則directory目錄就不能用"ls -al"列出.為了看這個隱藏目錄,你需要為ls增加 -H 參數,例如:"ls -alH".
無論什么時候,當你需要改變文件的日期時,記住你能用"touch"命令設置atime和mtime.你只能通過直接的硬盤讀寫來設置ctime.
如果你在一個重要系統中安裝了sniffer,一定要加密sniffer的輸出或者讓sniffer通過icmp或者udp將所有被截獲的數據發送到一個由你控制的外部主機.為什么要這樣做?因為這樣即使管理員發現了sniffer(通過cpm或其他檢查sniffer存在的程序),他們也不能從sniffer log中得知哪些東西被sniff了,所以他也不能即使提醒正被你sniff的主機.
V. 當你被懷疑時...
----------------------------------------------------------------------
一旦你受到懷疑(被警察或是系統管理員)你應該采取些特別的行動是他們不能得到不利你的
證據.
注意 : 如果系統管理員認為你是個hacker,你就是有罪的直到你被證明是無辜的!這些管理員根本不理會什么法律(有時候我認為hacker與管理員的不同僅僅在于那臺計算機屬于管理員而已).當他們認為你是個hacker的時候,你就是有罪的,沒有律師為你辯護.他們會監視你,你的郵件,文件,甚至記錄你的鍵盤(如果他們夠利害的話).當警察被牽扯進來的時候,你的電話線也可能被監聽,搜捕行動也許跟著就來了.
如果你注意到你正受到懷疑,一定要保持低調!不要采取任何攻擊性行動!最好是等上至少1到2個月,什么都不做.警告你的朋友不要給你發任何郵件,或者只發一些正常的/無害的郵件.如果你突然采用PGP加密郵件,這會提醒正在監視的警察和管理員---你發現他們的監視了.切斷與
hacking有關的聯系,寫點兒文章或者編編程序,一直等到一切都過去.及主要加密你的敏感數
據,銷毀所有記有帳號數據,電話號碼等等的紙張.當警察搜捕你的時候,那些東西是他們要找的
最重要的東西.
VI. 被捕
----------------------------------------------------------------------
Note that this small chapter covers only the ethics and basics and
hasn't got any references to current laws - because they are different
for every country.
Now we talking about the stuff you should/shouldn't do once the feds
visited you. There are two *very* important things you have to do :
1) GET A LAWYER IMMEDEANTELY !
The lawyer should phone the judge and appeal against the search
warrant. This doesn't help much but may hinder them in their work.
The lawyer should tell you everything you need to know what the
feds are allowed to do and what not.
The lawyer should write a letter to the district attorney and/or
police to request the computers back as fast as possible because
they are urgently needed to do business etc.
As you can see it is very useful to have got a lawyer already
by hand instead of searching for one after the raid.
2) NEVER TALK TO THE COPS !
The feds can't promise you anything. If they tell you, you'll get
away if you talk, don't trust them! Only the district attorney
has got the power to do this. The cops just want to get all
information possible. So if you tell them anything they'll have
got more information from and against you.
You should *always* refuse to give evidence - tell them that you
will only talk with them via your lawyer.
Then you should make a plan with your lawyer how to get you out of this
shit and reduce the damage.
But please keep in mind : don't betray your friends. Don't tell them
any secrets. Don't blow up the scene.
If you do, that's a boomerang : the guys & scene will be very angry
and do revenge, and those guys who'll be caught because of your
evidence will also talk ... and give the cops more information about
*your* crimes!
Note also that once you are caught you get blamed for everything which
happened on that site. If you (or your lawyer) can show them that they
don't have got evidences against you for all those cases they might
have trouble to keep the picture of that "evil hacker" they'll try to
paint about you at the court. If you can even prove that you couldn't
do some of the crimes they accuse you for then your chances are even
better. When the judge sees that false accuses are made he'll suspect
that there could be more false ones and will become distrusted against
the bad prepared charges against you.
I get often asked if the feds/judge can force you to give up your
passwords for PGP, encrypted files and/or harddisks.
That's different for every country. Check out if they could force you
to open your locked safe.
If that's the case you should hide the fact that you are crypting your
data! Talk with your lawyer if it's better for you to stand against
the direction to give out the password - maybe they'd get evidences
which could you get into jail for many years.
(For german guys : THC-MAG #4 will have got an article about the german
law, as far as it concerns hacking and phreaking - that article will
be of course checked by a lawyer to be correct. Note that #4 will only
discuss germany and hence will be in the german language.
But non-germans, keep ya head up, this will be the first and last german
only magazine release ;-)
>>譯者注:這一節是講述了如果被捕,應當做些什么.由于我們的法律和西方不同,所以我就不翻了.有興趣的可以自己看一看.主要的兩點就是:1.馬上找到一個律師為你處理這一切.2.不要告訴警察任何東西,也不要出賣其他人.
VII. 有用的程序
----------------------------------------------------------------------
這里有一個你應該找到并使用的程序列表.不要給我發email問我在哪里找到它們 - 自己到
hacker世界中去找!我只列出了最好的log編輯程序(見III-4和IV-3).其他有趣的程序還有telnet重定向程序(見IV-2),但這種程序有很多,大部分只能在1-3種unix類型下編譯,所以列表沒什么用.
先節是以下幾個術語:
改變 - 將logfile中的域改成你喜歡的任意內容
刪除 - 刪除你要求的記錄項
編輯 - 真正的logfile編輯器.
重寫 - 只用0字節來重寫記錄.
不要用這樣的軟件(e.g. zap) - 它能被檢測到!
LOG 修改器
ah-1_0b.tar 改變記帳信息的記錄
clear.c 刪除utmp,wtmp,lastlog和wtmpx中的記錄
cloak2.c 改變utmp,wtmp和lastlog中的記錄.
invisible.c 用預設值重寫utmp,wtmp和lastlog
所以它比zap更好.注意看,有好多inv*.c!
marryv11.c 編輯utmp, wtmp, lastlog 和 accounting 數據 - 最好的!
wzap.c 刪除wtmp中的記錄
wtmped.c 刪除wtmp中的記錄
zap.c 重寫utmp, wtmp, lastlog - 不要用它!它會被檢測到!
I. 概述
II. 思想認識(MENTAL)
III. 基礎知識
IV. 高級技巧
V. 當你受到懷疑時...
VI. 被捕
VII. 有用的程序
VIII. 最后的話
I. 概述
----------------------------------------------------------------------
>> 譯者注:本文是德國著名hacker組織"The Hacker's Choice"的96年寫的一篇文章但今天讀來仍頗有收獲,就象他自己說的:"即使是一個很有經驗的hacker也能從這里學到一些東西".在翻譯的過程中對原文做了一些改動,也加入了一些自己的理解,
>> 不當之處,還請賜教.
warning3@hotmail.com
注意 : 本文分為兩部分.
第一部分講述了一些背景和理論知識.第二部分通過具體的實例教你一步一步了解該做什么和不該做什么.
如果你懶得看完全部文章,那就只讀第二部分吧.它主要是寫給那些Unix hack新手看的.
如果你把盡快得到最新的exploits當成最重要的事的話,那我要說-你錯了.
>> 譯者注:exploits可以理解為"漏洞",不過我并不想這么翻,翻過來總感覺怪怪的,所以我還是保留了原文.文中還有一些地方也是如此處理,不再一一注明
一旦警察沒收了你的計算機、你的所有帳戶都被取消、你的一切活動都被監視的時候,即便是最好的exploit對你又有什么用呢?我不想聽那些辯解的話.不,最重要的事應該是不要被捕!這是每個hacker都應該明白的第一件事.因為在很多情況下,特別是當你首次hack一個由于飽受入侵之苦而開始對系統安全敏感的站點時,你的第一次hack也許就將成為你最后一次hack.
所以請仔細閱讀所有章節!
即使是一個很有經驗的hacker也能從中學到一些東西.
下面是各節的簡介:
節 I - 你現在正在讀的
節 II - 思想認識
1. 動機
2. 為什么你必須要謹慎(paranoid)
3. 怎樣才能謹慎
4. 保持謹慎
節 III - 在你開始hack前應當知道的基本知識
1. 前言
2. 自身安全
3. 自己的帳戶
4. log文件
5. 不要留下痕跡
6. 你應當避免的事
節 IV - 你該了解的高級技巧
1. 前言
2. 阻止任何跟蹤
3. 找到并處理所有的log文件
4. 檢查syslog設置和log文件
5. 檢查安裝的安全程序
6. 檢查系統管理員
7. 怎樣修正checksum檢查軟件
8. 注意某些用戶的安全陷阱(詭計?)
9. 其他
節 V - 一旦你受到懷疑你該怎么做
節 VI - 當你被捕時該做的與不該做的
節 VII - 一些用于隱藏痕跡的程序的列表
節 VIII- 最后的話,作者想說的一些廢話
請仔細閱讀,開動腦筋.
II. 思想認識(MENTAL)
>> 譯者注:這一節的目的主要是提醒你樹立正確的"hack"觀 ;)
----------------------------------------------------------------------
內容: 1. 動機
2. 為什么你必須要謹慎(paranoid)
3. 怎樣才能謹慎
4. 保持謹慎
>> 譯者注:paranoid的意思是"患偏執狂的",在這里可能是當
>> "小心謹慎"來講吧.
* 1. 動機 *
不管做什么事,信念總是取得成功的一個關鍵.它是你的動力源泉,它激發你去奮斗,自我約束,小心謹慎而又面對現實,準確的估計風險,它也能讓你去做你不喜歡做但又非常重要的事情(即使你現在就想去游泳).如果你不激勵自己去編制重要工具,等候恰當的時機去攻擊目標,那你永
遠不能成為真正的hacker.
一個成功而又優秀的hacker必須滿足這些要求.它就象健身和節食---如果你真正努力去做,你就能成功.
* 2. 為什么你必須要謹慎 *
當然,小心謹慎并不會讓你的生活變得更幸福.然而如果你從不做最壞的打算,任何事情都能擊倒你,讓你失去平衡.你正在做的事會讓你冒很大風險.而在你正常的生活中你并不需要擔心警察,小偷什么的.但如果你從另一方面考慮,你要知道你正在給別人的生活帶來麻煩和惡夢--他們很
想阻止你.盡管你不認為這是犯罪.但當警察迅速逮捕每個可能被牽扯的人時,你會發現一件很悲慘的事:你是有罪的除非你能證明你無罪!一旦你得到了一個hacker的"污名",你就永遠不能將其去除.一旦你有了犯罪紀錄,你將很難找到一份工作.特別是沒有軟件公司甚至沒有與計算機有關的公司會聘用你,他們會害怕你的技術.你也許不得不移民...一旦跌倒了,能再爬起來的只是少數人.
要小心謹慎!要保護好你自己!記住你得到的一切都可能失去!絕不為做額外的反跟蹤工作而感到愚蠢!絕不為如果別人嘲笑你太謹慎而煩心!決不要因為太懶或者厭倦而放棄修改log文件!一名hacker必須%100的完成他的"工作"!
* 3. 怎樣才能小心謹慎 *
如果你讀了上面的話并且你認為那是對的,那就容易了---你已經變得小心謹慎了但這必須要變成你生活中的一部分才行,當你總是考慮究竟是誰告訴你了那些事,考慮你的電話和email可能已被監視的時候,那它已經變成你生活的一部分了.
如果上面這些還不能幫你,那么考慮一下如果你被捕會發生什么.你的女友還會站在你這邊嗎?你想看到你父母為你流淚嗎?你想丟掉飯碗或學業嗎?
不要給這一切以發生的機會!
如果這還不能警醒你:離HACKING遠點兒!!!對整個hacker社會和你的朋友來說,你都是個危險人物!
* 4. 保持謹慎 *
我希望現在你明白為什么小心謹慎的重要性了.
所以保持謹慎.一個錯誤或者一次偷懶都可能徹底毀掉你的生活和事業.在做一件事時應時刻記著你的動機是什么.
>> 譯者注:這部分是讓你知道你正在干什么及你的處境.如果你不想讓你成為無聊記者津津樂道的話題---"某地破獲重大黑客案...",那就多看看,多想想.要知道,自己是這種新聞的主角和看別人的新聞可完全不是一個感覺.所以要:謙虛謹慎,戒驕戒躁 :-)
III. 基礎知識
----------------------------------------------------------------------
內容 :
1. 前言
2. 自身安全
3. 自己的帳戶
4. log文件
5. 不要留下痕跡
6. 你應當避免的事
* 1. 前言 *
在你開始你的初次hack之前,你應當知道這些并且進行些練習.這些都是非常基本的,不知道這些你很快就會有麻煩了.即便是一名很有經驗的hacker也能從中得到一些新的提示.
* 2. 自身安全 *
系統管理員讀了你的email嗎?你的電話被警察監聽了嗎?警察沒收了你存有所有hacking數據的計算機嗎?
如果你不接收可疑的email,不在電話里談論hacking/phreaking的話題,在你的硬盤上也沒有敏感和私人數據的話,那你不必擔心上面那些情景.但那樣你就并不是一個hacker.每個hacker和phreaker都與其他人保持聯系并把他的數據保存在某個地方.
加密所有敏感數據!!!
在線硬盤加密程序是非常重要和有用的:
在internet上游很多好的免費硬盤加密程序,它們對你的操作系統來說是完全透明的.下面所列的幾個軟件都是經過測試的,是hacker's的首選工具:
- 如果你用MsDos,你可以使用SFS v1.17或者SecureDrive 1.4b
- 如果你用Amiga,你可以使用EnigmaII v1.5
- 如果你用Unix,你可以使用CFS v1.33
>> 譯者注:在win9x下可以考慮emf,iprotect...
文件加密軟件: 你可以使用任何一種加密軟件,但它應該是使用一種眾所周知的安全加密機制.絕對不要用那些被出口的加密程序,它們的有效密鑰長度被縮短了!
- Triple DES
- IDEA
- Blowfish (32 rounds)
加密你的Email!
- PGP v2.6.x 是個不錯的工具.
如果你想討論重要的事情的話,加密你的電話.
- Nautilus v1.5a 是迄今最好的
當你連到一個unix系統時加密你的終端.
一些人可能正在sniffing或者監視你的電話線:
- SSH 是最安全的
- DES-Login 也不錯
>> 譯者注:- SSL 基于SSL的一些軟件也可以一試
用強壯的不可猜測的,不在任何字典中的密碼.它應當看起來象隨機的但又容易記憶.如果密碼長度可以比10個字符更長,那就用更長的.可以從書中抽取一句話,并略作修改.請將你的hacker朋友的電話號碼加密兩遍.如果你不加密,你應當從公用電話給他打電話.
>> 譯者注:其實有個好記又難猜的密碼并不難,例如考慮句子"I'm a haxor!"可以從中抽>> 取幾個單詞組成I'mhaxor,好象沒有數字,呵呵,用"eleet"的hacker語言,haxor=h4x0r所以我們的口令可以是:I'mh4x0r(我是hacker).這樣的密碼恐怕只能用暴力破解了.
如果你對hacking有了深入了解,你應當加密所有的東西!
為你的數據做個備份,當然要先加密,把它放在一個隱秘的地方,最好不要在家里.所以即使你因為失誤,火災或警察搜捕等原因丟失了數據,你還可以得到備份數據.
只有當你真的需要它們時才寫出來,否則將它們放在一個機密文件或加密分區里更安全.一旦你不需要它們了,燒掉那些紙.你也可以用只有你自己知道的加密機制將它們寫下來,但不要告訴任何人,也別太經常的使用它.也許它很容易被分析和破解。真正沉穩和謹慎的hackers應該考慮實施干擾方案.警察,間諜,其他hacker能監視你的舉動.一個擁有先進設備的人可以獲得他想要的任何東西:
計算機發射的電子脈沖可以從100米以外的距離被截獲,可以顯示你的監視器屏幕,監聽你的私人談話,確認鍵盤敲擊時的高頻信號等等...所以各種可能性總是存在的.成本低廉的應付方法就是采用電子脈沖干擾發射機,商店里就有賣的.如果你不想讓任何人監視你,我認為這些還不夠...
>> 譯者注:不知道我們的商店里有沒有賣的.;-)
* 3. 你自己的帳戶 *
下面讓我們談談你自己的帳戶.它就是你在學校/公司/ISP那里得到的帳戶,它總是與你的真實姓名聯系在一起,所以在使用它時絕對不要違背下面的原則:
永遠不要用你的真實帳戶做任何非法或者惹人懷疑的事!永遠不要試圖從你的真實帳戶telnet到任何被hacked主機去!當然可以用這個帳號訂閱安全mailing lists.但任何與hacking有關的東西都必須加密或者立刻銷毀.決不要在你帳號下保存hacking或security工具.盡量用POP3連到你的mailserver下載或者刪除你的郵件(如果你對unix比較熟悉,還可以直接telnet到POP3端口執行下載或者刪除命令).決不要泄漏你的真實email給你不信任的人,只把它給你信任的人,他們也
應當是比較注意安全問題的人,否則如果他們被捕,下一個就是你了(或許他們根本就是警察,而不是hacker.).與其他的hacker用email交流時必須要用PGP加密,因為系統管理員經常偷看用戶目錄,甚至讀區別人的email!!其他的hacker也可能hack你們的站點并試圖得到你的數據.
絕不要用你的帳號表明你對hacking感興趣!對安全感興趣可以,但不要再進一步了.
>> 譯者注:與別人交流時可以申請免費信箱,最好是國外的,比如hotmail之類,登陸時注意最好
通過proxy.自己的真實信箱應當只用來進行一般的正常通信,與朋友/老師/同事...
* 4. LOG文件 *
有三個重要的log文件:
WTMP - 記錄每次登錄的信息,包括登陸/退出的時間,終端,登錄主機ip
UTMP - 在線用戶記錄
LASTLOG - 記錄用戶上次是從哪里登錄的
當然還有其他的log,它們將在"高級技巧"一節種討論.每次通過telnet,ftp,rlogin,rsh
的登錄都會被記錄到這些文件中.如果你正在hacking,把自己從這些記錄中刪除就是很重要的了.否則他們會:
a) 準確的發現你什么時候在搞hacking活動
b) 發現你從那個站點過來
c) 知道你在線的時間有多長,以便計算你給他們造成的損失
絕對不要刪除這些log文件!!!那等于通知管理員:"嗨,你的機器上有個hacker!".找一個好程序來修改這些log.ZAP(或ZAP2)經常被認為是最好的但事實上它并不是.它只是簡單的用0來填充用戶上次登陸的數據段.CERT已經發布了一個簡單的程序用來檢查這些全零數據項.所以這樣也會很容易就讓人知道現在有個hacker在活動,這樣你所有的工作就沒有意義了.ZAP的另外一個缺陷是當它找不到那些log文件時,它并不報告.所以在編譯之前必須先檢查一下路徑!你應該使用能改變記錄內容的程序(象cloark2.c)或者能真正刪掉記錄的程序(象clear)
>> 譯者注: THC提供的cleara.c ,clearb.c是非常好用的清除工具.可以清除utmp/utmpx,wtmp/wtmpx,修復lastlog讓其仍然顯示該用戶的上次登錄信息(而不是你登錄的信息).如果你發現你登錄后沒有顯示上次登錄信息,那很可能你的機器,可能已經被人hack了,當然,即使顯示正確的信息也未必就沒有被hack.;-)
一般來說要修改log你必須是root(有些老版本系統例外,它們將utmp/wtmp設成允許所有人可寫)但如果你不能得到root權限---你該怎么做呢?你應該rlogin到你現在所處的主機,以便在lastlog種增加一個不是那么惹人懷疑的數據項,它將在該用戶下次登錄時被顯示,如果他看到"上次從localhost登錄"的信息時也許不會懷疑.
>> 譯者注:這也是沒有辦法的辦法,換了我,我就會懷疑.;)
很多unix系統的login命令有一個bug.當你登錄以后再執行一遍login命令時,它將用你當前的終端重寫UTMP中的login from段(它顯示你是從哪里來的!)那么這些log文件缺省在什么地方呢?
這依賴于不同的Unix版本.
UTMP : /etc 或 /var/adm 或 /usr/adm 或 /usr/var/adm 或 /var/log
WTMP : /etc 或 /var/adm 或 /usr/adm 或 /usr/var/adm 或 /var/log
LASTLOG : /usr/var/adm 或 /usr/adm 或 /var/adm 或 /var/log
在一些舊unix版本中lastlog數據被寫到$HOME/.lastlog
* 5. 不要留下痕跡 *
我曾經碰到很多hacker,他們把自己從log里刪除了.但他們忘記刪掉他們在機器中留下的其他一些東西:在/tmp和$HOME中的文件Shell 記錄一些shell會保留一個history文件(依賴于環境設置)記錄你執行的命令.這對hacker來說確實是件很糟糕的事.最好的選擇就是當你登錄以后先啟動一個新shell,然后在你的$HOME中查找歷史紀錄.
歷史記錄文件:
sh : .sh_history
csh : .history
ksh : .sh_history
bash: .bash_history
zsh : .history
>> 譯者注:.*history是我最喜歡看的文件之一,通過它你可以了解root或用戶常干些什么, 從而得知他們的水平如何,如果他們只會執行"ls","pwd","cp"...那說明水平不過爾爾,無須太擔心.不過如果你發現root喜歡"find / -type f -perm -04000 -exec ls -a
l {} \;"," "vim /var/adm/messages","ps -aux( -elf) ","netstat -an"....那你就要小心一點了。
備份文件 :
dead.letter, *.bak, *
在你離開前執行一下"ls -altr"看看你有沒有留下什么不該留下的東西.你可以敲4個csh命令,它能讓你離開時刪掉這些歷史文件,不留下任何痕跡.
mv .logout save.1
echo rm .history>.logout
echo rm .logout>>.logout
echo mv save.1 .logout>>.logout
>> 譯者注:對于bash,有一個簡單的辦法就是執行一下"HISTFILE=",就是不設置bash的歷史文件,這樣就不會有討厭的.bash_history了.(準確地說,是不會往$HOME/.bash_history里寫了)
>> 或者退出的時候簡單的敲kill -9 0 ,它會殺掉這次登錄后產生的所有進程,bash也不會往.bash_history里寫
* 6. 你應當避免的事 *
不要在不屬于你的機器上crack口令.如果你在別人(比如說一所大學)的機器上破解口令,一旦root發現了你的進程,并且檢查它.那么不僅你hacking的帳號保不住了,可能連你得到的那passwd文件也沒了.那學校將會密切注視你的一舉一動...所以得到口令文件后應該在自己的機器上破解.你并不需要破解太多的帳號,能破出幾個就夠了.如果你運行攻擊/檢測程序象ypx,iss,satan或其他的exploiting程序,應當先改名再執行它們.或者你可以修改源碼改變它們在進程列表中顯示的名字...
>> 譯者注:這并不難,你只要在main()中將argv[]用你喜歡顯示的名字替代就可以了比如argv[0] ="in.telnetd",argv
=""...(當然必須在程序已經從argv中讀取了所需的參數之后).
如果某個細心的用戶/root發現5個ypx程序在后臺運行,他馬上就會明白發生了什么.當然如果可能的話不要在命令行中輸入參數.如果程序支持交互方式,象telnet.應當先敲"telnet",然后"o target.host.com"...這就不會在進程表中顯示目標主機名.
>> 譯者注:如果你用ftp,最好這樣做:
>> $ ftp -n
>> $ ftp>o target.host
>> blahblah...(一些連接信息)
>> blahblah...(ftp server版本)
>> ftp>user xxx
>> ....
如果你hack了一個系統---不要在任何地方放suid shell!最好裝一些后門象(ping,quota或者login),用fix來更正文件的atime和mtime.
>> 譯者注: 放suid shell是很蠢的,非常容易被root發現.
IV. 高級技巧
----------------------------------------------------------------------
內容 : 1. 前言
2. 阻止任何跟蹤
3. 找到并處理所有的log文件
4. 檢查syslog設置和log文件
5. 檢查安裝的安全程序
6. 檢查系統管理員
7. 怎樣修正checksum檢查軟件
8. 注意某些用戶的安全陷阱(詭計?)
9. 其他
* 1. 前言 *
一旦你裝了第一個sniffer開始你的hack生涯,你就應該知道并使用這些技巧!請運用這些技巧---否則你的hack之旅就行將結束.
* 2. 阻止任何跟蹤 *
有時候你的hacking活動會被人發現.那并不是什么大問題 - 你hacked一些站點可能會被關掉,但誰管它呢,趕緊離開就是了.但如果他們試圖跟蹤你的來路(通常是為了抓住你)的話那就很危險了!
這一節將告訴你他們跟蹤你的各種可能的方法以及你該如何應對.
* 通常對系統管理員來說發現一個hacker是從哪里來的并不是什么問題:檢查log記錄(如果那個hacker真的那么蠢的話);看看hacker安裝的sniffer的輸出記錄(也許里面也記下了他的連接)或者其他系統記帳軟件(象loginlog等等);甚至可以用netstat,顯示所有已經建立的網絡連接--如果那個hacker正在線的話,那他就被發現了.這就是為什么你需要一個gateway server(網關).
* 什么是gateway server?
它是你所"擁有"的很多服務器中的一個,你已經得到了它的root權限.你需要root權限去清除wtmp/lastlog/utmp等系統記錄或者其他一些記帳軟件的log文件.除此之外你不在這臺機器上做任何其他的事(它只是個中轉站).你應當定期更換gateway server,可以每隔1,2個星期更換一次,然后至少一個月內不再使用原來的gateway server.這樣他們就很難跟蹤到你的hacking server.
* hackin server - 所有活動的出發點你從這些機器開始hacking.Telnet(或者更好的:remsh/rsh)到一個gateway server,
然后再到一個目標機器.你需要有root權限以修改log.你必須每隔2-4個星期就更換hacking server..
* 你的堡壘/撥號主機.
這是個臨界點.一但他們能跟蹤回你撥號進入的機器,你就有麻煩了.只要打個電話給警察,再進行一次通信線路跟蹤,你的hack活動就會成為歷史了,也許是你的未來.在堡壘主機上你不需要得到root權限.既然你只是通過modem撥入,那里沒有什么必須修改的記錄.你應該每天用一個不同的帳號撥號進入,盡量用那些很少使用的.你應該找到至少2個你能撥號進去堡壘主機,每隔1-2個
月更換一次.
>> 譯者注:我對phreak不熟.我猜大部分的國內hacker還沒什么本事能躲過電信局的跟蹤.所以最好不要用別人的帳號上網,特別是那些很少上網的帳號,一旦他發現上網費用劇增,肯定會讓電信局追查的,到時候你就大難臨頭了.如果你用那些上網頻繁的人的帳號,他反倒不會注意,只會以為這個月上的太厲害了.:-)(這絕對沒有鼓勵你盜用別人帳號的意思,這等于盜竊,憑什么你
上網要別人交錢?就憑你會用john破幾個口令嗎?hacker的名聲就是讓這些打著hacker旗號的無恥之徒敗壞的.對這種人就得抓!所以我對這樣的phreaker沒有什么好感,你要真有本事,就別嫁禍別人,而且還要讓電信局查不出來.) 說多了,咱們言歸正傳.
注意: 如果你能每天撥入不同的系統(比如通過"藍盒子"),那你就不需要那些hacking server了.
* 使用藍盒子,這樣即使他們跟蹤到你的堡壘主機,也不能(至少是不能很容易地)追蹤到你的電話...使用藍盒子必須小心,德國和美國的電話公司有專門的監視系統來追蹤使用藍盒子的人...
使用一個中間系統來傳送你的電話將會使跟蹤更加困難, 但是同樣由于你使用一個pbx或其他的什么東西, 仍使你處于被抓的危險中. 這取決于你.
注意在丹麥所有的電話數據均被記錄!即使在你打完電話10年后,他們仍然能證明你曾登錄過他們的撥號系統從事hack活動...
- 其他的
如果你想運行satan,iss,ypx,nfs文件句柄猜測程序..你應當使用一個專門的服務器來完成.不要用這個服務器telnet/rlogin到目標服務器,只是用它來進行檢測.
有些程序可以bind到一個特殊端口,當一個指定到該端口的連接建立的時候,它自動打開一個連接連到另外一個服務器的某個端口(有些就模擬一個shell,你可以從這個socket daemon中"telnet"到其他機器).使用這種程序你不會被記錄(防火墻log除外).有很多程序可以幫你完
成上述功能.
>> 譯者注:這種程序我常用的有datapipe.c,telbounc.c,還是很好用的.它就象是個代理服務器,但是不會有記錄.:)
如果可能的話,hacking server或者gateway server應該在國外!因為如果你的入侵被發現,當發現你來自國外的主機時,大多數網管都會放棄追查.即使是警察要通過不同的國家追蹤你,這也至少可以拖延2-10個星期的時間...
#下面是hack過程的簡圖,也許對你有些幫助;-)
+-------+ ~---------------> +-------------+ +-----------+
|+-----+| > > | | | |
||本機 || --> > 安全撥號線路 > --> | 堡壘主機 | --> | hacki
ng |
|+-----+| > > | (至少有3個) | | server |
+-------+ ~---------------> +-------------+ +-----------+
|
|
v
+-----------------+ +--------+ +-----------+
| | | | | |
| 內部網絡中的主機| ... <-- ... |目標主機| <-- | gateway | | | | | | server | +-----------------+ +--------+ +-----------+ * 3. 找到并處理所有的LOG文件 * 找到所有的logfiles是很重要的---即使他們被隱藏.要找到它們有兩種可 能的方法: 1)找到所有打開的文件. 既然所有的log必須寫到某個地方去,所以用可以用LSOF(LiSt Open Files)程序 去檢查所有打開的文件,必要的話就得修改它們.>> 譯者注:lsof由Vic Abell 編寫,用來提供被進程打開的文件的信息,
>> 它的最新版本可以在ftp://vic.cc.purdue.edu/pub/tools/unix/lsof下找到.有趣的是,不久前有人發現lsof4.40以前的版本中存在buffer overflow問題,可以取得root權限.:-)
2) 搜索所有在你登錄后有變化的文件在你登錄后,執行"touch /tmp/check",然后可以干你的活.最后只要執行"find / -newer /tmp/check -print",并檢查找到的文件,如果其中有記帳文件,就應該修改它.注意不是所有版本的find都支持 -newer 參數.你也可以用"find / -ctime 0
-print" 或者 "find / -cmin 0 -print"來查找它們.
>> 譯者注:我更喜歡用-exec ls -l {} \;來代替-print,因為這可以列出比較詳細的信息. 注意上述方法主要是針對系統記帳軟件的,它可能會記錄你執行的命令.對于只記錄login信息的軟件,它在你看到shell提示符以前就已經完成記錄了.所以用這種檢查是查不出來的.
檢查你找到的所有的logfiles.它們一般在/usr/adm,/var/adm或者/var/log,/var/run
.
如果它們被記錄到@loghost,那你可能就有點麻煩了.你需要hack那臺loghost主機去修改log...
>> 譯者注:一般單純用作loghost的機器比較難hack,因為它往往關掉了幾乎所有端口,并且只
允許從控制臺登錄.對于這樣的機器,可以用DoS攻擊使之癱瘓,從而失去log功能.(要hack往往比較難,要crash it則相對容易一些.;-)當然,本次登陸的記錄仍然會被保存下來.
為了處理logs,你可以用"grep -v"或者用wc統計行數后,再用"tail -10 log"察看最后10行
,或者用編輯器vi,emcas.
>> 譯者注:如果你從a.b.c來,你可以用grep -v "a.b.c" logfile>logtemp;mv logtemp logfile;來清除所有含有a.b.c的行.如果log文件比較大,你也可以用vim來編輯.注意這只能用來修改文本文件!!!對二進制文件的修改可能導致文件格式被破壞!!!
如果數據文件是二進制格式的,你應當首先查明它是由什么軟件產生的,然后設法找到該軟件的源碼,分析記錄項的結構,自己編程修改記錄.(可以利用現成的程序加以修改,比如Zap,clear
cloak...).
如果系統安裝了accounting軟件.你可以用zhart寫的acct-clener---它非常有效!
如果你必須修改wtmp,但系統又不能編譯源程序也沒有perl....你可以這樣做,先uuencode
wtmp,然后運行vi,移動到最后一行,刪除最后以"M"開頭的4行...然后保存退出.uudecode
.然后最后5個wtmp記錄項就被刪除了.;-) 注意這只在SCO unix下有效,linux下是不行的.
>> 譯者注:我沒有驗證這個,因為沒有SCO服務器.如果你要這么做,記得要先做個wtmp的備份.
如果系統用wtmpx和utmpx,那你又有麻煩了..迄今我還不知道有哪個cleaner程序可以處理它們.你不得不自己編一個程序來完成工作.
>> 譯者注:wtmpx和utmpx結構與wtmp和utmp類似,只要將清除utmp和wtmp的軟件略加修改就可
>> 以了.而且現在已經不少現成的程序可以修改utmpx/wtmpx了.
* 4. 檢查SYSLOG配置和記錄 *
大部分程序都用syslog函數來記錄它們需要的所有東西.因而檢查syslogd的配置文件是很重要的.這個配置文件是/etc/syslog.conf - 我不會告訴你它的格式是什么/每一項是什么意思
,
自己去讀它的man頁.
對你來說重要的syslog類型是kern.*,auth.*和authpriv.*.看看它們被寫到哪里了,如果寫到文件里還可以修改.如果被轉發到其他主機,你必須也要hack它們.如果消息被發給某個用戶,tty或者控制臺.你能耍點小花招發很多個假消息象"echo 17:04 12-05-85 kernelsendmail[243]: can't resolve bla.bla.com > /dev/console"(或其他你想flood的的設備),讓它卷屏,以隱藏你引發的信息.這些log文件是非常非常重要的!檢查它們!
* 5. 檢查已經安裝的安全程序 *
很多注重安全的站點都通過cron運行安全檢查程序.crontabs通常在/var/spool/cron/crontabs.檢查里面所有的文件,特別是"root"文件,檢查它里面都運行了什么程序.用"crontab -l root"可以快速的檢查root crontab的內容.
這些安全工具往往裝在管理員的目錄下比如~/bin.
這些檢查軟件可能是 tiger, cops, spi, tripwire, l5,binaudit, hobgoblin, s3 等等...
你必須檢查它們都報告了些什么東西,看它們是否報告了一些顯示出你入侵跡象的東西.如果是的話,你可以 - 更新軟件的數據文件,是它們不再報告這種類型的消息.
- 可以重新編程或修改該軟件使它們不再產生報告.
- 如果可能的話,刪除你安裝的后門或其他程序,并試著用其他的方法來完成。
* 6. 檢查系統管理員 *
對你來說了解系統管理員采取了那些安全措施是非常重要的.因此你需要知道他們經常使用哪些
普通用戶帳號.你可以檢查root的.forward文件和alias內容.看看sulog文件,注意那些成功su成root的用戶.檢查group文件中的wheel和admin組(或者其他任何與管理員相關的組).你也可以
在passwd文件中查找admin,也許你又能找到一個管理員帳號.現在你應該已經知道這臺機器上誰是管理員了.進入他們的目錄(如果系統不允許root讀所有的文件,用chid.c或者changeid.c將自己的uid變成該用戶的),檢查他們的.history/.sh_history/.bash_history文件看看他們經常執行什么命令.也應當檢查他們的.profile/.login/.bash_profile文件看看里面都設置了什么alias,是否執行了什么自動安全檢查或logging程序.也檢查他們的~/bin目錄!大多數情況下被編譯的安全程序被放到那里面!當然也要看一下他們的每一個目錄(ls -alR ~/).如果你找到任何與安全有關的東西,請讀5小節以設法繞過它們的安全保護.
* 7. 怎樣修正checksum檢查軟件 *
一些管理員真得很怕hacker所以裝了一些軟件來檢查二進制文件.如果一個二進制文件被改動了,下次管理員做二進制檢查的時候,它將被檢測到.那么你怎么找到是否系統安裝了這樣的程序,又怎樣修改它們以便你能植入你的木馬程序呢?
注意有很多的二進制檢查程序,而且要寫一個也真是非常容易(15分鐘就夠了),你可以用一個
小的script完成這個工作.所以如果這樣的軟件被安裝的話要找到它們是比較困難的.注意
有些常用安全檢查程序也提供這樣的檢查.下面是一些應用得很廣泛的軟件:
軟件名 標準路徑 二進制文件名
tripwire : /usr/adm/tcheck, /usr/local/adm/tcheck : databases, tri
pwir
e
binaudit : /usr/local/adm/audit : auditscan
hobgoblin : ~user/bin : hobgoblin
raudit : ~user/bin : raudit.pl
l5 : 編譯所在目錄 : l5
你要明白有很多種可能!這軟件或數據庫甚至可能放在一個正常情況下不被mount的盤上或者在其他主機export的NFS分區上.也可能checksum數據庫是儲存在一個寫保護的介質上的.各種可能性都有!但一般情況下你只要檢查上述軟件是否被安裝就可以了,如果沒有的話,你就可以改變某些二進制文件.如果你沒有找到那些軟件,但你又知道這是一個進行了完善安全保護的站點的話,你就不應該改變二進制文件!它們(二進制檢查軟件)肯定被藏在什么地方了.
如果你發現了這種軟件被安裝并且你可以修改它們(比如不是放在只讀介質上,或者可以通過一些辦法繞過限制 - 比如umount該盤然后重新mount成可寫的)的話,你該怎么做呢?你有兩種選擇:首先你可以只檢查軟件的參數,然后對已經修改過的二進制文件執行一次"update"檢查.比如用tripwire的話你可以執行" tripwire -update /bin/target ".第二種辦法是你可以編輯要被檢查的二進制文件名單 - 從中刪除你改動過的二進制文件名.注意你也應當看看是不是連數據庫文件自身也會被檢查!如果是的話 - 先update再刪除數據庫文件名.
* 8. 注意某些用戶的安全陷阱(詭計?) *
這種情況較少發生,這里提出來主要是為了討論的更完全.一些用戶(可能是管理員或者hacker)通常不象他自己的帳戶被別人使用.所以他們有時候會在他們的啟動文件里采取一點安全措施.
所以要檢查所有的以"."開頭的文件(.profile,.cshrc,.login,.logout 等等),看看他們執行了什么命令,記錄了些什么東西,以及他們的搜索路徑是怎么攝制的.如果某個目錄(比如HOME/bin)出現在/bin的前面,你就應該檢查一下那個目錄的內容了...也許里面裝了個程序"ls"或者"w",它會先記錄被執行的時間然后再執行真正的程序也許還有些程序用來自動檢查wtmp和lastlog文件是否被zap處理過,檢查.rhosts,.Xauthority文件,或是否有sniffer正在運行...千萬不要使用一個unix高手的帳號!
* 9. 其他 *
最后,在討論受懷疑或被捕的話題之前,還有一些其他的事情值得引起注意.老的telnet client會export USER變量.一個了解這一點的系統管理員可以編輯telnetd,從而得到所有(通過telnet登錄進來的)用戶名.一旦他注意到你,他就可以很容易的得知你是從(遠方主機的)哪個帳號hack進來的.新的client(客戶端程序)已經解決了了這一問題 -但是一個聰明的管理員仍然可以得到其他的信息以鑒別用戶:UID,MAIL,HOME變量,這些變量仍然被export,這就可以很容易得鑒別 hacker使用的是哪個帳戶.因此在你進行telnet前,記得要改變USER,UID,MAIL和HOME變量,如果你正處在home目錄下的話也許甚至要改變PWD變量.
在HP Unix(版本低于v10)中你可以建立隱藏目錄.我不是說那些以"."開頭的目錄而是一些有特殊標志的目錄.HP在v9版推出了它,但從v10版本以后就去除了(因為只有hacker才是用它 ;-).
如果你執行"chmod +H directory",則directory目錄就不能用"ls -al"列出.為了看這個隱藏目錄,你需要為ls增加 -H 參數,例如:"ls -alH".
無論什么時候,當你需要改變文件的日期時,記住你能用"touch"命令設置atime和mtime.你只能通過直接的硬盤讀寫來設置ctime.
如果你在一個重要系統中安裝了sniffer,一定要加密sniffer的輸出或者讓sniffer通過icmp或者udp將所有被截獲的數據發送到一個由你控制的外部主機.為什么要這樣做?因為這樣即使管理員發現了sniffer(通過cpm或其他檢查sniffer存在的程序),他們也不能從sniffer log中得知哪些東西被sniff了,所以他也不能即使提醒正被你sniff的主機.
V. 當你被懷疑時...
----------------------------------------------------------------------
一旦你受到懷疑(被警察或是系統管理員)你應該采取些特別的行動是他們不能得到不利你的
證據.
注意 : 如果系統管理員認為你是個hacker,你就是有罪的直到你被證明是無辜的!這些管理員根本不理會什么法律(有時候我認為hacker與管理員的不同僅僅在于那臺計算機屬于管理員而已).當他們認為你是個hacker的時候,你就是有罪的,沒有律師為你辯護.他們會監視你,你的郵件,文件,甚至記錄你的鍵盤(如果他們夠利害的話).當警察被牽扯進來的時候,你的電話線也可能被監聽,搜捕行動也許跟著就來了.
如果你注意到你正受到懷疑,一定要保持低調!不要采取任何攻擊性行動!最好是等上至少1到2個月,什么都不做.警告你的朋友不要給你發任何郵件,或者只發一些正常的/無害的郵件.如果你突然采用PGP加密郵件,這會提醒正在監視的警察和管理員---你發現他們的監視了.切斷與
hacking有關的聯系,寫點兒文章或者編編程序,一直等到一切都過去.及主要加密你的敏感數
據,銷毀所有記有帳號數據,電話號碼等等的紙張.當警察搜捕你的時候,那些東西是他們要找的
最重要的東西.
VI. 被捕
----------------------------------------------------------------------
Note that this small chapter covers only the ethics and basics and
hasn't got any references to current laws - because they are different
for every country.
Now we talking about the stuff you should/shouldn't do once the feds
visited you. There are two *very* important things you have to do :
1) GET A LAWYER IMMEDEANTELY !
The lawyer should phone the judge and appeal against the search
warrant. This doesn't help much but may hinder them in their work.
The lawyer should tell you everything you need to know what the
feds are allowed to do and what not.
The lawyer should write a letter to the district attorney and/or
police to request the computers back as fast as possible because
they are urgently needed to do business etc.
As you can see it is very useful to have got a lawyer already
by hand instead of searching for one after the raid.
2) NEVER TALK TO THE COPS !
The feds can't promise you anything. If they tell you, you'll get
away if you talk, don't trust them! Only the district attorney
has got the power to do this. The cops just want to get all
information possible. So if you tell them anything they'll have
got more information from and against you.
You should *always* refuse to give evidence - tell them that you
will only talk with them via your lawyer.
Then you should make a plan with your lawyer how to get you out of this
shit and reduce the damage.
But please keep in mind : don't betray your friends. Don't tell them
any secrets. Don't blow up the scene.
If you do, that's a boomerang : the guys & scene will be very angry
and do revenge, and those guys who'll be caught because of your
evidence will also talk ... and give the cops more information about
*your* crimes!
Note also that once you are caught you get blamed for everything which
happened on that site. If you (or your lawyer) can show them that they
don't have got evidences against you for all those cases they might
have trouble to keep the picture of that "evil hacker" they'll try to
paint about you at the court. If you can even prove that you couldn't
do some of the crimes they accuse you for then your chances are even
better. When the judge sees that false accuses are made he'll suspect
that there could be more false ones and will become distrusted against
the bad prepared charges against you.
I get often asked if the feds/judge can force you to give up your
passwords for PGP, encrypted files and/or harddisks.
That's different for every country. Check out if they could force you
to open your locked safe.
If that's the case you should hide the fact that you are crypting your
data! Talk with your lawyer if it's better for you to stand against
the direction to give out the password - maybe they'd get evidences
which could you get into jail for many years.
(For german guys : THC-MAG #4 will have got an article about the german
law, as far as it concerns hacking and phreaking - that article will
be of course checked by a lawyer to be correct. Note that #4 will only
discuss germany and hence will be in the german language.
But non-germans, keep ya head up, this will be the first and last german
only magazine release ;-)
>>譯者注:這一節是講述了如果被捕,應當做些什么.由于我們的法律和西方不同,所以我就不翻了.有興趣的可以自己看一看.主要的兩點就是:1.馬上找到一個律師為你處理這一切.2.不要告訴警察任何東西,也不要出賣其他人.
VII. 有用的程序
----------------------------------------------------------------------
這里有一個你應該找到并使用的程序列表.不要給我發email問我在哪里找到它們 - 自己到
hacker世界中去找!我只列出了最好的log編輯程序(見III-4和IV-3).其他有趣的程序還有telnet重定向程序(見IV-2),但這種程序有很多,大部分只能在1-3種unix類型下編譯,所以列表沒什么用.
先節是以下幾個術語:
改變 - 將logfile中的域改成你喜歡的任意內容
刪除 - 刪除你要求的記錄項
編輯 - 真正的logfile編輯器.
重寫 - 只用0字節來重寫記錄.
不要用這樣的軟件(e.g. zap) - 它能被檢測到!
LOG 修改器
ah-1_0b.tar 改變記帳信息的記錄
clear.c 刪除utmp,wtmp,lastlog和wtmpx中的記錄
cloak2.c 改變utmp,wtmp和lastlog中的記錄.
invisible.c 用預設值重寫utmp,wtmp和lastlog
所以它比zap更好.注意看,有好多inv*.c!
marryv11.c 編輯utmp, wtmp, lastlog 和 accounting 數據 - 最好的!
wzap.c 刪除wtmp中的記錄
wtmped.c 刪除wtmp中的記錄
zap.c 重寫utmp, wtmp, lastlog - 不要用它!它會被檢測到!
防止ASP木馬在服務器上運行
[ 2007-03-25 03:31:11 | 作者: sun ]
如果您的服務器正在受ASP木馬的困擾,那么希望這篇文章能幫您解決您所面臨的問題。
目前比較流行的ASP木馬主要通過三種技術來進行對服務器的相關操作。
一、使用FileSystemObject組件
FileSystemObject可以對文件進行常規操作
可以通過修改注冊表,將此組件改名,來防止此類木馬的危害。
HKEY_CLASSES_ROOT/Scripting.FileSystemObject/改名為其它的名字,如:改為FileSystemObject_ChangeName
自己以后調用的時候使用這個就可以正常調用此組件了
也要將clsid值也改一下
HKEY_CLASSES_ROOT/Scripting.FileSystemObject/CLSID/項目的值
也可以將其刪除,來防止此類木馬的危害。
注銷此組件命令:RegSvr32 /u C:/WINNT/SYSTEM32/scrrun.dll
禁止Guest用戶使用scrrun.dll來防止調用此組件。
使用命令:cacls C:/WINNT/system32/scrrun.dll /e /d guests
二、使用WScript.Shell組件
WScript.Shell可以調用系統內核運行DOS基本命令
可以通過修改注冊表,將此組件改名,來防止此類木馬的危害。
HKEY_CLASSES_ROOT/WScript.Shell/及HKEY_CLASSES_ROOT/WScript.Shell.1/改名為其它的名字,如:改為WScript.Shell_ChangeName或WScript.Shell.1_ChangeName
自己以后調用的時候使用這個就可以正常調用此組件了
也要將clsid值也改一下
HKEY_CLASSES_ROOT/WScript.Shell/CLSID/項目的值
HKEY_CLASSES_ROOT/WScript.Shell.1/CLSID/項目的值
也可以將其刪除,來防止此類木馬的危害。
三、使用Shell.Application組件
Shell.Application可以調用系統內核運行DOS基本命令
可以通過修改注冊表,將此組件改名,來防止此類木馬的危害。
HKEY_CLASSES_ROOT/Shell.Application/
及HKEY_CLASSES_ROOT/Shell.Application.1/
改名為其它的名字,如:改為Shell.Application_ChangeName或Shell.Application.1_ChangeName
自己以后調用的時候使用這個就可以正常調用此組件了
也要將clsid值也改一下
HKEY_CLASSES_ROOT/Shell.Application/CLSID/項目的值
HKEY_CLASSES_ROOT/Shell.Application/CLSID/項目的值
也可以將其刪除,來防止此類木馬的危害。
禁止Guest用戶使用shell32.dll來防止調用此組件。
使用命令:cacls C:/WINNT/system32/shell32.dll /e /d guests
注:操作均需要重新啟動WEB服務后才會生效。
四、調用Cmd.exe
禁用Guests組用戶調用cmd.exe
cacls C:/WINNT/system32/Cmd.exe /e /d guests
通過以上四步的設置基本可以防范目前比較流行的幾種木馬,但最有效的辦法還是通過綜合安全設置,將服務器、程序安全都達到一定標準,才可能將安全等級設置較高,防范更多非法入侵。
目前比較流行的ASP木馬主要通過三種技術來進行對服務器的相關操作。
一、使用FileSystemObject組件
FileSystemObject可以對文件進行常規操作
可以通過修改注冊表,將此組件改名,來防止此類木馬的危害。
HKEY_CLASSES_ROOT/Scripting.FileSystemObject/改名為其它的名字,如:改為FileSystemObject_ChangeName
自己以后調用的時候使用這個就可以正常調用此組件了
也要將clsid值也改一下
HKEY_CLASSES_ROOT/Scripting.FileSystemObject/CLSID/項目的值
也可以將其刪除,來防止此類木馬的危害。
注銷此組件命令:RegSvr32 /u C:/WINNT/SYSTEM32/scrrun.dll
禁止Guest用戶使用scrrun.dll來防止調用此組件。
使用命令:cacls C:/WINNT/system32/scrrun.dll /e /d guests
二、使用WScript.Shell組件
WScript.Shell可以調用系統內核運行DOS基本命令
可以通過修改注冊表,將此組件改名,來防止此類木馬的危害。
HKEY_CLASSES_ROOT/WScript.Shell/及HKEY_CLASSES_ROOT/WScript.Shell.1/改名為其它的名字,如:改為WScript.Shell_ChangeName或WScript.Shell.1_ChangeName
自己以后調用的時候使用這個就可以正常調用此組件了
也要將clsid值也改一下
HKEY_CLASSES_ROOT/WScript.Shell/CLSID/項目的值
HKEY_CLASSES_ROOT/WScript.Shell.1/CLSID/項目的值
也可以將其刪除,來防止此類木馬的危害。
三、使用Shell.Application組件
Shell.Application可以調用系統內核運行DOS基本命令
可以通過修改注冊表,將此組件改名,來防止此類木馬的危害。
HKEY_CLASSES_ROOT/Shell.Application/
及HKEY_CLASSES_ROOT/Shell.Application.1/
改名為其它的名字,如:改為Shell.Application_ChangeName或Shell.Application.1_ChangeName
自己以后調用的時候使用這個就可以正常調用此組件了
也要將clsid值也改一下
HKEY_CLASSES_ROOT/Shell.Application/CLSID/項目的值
HKEY_CLASSES_ROOT/Shell.Application/CLSID/項目的值
也可以將其刪除,來防止此類木馬的危害。
禁止Guest用戶使用shell32.dll來防止調用此組件。
使用命令:cacls C:/WINNT/system32/shell32.dll /e /d guests
注:操作均需要重新啟動WEB服務后才會生效。
四、調用Cmd.exe
禁用Guests組用戶調用cmd.exe
cacls C:/WINNT/system32/Cmd.exe /e /d guests
通過以上四步的設置基本可以防范目前比較流行的幾種木馬,但最有效的辦法還是通過綜合安全設置,將服務器、程序安全都達到一定標準,才可能將安全等級設置較高,防范更多非法入侵。

