當前位置:首頁 » 問題大全 » rootkit是什麼

rootkit是什麼

發布時間: 2021-08-03 06:33:46

『壹』 Rootkit病毒是什麼

rootkit 在網路安全中經常會遇到rootkit,NSA安全和入侵檢測術語字典( NSA Glossary of Terms Used in Security and Intrusion Detection)對rootkit的定義如下:A hacker security tool that captures passwords and message traffic to and from a computer. A collection of tools that allows a hacker to provide a backdoor into a system, collect information on other systems on the network,mask the fact that the system is compromised, and much more. Rootkit is a classic example of Trojan Horse software. Rootkit is available for a wide range of operating systems.
好多人有一個誤解,他們認為rootkit是用作獲得系統root訪問許可權的工具。實際上,rootkit是攻擊者用來隱藏自己的蹤跡和保留root訪問許可權的工具。通常,攻擊者通過遠程攻擊獲得root訪問許可權,或者首先密碼猜測或者密碼強制破譯的方式獲得系統的訪問許可權。進入系統後,如果他還沒有獲得root許可權,再通過某些安全漏洞獲得系統的root許可權。接著,攻擊者會在侵入的主機中安裝rootkit,然後他將經常通過rootkit的後門檢查系統是否有其他的用戶登錄,如果只有自己,攻擊者就開始著手清理日誌中的有關信息。通過rootkit的嗅探器獲得其它系統的用戶和密碼之後,攻擊者就會利用這些信息侵入其它的系統。
什麼是rootkit
Rootkit是指其主要功能為隱藏其他程式進程的軟體,可能是一個或一個以上的軟體組合;廣義而言,Rootkit也可視為一項技術。最早Rootkit用於善意用途,但後來Rootkit也被黑客用在入侵和攻擊他人的電腦系統上,電腦病毒、間諜軟體等也常使用Rootkit來隱藏蹤跡,因此Rootkit已被大多數的防毒軟體歸類為具危害性的惡意軟體。Linux、Windows、Mac OS等操作系統都有機會成為Rootkit的受害目標。
[1]Rootkit出現於二十世紀90年代初,在1994年2月的一篇安全咨詢報告中首先使用了rootkit這個名詞。這篇安全咨詢就是CERT-CC的CA-1994-01,題目是Ongoing Network Monitoring Attacks,最新的修訂時間是1997年9月19日。從出現至今,rootkit的技術發展非常迅速,應用越來越廣泛,檢測難度也越來越大。
rootkit介紹Rootkit是一種奇特的程序,它具有隱身功能:無論靜止時(作為文件存在),還是活動時,(作為進程存在),都不會被察覺。換句話說,這種程序可能一直存在於我們的計算機中,但我們卻渾然不知,這一功能正是許多人夢寐以求的——不論是計算機黑客,還是計算機取證人員。黑客可以在入侵後置入Rootkit,秘密地窺探敏感信息,或等待時機,伺機而動;取證人員也可以利用Rootkit實時監控嫌疑人員的不法行為,它不僅能搜集證據,還有利於及時採取行動。!
一、背景知識
我們通常所說的智能機器,大至超級計算機,中到個人PC,小至智能手機,通常都有兩部分組成:硬體和軟體。並且,設備的智能是通過軟體來實現的。所有軟體中,有一種是必不可少的,那就是操作系統。操作系統可以簡單理解為一組高度復用的核心程序,一方面,它要管理低層的硬體設備,另一方面,為上層其它程序提供一個良好的運行環境。真是同人不同命,同為軟體,操作系統卻享有至高無上的特權:它不僅管理硬體,而且其他所有軟體也都受制於它。
因為在應用程序和硬體之間隔著操作系統,所以應用程序不能直接訪問硬體,而是通過調用操作系統提供的介面來使用硬體。也就是說,對應用程序而言,硬體是不可見的。當然,凡事是沒有絕對的,應用程序繞過操作系統來直接訪問硬體也不是不可能的,但這樣做會付出高昂的代價。設想一個軟體開發商在開發一款功能豐富的軟體,功能本身就夠他頭痛得了,現在他還得操心某個數據在某個磁軌的某個簇上,某個字元在某品牌顯示器上的顏色的二進制代碼等等繁瑣的事情,不用說財力和物力,單說開發周期就是無法容忍的。所以,現在的應用程序都是使用操作系統提供的簡單明了的服務來訪問系統的,因為畢竟沒有誰願意自討苦吃。
二、內核的主要功能
從上文中我們已經了解,內核在系統中處於核心樞紐的地位,下面我們具體介紹內核中與Rootkit緊密相關的幾個主要功能,更重要的是這些功能對Rootkit的意義所在:
進程管理。進程可以簡單理解為運行中的程序,它需要佔用內存、CPU時間等系統資源。現在的操作系統大多支持多用戶多任務,也就是說系統要並行運行多個程序。為此,內核不僅要有專門代碼來負責為進程或線程分配CPU時間,另一方面還要開辟一段內存區域存放用來記錄這些進程詳細情況的數據結構。內核是怎麼知道系統中有多少進程、各進程的狀態等信息的?就是通過這些數據結構,換句話說它們就是內核感知進程存在的依據。因此,只要修改這些數據結構,就能達到隱藏進程的目的。
文件訪問。文件系統是操作系統提供的最為重要的功能之一。內核中的驅動程序把設備的柱面、扇區等原始結構抽象成為更加易用的文件系統,並提供一個一致的介面供上層程序調用。也就是說,這部分代碼完全控制著對硬碟的訪問,通過修改內核的這部分代碼,攻擊者能夠隱藏文件和目錄。
安全控制。對大部分操作系統來說,因為系統中同時存在多個進程,為了避免各進程之間發生沖突,內核必須對各進程實施有效的隔離措施。比如,在MS-Windows系統中,每個進程都被強制規定了具體的許可權和單獨的內存范圍。因此,對攻擊者而言,只要對內核中負責安全事務的代碼稍事修改,整個安全機制就會全線崩潰。
內存管理。現在的硬體平台(比如英特爾的奔騰系列處理器)的內存管理機制已經復雜到可以將一個內存地址轉換成多個物理地址的地步。舉例來說,進程A按照地址 0x0030030讀取內存,它得到值的是「飛機」;然而,進程B也是按照同樣的地址0x0030030來讀取內存,但它取得的值卻是「大炮」。像上面這樣,同一個地址指向截然不同的兩個物理內存位置,並且每個位置存放不同的數據這種現象並不足以為怪——只不過是兩個進程對虛擬地址到物理地址進行了不同的映射而已。如果這一點利用好了,我們可以讓Rootkit躲避調試程序和取證軟體的追蹤。
上面介紹了內核的主要功能,以及它們對 Rootkit的重大意義。說到這里,我們就要切入正題了,即:只要我們顛覆(即修改)了操作系統的核心服務(即內核),那麼整個系統包括各種應用就完全處於我們的掌控之下了。要想顛覆內核,前提條件是能把我們的代碼導入內核。
其中針對SunOS和Linux兩種操作系統的rootkit最多(樹大招風:P)。所有的rootkit基本上都是由幾個獨立的程序組成的,一個典型rootkit包括:
1 乙太網嗅探器程程序,用於獲得網路上傳輸的用戶名和密碼等信息。
2 特洛伊木馬程序,例如:inetd或者login,為攻擊者提供後門。
3 隱藏攻擊者的目錄和進程的程序,例如:ps、netstat、rshd和ls等。
4 可能還包括一些日誌清理工具,例如:zap、zap2或者z2,攻擊者使用這些清理工具刪除wtmp、utmp和lastlog等日誌文件中有關自己行蹤的條目。
一些復雜的rootkit還可以向攻擊者提供telnet、shell和finger等服務。
還包括一些用來清理/var/log和/var/adm目錄中其它文件的一些腳本。
攻擊者使用rootkit中的相關程序替代系統原來的ps、ls、netstat和df等程序,使系統管理員無法通過這些工具發現自己的蹤跡。接著使用日誌清理工具清理系統日誌,消除自己的蹤跡。然後,攻擊者會經常地通過安裝的後門進入系統查看嗅探器的日誌,以發起其它的攻擊。如果攻擊者能夠正確地安裝rootkit並合理地清理了日誌文件,系統管理員就會很難察覺系統已經被侵入,直到某一天其它系統的管理員和他聯系或者嗅探器的日誌把磁碟全部填滿,他才會察覺已經大禍臨頭了。但是,大多數攻擊者在清理系統日誌時不是非常小心或者乾脆把系統日誌全部刪除了事,警覺的系統管理員可以根據這些異常情況判斷出系統被侵入。不過,在系統恢復和清理過程中,大多數常用的命令例如ps、df和ls已經不可信了。許多rootkit中有一個叫做FIX的程序,在安裝rootkit之前,攻擊者可以首先使用這個程序做一個系統二進制代碼的快照,然後再安裝替代程序。FIX能夠根據原來的程序偽造替代程序的三個時間戳(atime、ctime、mtime)、date、permission、所屬用戶和所屬用戶組。如果攻擊者能夠准確地使用這些優秀的應用程序,並且在安裝rootkit時行為謹慎,就會讓系統管理員很難發現。
LINUX ROOTKIT IV
前面說過,大部分rootkit是針對Linux和SunOS的,下面我們介紹一個非常典型的針對Linux系統的rootkit--Linux Rootkit IV。Linux Rootkit IV是一個開放源碼的rootkit,是Lord Somer編寫的,於1998年11月發布。不過,它不是第一個Linux Rootkit,在它之前有lrk、lnrk、lrk2和lrk3等Linux Rootkit。這些rootkit包括常用的rootkit組件,例如嗅探器、日誌編輯/刪除工具、和後門程序的。
經過這么多年的發展,Linux Rootkit IV功能變的越來越完善,具有的特徵也越來越多。不過,雖然它的代碼非常龐大,卻非常易於安裝和使用,只要執行make install就可以成功安裝。如果你還要安裝一個shadow工具,只要執行make shadow install就可以了。注意:Linux Rootkit IV只能用於Linux 2.x的內核。下面我們簡單地介紹一下Linux Rootkit IV包含的各種工具,詳細的介紹請參考其發布包的README文件。
隱藏入侵者行蹤的程序
為了隱藏入侵者的行蹤,Linux Rootkit IV的作者可謂煞費心機,編寫了許多系統命令的替代程序,使用這些程序代替原由的系統命令,來隱藏入侵者的行蹤。這些程序包括:
ls、find、
這些程序會阻止顯示入侵者的文件以及計算入侵者文件佔用的空間。在編譯之前,入侵者可以通過ROOTKIT_FILES_FILE設置自己的文件所處的位置,默認是/dev/ptyr。注意如果在編譯時使用了SHOWFLAG選項,就可以使用ls -/命令列出所有的文件。這幾個程序還能夠自動隱藏所有名字為:ptyr、hack.dir和W4r3z的文件。
ps、top、pidof
這幾個程序用來隱藏所有和入侵者相關的進程。
netstat
隱藏出/入指定IP地址或者埠的網路數據流量。
killall
不會殺死被入侵者隱藏的進程。
ifconfig
如果入侵者啟動了嗅探器,這個程序就阻止PROMISC標記的顯示,使系統管理員難以發現網路介面已經處於混雜模式下。
crontab
隱藏有關攻擊者的crontab條目。
tcpd
阻止向日誌中記錄某些連接
syslogd
過濾掉日誌中的某些連接信息
木馬程序
為本地用戶提供後門,包括:
chfn
提升本地普通用戶許可權的程序。運行chfn,在它提示輸入新的用戶名時,如果用戶輸入rookit密碼,他的許可權就被提升為root。默認的rootkit密碼是satori。
chsh
也是一個提升本地用戶許可權的程序。運行chsh,在它提示輸入新的shell時,如果用戶輸入rootkit密碼,他的許可權就被提升為root。
passwd
和上面兩個程序的作用相同。在提示你輸入新密碼時,如果輸入rookit密碼,許可權就可以變成root。
login
允許使用任何帳戶通過rootkit密碼登錄。如果使用root帳戶登錄被拒絕,可以嘗試一下rewt。當使用後門時,這個程序還能夠禁止記錄命令的歷史記錄。
木馬網路監控程序
這些程序為遠程用戶提供後門,可以向遠程用戶提供inetd、rsh、ssh等服務,具體因版本而異。隨著版本的升級,Linux Rootkit IV的功能也越來越強大,特徵也越來越豐富。一般包括如下網路服務程序:
inetd
特洛伊inetd程序,為攻擊者提供遠程訪問服務。
rshd
為攻擊者提供遠程shell服務。攻擊者使用rsh -l rootkitpassword host command命令就可以啟動一個遠程root shell。
sshd
為攻擊者提供ssh服務的後門程序。
工具程序
所有不屬於以上類型的程序都可以歸如這個類型,它們實現一些諸如:日誌清理、報文嗅探以及遠程shell的埠綁定等功能,包括:
fix
文件屬性偽造程序
linsniffer
報文嗅探器程序。
sniffchk
一個簡單的bash shell腳本,檢查系統中是否正有一個嗅探器在運行。
wted
wtmp/utmp日誌編輯程序。你可以使用這個工具編輯所有wtmp或者utmp類型的文件。
z2
utmp/wtmp/lastlog日誌清理工具。可以刪除utmp/wtmp/lastlog日誌文件中有關某個用戶名的所有條目。不過,如果用於Linux系統需要手工修改其源代碼,設置日誌文件的位置。
bindshell rootkit
在某個埠上綁定shell服務,默認埠是12497。為遠程攻擊者提供shell服務。
如何發現rootkit
很顯然,只有使你的網路非常安全讓攻擊者無隙可乘,才能是自己的網路免受rootkit的影響。不過,恐怕沒有人能夠提供這個保證,但是在日常的網路管理維護中保持一些良好的習慣,能夠在一定程度上減小由rootkit造成的損失,並及時發現rootkit的存在。
首先,不要在網路上使用明文傳輸密碼,或者使用一次性密碼。這樣,即使你的系統已經被安裝了rootkit,攻擊者也無法通過網路監聽,獲得更多用戶名和密碼,從而避免入侵的蔓延。
使用Tripwire和aide等檢測工具能夠及時地幫助你發現攻擊者的入侵,它們能夠很好地提供系統完整性的檢查。這類工具不同於其它的入侵檢測工具,它們不是通過所謂的攻擊特徵碼來檢測入侵行為,而是監視和檢查系統發生的變化。Tripwire首先使用特定的特徵碼函數為需要監視的系統文件和目錄建立一個特徵資料庫,所謂特徵碼函數就是使用任意的文件作為輸入,產生一個固定大小的數據(特徵碼)的函數。入侵者如果對文件進行了修改,即使文件大小不變,也會破壞文件的特徵碼。利用這個資料庫,Tripwire可以很容易地發現系統的變化。而且文件的特徵碼幾乎是不可能偽造的,系統的任何變化都逃不過Tripwire的監視(當然,前提是你已經針對自己的系統做了准確的配置:P,關於Tripwire和aide的使用請參考本站的相關文章)。最後,需要能夠把這個特徵碼資料庫放到安全的地方。
Rootkit 是一種特殊類型的 malware(惡意軟體)。Rootkit 之所以特殊是因為您不知道它們在做什麼事情。Rootkit 基本上是無法檢測到的,而且幾乎不可能刪除它們。雖然檢測工具在不斷增多,但是惡意軟體的開發者也在不斷尋找新的途徑來掩蓋他們的蹤跡。
Rootkit 的目的在於隱藏自己以及其他軟體不被發現。它可以通過阻止用戶識別和刪除攻擊者的軟體來達到這個目的。Rootkit 幾乎可以隱藏任何軟體,包括文件伺服器、鍵盤記錄器、Botnet 和 Remailer。許多 Rootkit 甚至可以隱藏大型的文件集合並允許攻擊者在您的計算機上保存許多文件,而您無法看到這些文件。
Rootkit 本身不會像病毒或蠕蟲那樣影響計算機的運行。攻擊者可以找出目標系統上的現有漏洞。漏洞可能包括:開放的網路埠、未打補丁的系統或者具有脆弱的管理員密碼的系統。在獲得存在漏洞的系統的訪問許可權之後,攻擊者便可手動安裝一個 Rootkit。這種類型的偷偷摸摸的攻擊通常不會觸發自動執行的網路安全控制功能,例如入侵檢測系統。
找出 Rootkit 十分困難。有一些軟體包可以檢測 Rootkit。這些軟體包可劃分為以下兩類:基於簽名的檢查程序和基於行為的檢查程序。基於簽名(特徵碼)的檢查程序,例如大多數病毒掃描程序,會檢查二進制文件是否為已知的 Rootkit。基於行為的檢查程序試圖通過查找一些代表 Rootkit 主要行為的隱藏元素來找出 Rootkit。一個流行的基於行為的 Rootkit 檢查程序是 Rootkit Revealer.
在發現系統中存在 Rootkit 之後,能夠採取的補救措施也較為有限。由於 Rootkit 可以將自身隱藏起來,所以您可能無法知道它們已經在系統中存在了多長的時間。而且您也不知道 Rootkit 已經對哪些信息造成了損害。對於找出的 Rootkit,最好的應對方法便是擦除並重新安裝系統。雖然這種手段很嚴厲,但是這是得到證明的唯一可以徹底刪除 Rootkit 的方法。
防止 Rootkit 進入您的系統是能夠使用的最佳辦法。為了實現這個目的,可以使用與防範所有攻擊計算機的惡意軟體一樣的深入防衛策略。深度防衛的要素包括:病毒掃描程序、定期更新軟體、在主機和網路上安裝防火牆,以及強密碼策略等。

『貳』 什麼是Rootkit掃描

Rootkit基本是由幾個獨立程序組成,一個典型rootkit包括: 乙太網嗅探器程序,用於獲得網路上傳輸的用戶名和密碼等信息。 特洛伊木馬程序,為攻擊者提供後門。 隱藏攻擊者目錄和進程的程序。還包括一些日誌清理工具,攻擊者用其刪除wtmp、utmp和lastlog等日誌文件中有關自己行蹤的條目。 復雜的rootkit還可以向攻擊者提供telnet、shell和finger等服務。還包括一些用來清理/var/log和/var/adm目錄中其它文件的腳本。 目前已經有很多針對Rootkit的專殺工具 卡巴斯基中的rootkit掃描就是其中之一

『叄』 什麼是 Rootkit 中文翻譯是什麼

rootkit是攻擊者用來隱藏自己的蹤跡和保留root訪問許可權的工具。通常,攻擊者通過遠程攻擊獲得root訪問許可權,或者首先密碼猜測或者密碼強制破譯的方式獲得系統的訪問許可權。進入系統後,如果他還沒有獲得root許可權,再通過某些安全漏洞獲得系統的root許可權。接著,攻擊者會在侵入的主機中安裝rootkit,然後他將經常通過rootkit的後門檢查系統是否有其他的用戶登錄,如果只有自己,攻擊者就開始著手清理日誌中的有關信息。通過rootkit的嗅探器獲得其它系統的用戶和密碼之後,攻擊者就會利用這些信息侵入其它的系統。

什麼是rootkit

Rootkit出現於二十世紀90年代初,在1994年2月的一篇安全咨詢報告中首先使用了rootkit這個名詞。這篇安全咨詢就是CERT-CC的CA-1994-01,題目是Ongoing Network Monitoring Attacks,最新的修訂時間是1997年9月19日。從出現至今,rootkit的技術發展非常迅速,應用越來越廣泛,檢測難度也越來越大。其中針對SunOS和Linux兩種操作系統的rootkit最多(樹大招風:P)。所有的rootkit基本上都是由幾個獨立的程序組成的,一個典型rootkit包括:

乙太網嗅探器程程序,用於獲得網路上傳輸的用戶名和密碼等信息。

特洛伊木馬程序,例如:inetd或者login,為攻擊者提供後門。

隱藏攻擊者的目錄和進程的程序,例如:ps、netstat、rshd和ls等。

可能還包括一些日誌清理工具,例如:zap、zap2或者z2,攻擊者使用這些清理工具刪除wtmp、utmp和lastlog等日誌文件中有關自己行蹤的條目。

一些復雜的rootkit還可以向攻擊者提供telnet、shell和finger等服務。

還包括一些用來清理/var/log和/var/adm目錄中其它文件的一些腳本。

攻擊者使用rootkit中的相關程序替代系統原來的ps、ls、netstat和df等程序,使系統管理員無法通過這些工具發現自己的蹤跡。接著使用日誌清理工具清理系統日誌,消除自己的蹤跡。然後,攻擊者會經常地通過安裝的後門進入系統查看嗅探器的日誌,以發起其它的攻擊。如果攻擊者能夠正確地安裝rootkit並合理地清理了日誌文件,系統管理員就會很難察覺系統已經被侵入,直到某一天其它系統的管理員和他聯系或者嗅探器的日誌把磁碟全部填滿,他才會察覺已經大禍臨頭了。但是,大多數攻擊者在清理系統日誌時不是非常小心或者乾脆把系統日誌全部刪除了事,警覺的系統管理員可以根據這些異常情況判斷出系統被侵入。不過,在系統恢復和清理過程中,大多數常用的命令例如ps、df和ls已經不可信了。許多rootkit中有一個叫做FIX的程序,在安裝rootkit之前,攻擊者可以首先使用這個程序做一個系統二進制代碼的快照,然後再安裝替代程序。FIX能夠根據原來的程序偽造替代程序的三個時間戳(atime、ctime、mtime)、date、permission、所屬用戶和所屬用戶組。如果攻擊者能夠准確地使用這些優秀的應用程序,並且在安裝rootkit時行為謹慎,就會讓系統管理員很難發現。

LINUX ROOTKIT IV

前面說過,大部分rootkit是針對Linux和SunOS的,下面我們介紹一個非常典型的針對Linux系統的rootkit--Linux Rootkit IV。Linux Rootkit IV是一個開放源碼的rootkit,是Lord Somer編寫的,於1998年11月發布。不過,它不是第一個Linux Rootkit,在它之前有lrk、lnrk、lrk2和lrk3等Linux Rootkit。這些rootkit包括常用的rootkit組件,例如嗅探器、日誌編輯/刪除工具、和後門程序的。

經過這么多年的發展,Linux Rootkit IV功能變的越來越完善,具有的特徵也越來越多。不過,雖然它的代碼非常龐大,卻非常易於安裝和使用,只要執行make install就可以成功安裝。如果你還要安裝一個shadow工具,只要執行make shadow install就可以了。注意:Linux Rootkit IV只能用於Linux 2.x的內核。下面我們簡單地介紹一下Linux Rootkit IV包含的各種工具,詳細的介紹請參考其發布包的README文件。

隱藏入侵者行蹤的程序

為了隱藏入侵者的行蹤,Linux Rootkit IV的作者可謂煞費心機,編寫了許多系統命令的替代程序,使用這些程序代替原由的系統命令,來隱藏入侵者的行蹤。這些程序包括:

ls、find、

這些程序會阻止顯示入侵者的文件以及計算入侵者文件佔用的空間。在編譯之前,入侵者可以通過ROOTKIT_FILES_FILE設置自己的文件所處的位置,默認是/dev/ptyr。注意如果在編譯時使用了SHOWFLAG選項,就可以使用ls -/命令列出所有的文件。這幾個程序還能夠自動隱藏所有名字為:ptyr、hack.dir和W4r3z的文件。

ps、top、pidof

這幾個程序用來隱藏所有和入侵者相關的進程。

netstat

隱藏出/入指定IP地址或者埠的網路數據流量。

killall

不會殺死被入侵者隱藏的進程。

ifconfig

如果入侵者啟動了嗅探器,這個程序就阻止PROMISC標記的顯示,使系統管理員難以發現網路介面已經處於混雜模式下。

crontab

隱藏有關攻擊者的crontab條目。

tcpd

阻止向日誌中記錄某些連接

syslogd

過濾掉日誌中的某些連接信息

木馬程序

為本地用戶提供後門,包括:

chfn

提升本地普通用戶許可權的程序。運行chfn,在它提示輸入新的用戶名時,如果用戶輸入rookit密碼,他的許可權就被提升為root。默認的rootkit密碼是satori。

chsh

也是一個提升本地用戶許可權的程序。運行chsh,在它提示輸入新的shell時,如果用戶輸入rootkit密碼,他的許可權就被提升為root。

passwd

和上面兩個程序的作用相同。在提示你輸入新密碼時,如果輸入rookit密碼,許可權就可以變成root。

login

允許使用任何帳戶通過rootkit密碼登錄。如果使用root帳戶登錄被拒絕,可以嘗試一下rewt。當使用後門時,這個程序還能夠禁止記錄命令的歷史記錄。

木馬網路監控程序

這些程序為遠程用戶提供後門,可以向遠程用戶提供inetd、rsh、ssh等服務,具體因版本而異。隨著版本的升級,Linux Rootkit IV的功能也越來越強大,特徵也越來越豐富。一般包括如下網路服務程序:

inetd

特洛伊inetd程序,為攻擊者提供遠程訪問服務。

rshd

為攻擊者提供遠程shell服務。攻擊者使用rsh -l rootkitpassword host command命令就可以啟動一個遠程root shell。

sshd

為攻擊者提供ssh服務的後門程序。

工具程序

所有不屬於以上類型的程序都可以歸如這個類型,它們實現一些諸如:日誌清理、報文嗅探以及遠程shell的埠綁定等功能,包括:

fix

文件屬性偽造程序

linsniffer

報文嗅探器程序。

sniffchk

一個簡單的bash shell腳本,檢查系統中是否正有一個嗅探器在運行。

wted

wtmp/utmp日誌編輯程序。你可以使用這個工具編輯所有wtmp或者utmp類型的文件。

z2

utmp/wtmp/lastlog日誌清理工具。可以刪除utmp/wtmp/lastlog日誌文件中有關某個用戶名的所有條目。不過,如果用於Linux系統需要手工修改其源代碼,設置日誌文件的位置。

bindshell

在某個埠上綁定shell服務,默認埠是12497。為遠程攻擊者提供shell服務。

如何發現rootkit

很顯然,只有使你的網路非常安裝讓攻擊者無隙可乘,才能是自己的網路免受rootkit的影響。不過,恐怕沒有人能夠提供這個保證,但是在日常的網路管理維護中保持一些良好的習慣,能夠在一定程度上減小由rootkit造成的損失,並及時發現rootkit的存在。

首先,不要在網路上使用明文傳輸密碼,或者使用一次性密碼。這樣,即使你的系統已經被安裝了rootkit,攻擊者也無法通過網路監聽,獲得更多用戶名和密碼,從而避免入侵的蔓延。

使用Tripwire和aide等檢測工具能夠及時地幫助你發現攻擊者的入侵,它們能夠很好地提供系統完整性的檢查。這類工具不同於其它的入侵檢測工具,它們不是通過所謂的攻擊特徵碼來檢測入侵行為,而是監視和檢查系統發生的變化。Tripwire首先使用特定的特徵碼函數為需要監視的系統文件和目錄建立一個特徵資料庫,所謂特徵碼函數就是使用任意的文件作為輸入,產生一個固定大小的數據(特徵碼)的函數。入侵者如果對文件進行了修改,即使文件大小不變,也會破壞文件的特徵碼。利用這個資料庫,Tripwire可以很容易地發現系統的變化。而且文件的特徵碼幾乎是不可能偽造的,系統的任何變化都逃不過Tripwire的監視(當然,前提是你已經針對自己的系統做了准確的配置:P,關於Tripwire和aide的使用請參考本站的相關文章)。最後,需要能夠把這個特徵碼資料庫放到安全的地方。

前一段時間,寫了幾篇rootkit分析文章,這篇權且作為這一系列文章的總結,到此為止。但是在最近發布的Phrack58-0x07(Linux on-the-fly kernel patching without LKM)中實現一個直接修改內核數據結構的rootkit,因此決定寫一個續篇。:

『肆』 Rootkit是什麼東西啊啊有什麼危害啊

rootkit是黑客用來掩飾自己的入侵並獲得一台計算機或計算機網路管理員級訪問權的一套工具(程序)。入侵者在第一次獲得用戶級訪問權後就通過某個已知漏洞或破譯一個密碼在其侵入的計算機中安裝rootkit。然後這個rootkit將收集網路上其他機器的用戶id及密碼,這樣,黑客就得到了根訪問權。 Rootkit專殺www.pcav.cn。

『伍』 什麼是rootkit技術,如何利用

在我們獲得了對目標的控制權後,還想保持這種控制許可權,於是就出現了木馬後門,Rootkit之類的保護許可權的手段。首先來說一下我們常見的應用層次的木馬後門,比如我們常見的遠程式控制制類的軟體,像國外的Sub7,VNC,netbus,國內的冰河,灰鴿子,黑洞等等,這些大家都很熟悉因此就不詳細介紹了。然而此類後門的可以很容易被發現,現在的殺毒軟體大多都能輕松的查處,即使暫時查不到,用其他手段檢測也不是很困難,現在就我就給大家介紹一種比一般木馬後門潛伏的更深的一類木馬後門--Rootkit。

傳統的Rootkit是一種比普通木馬後門更為陰險的木馬後門。它主要通過替換系統文件來達到目的。這樣就會更加的隱蔽,使檢測變得比較困難。傳統的Rootkit對一系列平台均有效,但主要是針對Unix的,比如Linux,AIX,SunOs等操作系統。當然有些Rootkits可以通過替換DLL文件或更改系統來攻擊windows平台.Rootkit並不能讓你直接獲得許可權,相反它是在你通過各種方法獲得許可權後才能使用的一種保護許可權的措施,在我們獲取系統根許可權(根許可權即root許可權,是Unix系統的最高許可權)以後,Rootkits提供了一套工具用來建立後門和隱藏行跡,從而讓攻擊者保住許可權。

下面就針對Unix來講解一下傳統Rootkit的攻擊原理

RootKits是如何實現後門的呢?為了理解Rootkits後門,有必要先了解一下Unix的基本工作流程,當我們訪問Unix時(不管是本地還是遠程登陸),/bin/login程序都會運行,系統將通過/bin/login來收集並核對用戶的帳號和密碼.Rootkits使用一個帶有根許可權後門密碼的/bin/login來替換系統的/bin/login,這樣攻擊者輸入根許可權後門的密碼,就能進入系統。就算管理員更改了原來的系統密碼或者把密碼清空。我們仍能夠

使用後門密碼以根用戶身份登陸。在攻入Unix系統後,入侵者通常會進行一系列的攻擊動作,如安裝嗅探器收集重要數據,而Unix中也會有些系統文件會監視這些動作,比如ifconfig等,Rootkit當然不會束手就擒,它會同樣替換一下這些系統文件,

通常被Rootkit替換的系統程序有login,ifconfig,,find,ls,netstart,ps等。由於篇幅問題,這些系統文件的功能就不一一羅列,有興趣的讀者可以自己去查找,現在Rootkit的工具很多,裡面基本都是包含一些處理過的系統文件來代替原來的系統文件的,像tOmkit等一些Rootkit就是比較優秀的了。

防禦辦法:Rootkit如此可怕,得好好防它才行,實際上,防禦他的最有效的方法時定期的對重要系統文件的完整性進行核查,這類的工具很多,像Tripwire就是一個非常不錯的文件完整性檢查工具。一但發現遭受到Rootkit攻擊,那你就比較麻煩了,你必須完全重裝所有的系統文件部件和程序,以確保安全性.

寫到這里,戰爭似乎結束了,然而更可怕的Rootkit還沒登場,那就是更加恐怖( 這個詞一點也不誇張)的內核級Rootkit。在大多數操作系統中(各種Uni x和windows),內核是操作系統最基本的部件,它控制著對網路設備、進程、系統內存、磁碟等的訪問。例如當你打開一個文件時,打開文件的請求被發送到內核,內核負責從磁碟得到文件的比特位並運行你的文件瀏覽程序。內核級Rootkit使攻擊者獲得對系統底層的完全控制權。攻擊者可以修改你的內核,大多數內核級Rootkit都能進行執行重定向,即截獲運行某一程序的命令,將其重定向到入侵者所選中的程序並運行此程序。也就是說用戶或管理員要運行程序A,被修改過的內核假裝執行A,實際卻執行了程序B.現在就介紹一下內核級的Rootkit是如何攻擊Unix系統的

和傳統的Rootkit不同,Unix的bin/login並未被修改,但所有執行/bin/login 的請求(當登陸系統時將產生)都被重定向到攻擊者製作的隱藏文件/bin/backdoorlogin,這樣當系統管理員使用檢測傳統級別的Rootkit的方法(比如用tripwire之類的軟體檢測文件的完整性)就行不通了,因為/bin/login並沒有被改變。同樣的道理,攻擊者對其他的系統程序也進行重定,這樣你的操作實際就是按照入侵者的意願執行了。也就是說,表面上你在運行程序A,你也認為自己運行的是程序A,而實際上你運行的是入侵者設定的程序B~!

更恐怖的是,內核級Rootkit不僅僅只會進行執行重定向,許多內核級Rootkit還支持文件隱蔽。傳統的Rootkit是通過替換ls程序來實現文件的隱藏,而內核級的Rootkit則是通過對內核的修改來對ls程序欺騙,更加的陰險隱蔽。另外內核級的Rootkit還能對進程和網路進行隱藏,用戶將得不到真實的系統情況報告。

實現思路:根據系統的類型,攻擊者有不同的方法來對內核進行修改,在N種Unix系統上修改內核最簡單的方法就是利用系統本身的載入的內核模塊(LKM)的功能,因此大多數的內核級Rootkit通過利用LKM動態地將內核更新來提供新功能,新添加的模塊擴展了內核,同時對內核和其他使用內核的所有東西有了完全訪問權。

因此,許多內核級Rootkit都通過LKM來實現。安裝通過LKM實現的內核級Rootkit十分簡單。例如,在Linux上安裝Knark內核級Rootkit只需具有根許可權的入侵者輸入命令: insmod knark.o 就行了,模塊被安裝後就等著我們輸入命令了。更妙的是整個過程不需要重啟.。通過LKM 實現的Rootkit在Unix上十分流行。我們也常常會通過給windows平台打LKM補丁的方法攻擊windows.

內核級Rootkit 的幾個例子

現在有大量的內核級Rootkit可用,現在我就選幾種比較強大的來跟大家討論一下,

一、 linux 上的內核級Rootkit:Knark

Knark具有各種標準的內核級Rootkit功能,包括執行重定向,文件隱藏,進程隱藏和網路隱藏。另外,還有不少比較過癮的功能,如:

1、遠程執行:我們可以通過網路向運行Knark的機器發送一條命令,源地址是假造的,

命令被發往UDP埠53,使之表面上看起來像是DNS流量。我們就可以利用這個功能

來升級Knark,刪除系統文件或其他任何我們想做的事

2、任務攻擊:當某一進程在系統上運行時,它總是具有與UID和有效的UID(EUID)相關的許可權。另外進程還具有與文件系統UID(FSUID)相關的文件及目錄訪問權。Knark的任務攻擊能力可實時地將進程UID,EUID和FSUID改變。進程在不停止運動的情況下突然具有了新的許可權

3、隱藏混雜模式:

同一般的RootKit一樣,入侵者也會在受害者機器上運行嗅探器。我們可以用文件隱藏和進程隱藏將嗅探器隱藏起來。然而,乙太網卡會被設成混雜模式,管理員可以檢查到這一點

Knark將內核進行了修改,使之隱瞞網卡的混合模式,這將使嗅探變得更加隱秘。

4、實時進程隱藏:

Knark可以將一個正在運行的進程隱藏起來。通過發送信號31給一個進程,此進程將消失,

但仍在運行。命令kill-31 process_id將阻止內核匯報任何有關此進程的信息。進程在運行時,ps和lsof命令的使用都不能顯示此進程

5、內核模塊隱藏:Linux中的lsmod命令可以列出當前在機器上安裝的LKM.,我們自然不想讓管理員看到Knark模塊,因此Knark包含了一個單獨的模塊modhide,modhide將Knark

和自己隱藏了起來。這樣,當我們用Knark攻擊一個系統時,我們首先為Knark.o做一個insmod,然後為modhide.o做一個insmod。這樣不管誰運行lsmod命令,這些模塊都不會被發現.
二、 另一個Linux上的內核級Rootkit:Adore

同Knark一樣,Adore也是一個針對Linux的LKM RootKit. 他包含了標準的內核級Rootkit功能,如文件隱藏,進程隱藏,網路隱藏和內核模塊隱藏。我們只所以討論Adore,是因為他還有一個非常強大的功能:內置的根許可權後門。

Adore的根許可權後門可以讓我們連接到系統上並獲得根許可權的命令外殼,此功能十分直接了當 ,Adore將此功能巧妙的包含在內核模塊中了。這一招十分難破,因為管理員看不到任何文件、進程、偵聽網路埠的跡象。

防禦辦法:防禦內核級的Rootkit的根本辦法是不要讓攻擊者得到你的機器的系統的根本許可權(Unix里的root和windows里的admin),不過這看起來像廢話:),目前對內核級的Rootkit還沒有絕對的防禦體系。

現在也存在一些Rootkit自動檢測工具,但都不是很可靠.同時內核級的Rootkit也在不斷的發展中,對一些系統來說防禦它最好的辦法是使用不支持LKM的內核,Linux的內核就可以設成不支持LKM的單一內核。

『陸』 什麼是RootKit是惡意軟體

這個應該是手機root的一個內置軟體

『柒』 什麼是Rootkit掃描這項掃描都掃描什麼文件,全盤

Rootkit是一種能夠保護惡意程序不被發現的程序,一般存在於系統目錄下
詳細的可以去網路看看
我建議你使用手動刪除或者使用windows清理助手來處理,這種東西躲避查殺的能力較強。

『捌』 rootkit是什麼

什麼是rootkit

Rootkit出現於二十世紀90年代初,在1994年2月的一篇安全咨詢報告中首先使用了rootkit這個名詞。這篇安全咨詢就是CERT-CC的CA-1994-01,題目是Ongoing Network Monitoring Attacks,最新的修訂時間是1997年9月19日。從出現至今,rootkit的技術發展非常迅速,應用越來越廣泛,檢測難度也越來越大。其中針對SunOS和Linux兩種操作系統的rootkit最多(樹大招風:P)。所有的rootkit基本上都是由幾個獨立的程序組成的,一個典型rootkit包括:

乙太網嗅探器程程序,用於獲得網路上傳輸的用戶名和密碼等信息。

特洛伊木馬程序,例如:inetd或者login,為攻擊者提供後門。

隱藏攻擊者的目錄和進程的程序,例如:ps、netstat、rshd和ls等。

可能還包括一些日誌清理工具,例如:zap、zap2或者z2,攻擊者使用這些清理工具刪除wtmp、utmp和lastlog等日誌文件中有關自己行蹤的條目。

一些復雜的rootkit還可以向攻擊者提供telnet、shell和finger等服務。

還包括一些用來清理/var/log和/var/adm目錄中其它文件的一些腳本。

攻擊者使用rootkit中的相關程序替代系統原來的ps、ls、netstat和df等程序,使系統管理員無法通過這些工具發現自己的蹤跡。接著使用日誌清理工具清理系統日誌,消除自己的蹤跡。然後,攻擊者會經常地通過安裝的後門進入系統查看嗅探器的日誌,以發起其它的攻擊。如果攻擊者能夠正確地安裝rootkit並合理地清理了日誌文件,系統管理員就會很難察覺系統已經被侵入,直到某一天其它系統的管理員和他聯系或者嗅探器的日誌把磁碟全部填滿,他才會察覺已經大禍臨頭了。但是,大多數攻擊者在清理系統日誌時不是非常小心或者乾脆把系統日誌全部刪除了事,警覺的系統管理員可以根據這些異常情況判斷出系統被侵入。不過,在系統恢復和清理過程中,大多數常用的命令例如ps、df和ls已經不可信了。許多rootkit中有一個叫做FIX的程序,在安裝rootkit之前,攻擊者可以首先使用這個程序做一個系統二進制代碼的快照,然後再安裝替代程序。FIX能夠根據原來的程序偽造替代程序的三個時間戳(atime、ctime、mtime)、date、permission、所屬用戶和所屬用戶組。如果攻擊者能夠准確地使用這些優秀的應用程序,並且在安裝rootkit時行為謹慎,就會讓系統管理員很難發現。

LINUX ROOTKIT IV

前面說過,大部分rootkit是針對Linux和SunOS的,下面我們介紹一個非常典型的針對Linux系統的rootkit--Linux Rootkit IV。Linux Rootkit IV是一個開放源碼的rootkit,是Lord Somer編寫的,於1998年11月發布。不過,它不是第一個Linux Rootkit,在它之前有lrk、lnrk、lrk2和lrk3等Linux Rootkit。這些rootkit包括常用的rootkit組件,例如嗅探器、日誌編輯/刪除工具、和後門程序的。

經過這么多年的發展,Linux Rootkit IV功能變的越來越完善,具有的特徵也越來越多。不過,雖然它的代碼非常龐大,卻非常易於安裝和使用,只要執行make install就可以成功安裝。如果你還要安裝一個shadow工具,只要執行make shadow install就可以了。注意:Linux Rootkit IV只能用於Linux 2.x的內核。下面我們簡單地介紹一下Linux Rootkit IV包含的各種工具,詳細的介紹請參考其發布包的README文件。

隱藏入侵者行蹤的程序

為了隱藏入侵者的行蹤,Linux Rootkit IV的作者可謂煞費心機,編寫了許多系統命令的替代程序,使用這些程序代替原由的系統命令,來隱藏入侵者的行蹤。這些程序包括:

ls、find、

這些程序會阻止顯示入侵者的文件以及計算入侵者文件佔用的空間。在編譯之前,入侵者可以通過ROOTKIT_FILES_FILE設置自己的文件所處的位置,默認是/dev/ptyr。注意如果在編譯時使用了SHOWFLAG選項,就可以使用ls -/命令列出所有的文件。這幾個程序還能夠自動隱藏所有名字為:ptyr、hack.dir和W4r3z的文件。

ps、top、pidof

這幾個程序用來隱藏所有和入侵者相關的進程。

netstat

隱藏出/入指定IP地址或者埠的網路數據流量。

killall

不會殺死被入侵者隱藏的進程。

ifconfig

如果入侵者啟動了嗅探器,這個程序就阻止PROMISC標記的顯示,使系統管理員難以發現網路介面已經處於混雜模式下。

crontab

隱藏有關攻擊者的crontab條目。

tcpd

阻止向日誌中記錄某些連接

syslogd

過濾掉日誌中的某些連接信息

木馬程序

為本地用戶提供後門,包括:

chfn

提升本地普通用戶許可權的程序。運行chfn,在它提示輸入新的用戶名時,如果用戶輸入rookit密碼,他的許可權就被提升為root。默認的rootkit密碼是satori。

chsh

也是一個提升本地用戶許可權的程序。運行chsh,在它提示輸入新的shell時,如果用戶輸入rootkit密碼,他的許可權就被提升為root。

passwd

和上面兩個程序的作用相同。在提示你輸入新密碼時,如果輸入rookit密碼,許可權就可以變成root。

login

允許使用任何帳戶通過rootkit密碼登錄。如果使用root帳戶登錄被拒絕,可以嘗試一下rewt。當使用後門時,這個程序還能夠禁止記錄命令的歷史記錄。

木馬網路監控程序

這些程序為遠程用戶提供後門,可以向遠程用戶提供inetd、rsh、ssh等服務,具體因版本而異。隨著版本的升級,Linux Rootkit IV的功能也越來越強大,特徵也越來越豐富。一般包括如下網路服務程序:

inetd

特洛伊inetd程序,為攻擊者提供遠程訪問服務。

rshd

為攻擊者提供遠程shell服務。攻擊者使用rsh -l rootkitpassword host command命令就可以啟動一個遠程root shell。

sshd

為攻擊者提供ssh服務的後門程序。

工具程序

所有不屬於以上類型的程序都可以歸如這個類型,它們實現一些諸如:日誌清理、報文嗅探以及遠程shell的埠綁定等功能,包括:

fix

文件屬性偽造程序

linsniffer

報文嗅探器程序。

sniffchk

一個簡單的bash shell腳本,檢查系統中是否正有一個嗅探器在運行。

wted

wtmp/utmp日誌編輯程序。你可以使用這個工具編輯所有wtmp或者utmp類型的文件。

z2

utmp/wtmp/lastlog日誌清理工具。可以刪除utmp/wtmp/lastlog日誌文件中有關某個用戶名的所有條目。不過,如果用於Linux系統需要手工修改其源代碼,設置日誌文件的位置。

bindshell rootkit

在某個埠上綁定shell服務,默認埠是12497。為遠程攻擊者提供shell服務。

如何發現rootkit

很顯然,只有使你的網路非常安裝讓攻擊者無隙可乘,才能是自己的網路免受rootkit的影響。不過,恐怕沒有人能夠提供這個保證,但是在日常的網路管理維護中保持一些良好的習慣,能夠在一定程度上減小由rootkit造成的損失,並及時發現rootkit的存在。

首先,不要在網路上使用明文傳輸密碼,或者使用一次性密碼。這樣,即使你的系統已經被安裝了rootkit,攻擊者也無法通過網路監聽,獲得更多用戶名和密碼,從而避免入侵的蔓延。

使用Tripwire和aide等檢測工具能夠及時地幫助你發現攻擊者的入侵,它們能夠很好地提供系統完整性的檢查。這類工具不同於其它的入侵檢測工具,它們不是通過所謂的攻擊特徵碼來檢測入侵行為,而是監視和檢查系統發生的變化。Tripwire首先使用特定的特徵碼函數為需要監視的系統文件和目錄建立一個特徵資料庫,所謂特徵碼函數就是使用任意的文件作為輸入,產生一個固定大小的數據(特徵碼)的函數。入侵者如果對文件進行了修改,即使文件大小不變,也會破壞文件的特徵碼。利用這個資料庫,Tripwire可以很容易地發現系統的變化。而且文件的特徵碼幾乎是不可能偽造的,系統的任何變化都逃不過Tripwire的監視(當然,前提是你已經針對自己的系統做了准確的配置:P,關於Tripwire和aide的使用請參考本站的相關文章)。最後,需要能夠把這個特徵碼資料庫放到安全的地方。

『玖』 Rootkit是什麼意思

Rootkit 是一種特殊類型的 malware(惡意軟體)。Rootkit 之所以特殊是因為您不知道它們在做什麼事情。Rootkit 基本上是無法檢測到的,而且幾乎不可能刪除它們。雖然檢測工具在不斷增多,但是惡意軟體的開發者也在不斷尋找新的途徑來掩蓋他們的蹤跡。

Rootkit 的目的在於隱藏自己以及其他軟體不被發現。它可以通過阻止用戶識別和刪除攻擊者的軟體來達到這個目的。Rootkit 幾乎可以隱藏任何軟體,包括文件伺服器、鍵盤記錄器、Botnet 和 Remailer。許多 Rootkit 甚至可以隱藏大型的文件集合並允許攻擊者在您的計算機上保存許多文件,而您無法看到這些文件。

Rootkit 本身不會像病毒或蠕蟲那樣影響計算機的運行。攻擊者可以找出目標系統上的現有漏洞。漏洞可能包括:開放的網路埠、未打補丁的系統或者具有脆弱的管理員密碼的系統。在獲得存在漏洞的系統的訪問許可權之後,攻擊者便可手動安裝一個 Rootkit。這種類型的偷偷摸摸的攻擊通常不會觸發自動執行的網路安全控制功能,例如入侵檢測系統。

找出 Rootkit 十分困難。有一些軟體包可以檢測 Rootkit。這些軟體包可劃分為以下兩類:基於簽名的檢查程序和基於行為的檢查程序。基於簽名(特徵碼)的檢查程序,例如大多數病毒掃描程序,會檢查二進制文件是否為已知的 Rootkit。基於行為的檢查程序試圖通過查找一些代表 Rootkit 主要行為的隱藏元素來找出 Rootkit。一個流行的基於行為的 Rootkit 檢查程序是 Rootkit Revealer.

在發現系統中存在 Rootkit 之後,能夠採取的補救措施也較為有限。由於 Rootkit 可以將自身隱藏起來,所以您可能無法知道它們已經在系統中存在了多長的時間。而且您也不知道 Rootkit 已經對哪些信息造成了損害。對於找出的 Rootkit,最好的應對方法便是擦除並重新安裝系統。雖然這種手段很嚴厲,但是這是得到證明的唯一可以徹底刪除 Rootkit 的方法。

防止 Rootkit 進入您的系統是能夠使用的最佳辦法。為了實現這個目的,可以使用與防範所有攻擊計算機的惡意軟體一樣的深入防衛策略。深度防衛的要素包括:病毒掃描程序、定期更新軟體、在主機和網路上安裝防火牆,以及強密碼策略

熱點內容
師德師紀自查小結 發布:2025-05-14 21:09:36 瀏覽:534
中學英語下載 發布:2025-05-14 20:01:44 瀏覽:498
小蘋果舞蹈教學兒童版 發布:2025-05-14 18:06:07 瀏覽:916
高三語文卷 發布:2025-05-14 17:40:03 瀏覽:761
五年級上冊語文達標卷 發布:2025-05-14 16:38:37 瀏覽:871
鄧矮的歷史 發布:2025-05-14 15:03:50 瀏覽:621
中小學師德總結 發布:2025-05-14 14:47:39 瀏覽:720
初中教學進度 發布:2025-05-14 13:33:36 瀏覽:758
新產業化學發光儀 發布:2025-05-14 13:22:51 瀏覽:775
帶班主任的老師 發布:2025-05-14 13:20:39 瀏覽:240