Linux應急回應重點檢查項
用戶賬號審計: cat /etc/passwd & cat /etc/shadow
在線賬戶審計: w
登錄狀況審計: last
空口令賬戶審計: awk -F: '($2 == "") { print $1 }' /etc/shadow
主機配置檢查中不允許存在空口令賬戶,雖然空口令賬戶暫時沒發現利用的方式,但是不符合等級保護的基本原則,
特權賬戶審計: awk -F: '($3 ==0) { print $1 }' /etc/passwd
Linux中的特權賬號一般只有root,如果出現了除root以外的賬號則有一定風險,懷疑可能是黑客創建的后門賬號,
行程審計:ps -ef(顯示全格式所有行程) 或 ps auxfww(顯示所有行程及所有命令列
Linux行程審計是應急中重要關注點之一,大多數安全事件都會發現系統運行著惡意行程,跟蹤和分析行程是應急回應必備技能之一,
埠和行程關聯審計:lsof -p PID 或lsof -i PORT
Linux系統中惡意行程往往都會進行socket系結,在本地打開一個埠對外通信,通常懷疑某些埠運行惡意行程的時候都會做關聯分析
網路連接審計:netstat -ano | grep ESTABLISHED(查看已經建立的網路連接)或netstat -antlp | grep LISTEN(查看處于監聽狀態的埠)
網路連接也是應急程序中重點關注點之一,其中“Foreign Address”中檢查有無惡意IP(配合第三方IP信譽庫),連接狀態以及是否存在例外 socket,
計劃任務審計:crontab -l
Linux計劃任務中一般是通過cron程式去執行,黑客修改cron的目的一般是檢查是否權限維持,以及操控DDoS肉雞或者周期性對系統執行惡意操 作等目的,
系統運行狀態審計:top
木馬病毒等程式會對系統cpu、記憶體、磁盤IO、網路IO等造成一定程度影響,
arp路由表審計:arp –a
arp是地址決議協議,Linux系統的arp路由表里記錄的是mac地址與IP的映射,攻擊者往往通過修改arp映射來做中間人攻擊,
Linux日志審計:
11.Linux日志審計
1) /var/log/messages或/var/log/syslog 系統活動日志
搜索squid程式活動日志,
2)/var/log/auth.log 涉及系統授權身份驗證日志
搜索失敗的的身份驗證并結合IP來看可發現窮舉攻擊,
搜索”incomplete message”關鍵字可發現openSSH用戶名列舉攻擊,
3)/var/log/secure 主要用于跟蹤系統授權情況,存盤所有與安全相關的訊息并跟蹤系統安全服務守護行程記錄的sudo資訊、SSH登錄和其他錯誤資訊,
查看pam_unix(pam是Linux中的動態加載驗證模塊) session句柄打開的記錄,
4)/var/log/boot.log 系統啟動程序中引導資訊存盤日志
一般的安全事件很少觸發到此日志中,除少數病毒木馬等程式會對MBR做篡改,
5)/var/log/dmesg 包含內核緩沖區訊息記錄硬體設備或驅動程式相關資訊
此類日志分析較難可忽略,
6)/etc/crontab 包含計劃任務等周期性任務資訊
此類日志多容易被黑客篡改,用于執行相關計劃任務腳本, 比如黑客會每分鐘執行一次服務器上的腳本來檢查是否權限維持,
應急回應重點檢查項
相關名詞解釋:
1.windows域(Domain):
域(Domain)是Windows網路中獨立運行的單位,域之間相互訪問則需要建立信任關系(即Trust Relation),信任關系是連接在域與域之間的橋梁,當
一個域與其他域建立了信任關系后,2個域之間不但可以按需要相互進行管理,還可以跨網分配檔案和列印機等設備資源,使不同的域之間實作網路資源的共
享與管理,以及相互通信和資料傳輸,
通過命令運行
2.域控制器(Domain controller)
在“域”模式下,至少有一臺服務器負責每一臺聯入網路的電腦和用戶的驗證作業,相當于一個單位的門衛一樣,作為域控,域控制器中包含了由這
個域的賬戶、密碼、屬于這個域的計算機等資訊構成的資料庫,當電腦聯入網路時,域控制器首先要鑒別這臺電腦是否是屬于這個域的,用戶使用的登錄賬
號是否存在、密碼是否正確,如果以上資訊有一樣不正確,那么域控制器就會拒絕這個用戶從這臺電腦登錄,不能登錄,用戶就不能訪問服務器上有權限保
護的資源,他只能以對等網用戶的方式訪問Windows共享出來的資源,這樣就在一定程度上保護了網路上的資源,
3.命令提示符
在windows系統中命令提示符是一個與作業系統命令互動的程式,通過向作業系統分發命令,系統解釋執行并反饋的一個程序,類似于微軟的DOS操
作系統,
4.powershell
可以看做是命令提示符的升級版本,提供更多操作的訪問系統變數及函式的API,可只支持.NET編程,
5..NET
.NET是微軟的新一代技術平臺,為敏捷商務構建互聯互通的應用系統,這些系統是基于標準的,聯通的,適應變化的,穩定的和高性能的,從技術的
角度,一個.NET應用是一個運行于.NET Framework之上的應用程式,(更精確的說,一個.NET應用是一個使用.NET Framework類別庫來撰寫,并運行于公
共語言運行時Common Language Runtime之上的應用程式,)如果一個應用程式跟.NET Framework無關,它就不能叫做.NET程式,比如,僅僅使用了
XML并不就是.NET應用,僅僅使用SOAP SDK呼叫一個Web Service也不是.NET應用,.NET是基于Windows作業系統運行的操作平臺,應用于互聯網的分
布式,
6.批處理(batch)
批處理(Batch),也稱為批處理腳本,顧名思義,批處理就是對某物件進行批量的處理,通常被認為是一種簡化的腳本語言,它應用于DOS和Windows
系統中,批處理檔案的擴展名為bat ,目前比較常見的批處理包含兩類:DOS批處理和PS批處理,PS批處理是基于強大的圖片編輯軟體Photoshop的,用來
批量處理圖片的腳本;而DOS批處理則是基于DOS命令的,用來自動地批量 地執行DOS命令以實作特定操作的腳本,更復雜的情況,需要使用if、for、
goto等命令控制程式的運行程序,如同C、Basic等高級語言一樣,如果需要實作更復雜的應用,利用外部程式是必要的,這包括系統本身提供的外部命令和
第三方提供的工具或者軟體,批處理程式雖然是在命令列環境中運行,但不僅僅能使用命令列軟體,任何當前系統下可運行的程式都可以放在批處理檔案中
運行,
7.腳本語言(script)
腳本語言是為了縮短傳統的撰寫-編譯-鏈接-運行(edit-compile-link-run)程序而創建的計算機編程語言,它的命名起源于一個腳本
“screenplay”,每次運行都會使對話框逐字重復,早期的腳本語言經常被稱為批量處理語言或作業控制語言,
一個腳本通常是解釋執行而非編譯,腳本語言通常都有簡單、易學、易用的特性,目的就是希望能讓程式員快速完成程式的撰寫作業,而宏語言則可視為腳
本語言的分支,兩者也有實質上的相同之處,
8.注冊表(Registry,繁體中文版Windows作業系統稱之為登錄檔)
注冊表是Microsoft Windows中的一個重要的資料庫,用于存盤系統和應用程式的設定資訊,早在Windows 3.0推出OLE技術的時候,注冊表就已經
出現,隨后推出的Windows NT是第一個從系統級別廣泛使用注冊表的作業系統,但是,從Microsoft Windows 95作業系統開始,注冊表才真正成為
Windows用戶經常接觸的內容,并在其后的作業系統中繼續沿用至今,
9.行程(process)
行程(Process)是計算機中的程式關于某資料集合上的一次運行活動,是系統進行資源分配和調度的基本單位,是作業系統結構的基礎,在早期面向
行程設計的計算機結構中,行程是程式的基本執行物體;在當代面向執行緒設計的計算機結構中,行程是執行緒的容器,程式是指令、資料及其組織形式的描
述,行程是程式的物體,
10.共享檔案夾(share)
共享檔案夾是指某個計算機用來和其它計算機間相互分享的檔案夾,所謂的共享就是分享的意思,、
11.啟動項
啟動專案,就是開機的時候系統會在前臺或者后臺運行的程式,當作業系統完成登錄程序,行程表中出現了很多的行程,作業系統在啟動的時候,自動
加載了很多程式,許多程式的自啟動,給我們帶來了很多方便,這是不爭的事實,但不是每個自啟動的程式對我們都有用;更甚者,也許有病毒或木馬在自
啟動行列,
12.緩沖區溢位
緩沖區溢位(buffer overflow),是針對程式設計缺陷,向程式輸入緩沖區寫入使之溢位的內容(通常是超過緩沖區能保存的最大資料量的資料),
從而破壞程式運行、趁著中斷之際并獲取程式乃至系統的控制權,
13.中斷
中斷是指計算機運行程序中,出現某些意外情況需主機干預時,機器能自動停止正在運行的程式并轉入處理新情況的程式,處理完畢后又回傳原被暫停
的程式繼續運行,
14.API
API(Application Programming Interface,應用程式編程介面)是一些預先定義的函式,目的是提供應用程式與開發人員基于某軟體或硬體得以訪問
一組例程的能力,而又無需訪問原始碼,或理解內部作業機制的細節,
15.埠通信
隨著計算機網路技術的發展,原來物理上的介面(如鍵盤、滑鼠、網卡、顯示卡等輸入/輸出介面)已不能滿足網路通信的要求,TCP/IP協議作為網路
通信的標準協議就解決了這個通信難題,TCP/IP協議集成到作業系統的內核中,這就相當于在作業系統中引入了一種新的輸入/輸出介面技術,因為在TCP/IP
協議中引入了一種稱之為"Socket(套接字)"應用程式介面,有了這樣一種介面技術,一臺計算機就可以通過軟體的方式與任何一臺具有Socket介面的計算
機進行通信,埠在計算機編程上也就是"Socket介面",
16.蠕蟲病毒
蠕蟲病毒是一種常見的計算機病毒,它是利用網路進行復制和傳播,傳染途徑是通過網路和電子郵件,最初的蠕蟲病毒定義是因為在DOS環境下,病毒
發作時會在螢屏上出現一條類似蟲子的東西,胡亂吞吃螢屏上的字母并將其改形,蠕蟲病毒是自包含的程式(或是一套程式),它能傳播自身功能的拷貝或
自身的某些部分到其他的計算機系統中(通常是經過網路連接),
17.木馬病毒
木馬(Trojan),也稱木馬病毒,是指通過特定的程式(木馬程式)來控制另一臺計算機,木馬通常有兩個可執行程式:一個是控制端,另一個是被控制
端,木馬這個名字來源于古希臘傳說(荷馬史詩中木馬計的故事,Trojan一詞的特洛伊木馬本意是特洛伊的,即代指特洛伊木馬,也就是木馬計的故事),
“木馬”程式是目前比較流行的病毒檔案,與一般的病毒不同,它不會自我繁殖,也并不“刻意”地去感染其他檔案,它通過將自身偽裝吸參考戶下載執
行,向施種木馬者提供打開被種主機的門戶,使施種者可以任意毀壞、竊取被種者的檔案,甚至遠程操控被種主機,
18.威脅情報
什么是威脅情報,其實安全圈一直在使用著它們,漏洞庫、指紋庫、IP信譽庫,威脅情報平臺,它們都是威脅情報的一部分,情報就是線索,威脅情報
就是為了還原已發生的攻擊和預測未發生的攻擊所需要的一切線索,“所謂的威脅情報就是幫助我們發現威脅,并進行處置的相應知識,這種知識就是我們
所說的威脅情報”,
19.系統服務
系統服務(system services)是指執行指定系統功能的程式、例程或行程,以便支持其他程式,尤其是底層(接近硬體)程式,通過網路提供服務時,服務
可以在Active Directory(活動目錄)中發布,從而促進了以服務為中心的管理和使用,
20.AD(Active Directory)
AD全稱為Active Directory,是指Windows服務器作業系統中的目錄服務,Active Directory提供了一系列集中組織管理和訪問網路資源的目錄服務功
能,Active Directory還可以集中管理對網路資源的訪問,并允許用戶只登陸一次就能訪問在Active Directory上的所有資源,
21.病毒特征碼
可以代表某個病毒分類的特征的代碼段,一般是通過反匯編病毒可執行檔案,找出比較特殊的匯編代碼再反轉機器碼的十六進制數作為特征值,
22.逆向工程(又稱逆向技術)
是一種產品設計技術再現程序,即對一專案標產品進行逆向分析及研究,從而演繹并得出該產品的處理流程、組織結構、功能特性及技術規格等設計要
素,以制作出功能相近,但又不完全一樣的產品,逆向工程源于商業及軍事領域中的硬體分析,其主要目的是在不能輕易獲得必要的生產資訊的情況下,直
接從成品分析,推匯出產品的設計原理,
1.用戶賬號和組審計
1)描述:黑客通常對系統進行入侵后會添加后門賬號,所以需要審計用戶和組是否有被篡改的痕跡,
2)命令:lusrmgr.exe
3)檢查方法:查看是否有可疑的用戶名被創建,檢查是否administrators組里有可疑的賬戶被授權,
2.自啟動配置審計
1)描述:黑客修改自啟動配置通常可以在系統啟動之后加載黑客自定義腳本,
2)命令:msconfig.exe 或 wmic start up list full
3)檢查方法:檢查自啟動程式資訊,如非常規應用程式則需要定位程式位置,可配合360殺毒工具檢查,
3.例外行程審計
1)描述:行程往往都是應急回應主要關注點之一,黑客維持對外通信都會在被入侵主機中打開獨立行程,行程名經常會帶迷惑性,例如svch0st.exe(應為
svchost.exe)或exp1orer.exe(應為explorer.exe),
2)命令:taskmgr.exe中行程選單或tasklist.exe
3)檢查方法:仔細排查容易被木馬感染的系統行程,定位行程源程式位置,可配合360殺毒工具進行查殺,對不確定的其他行程通過google查詢行程功能,
有概率會獲得惡意程式的威脅情報,
4.例外服務審計
1)描述:windows服務類似Linux的守護行程,黑客通過惡意程式創建自定義服務達成可持續控制肉雞的目的,
2)命令:services.msc
3)檢查方法:對windows系統常規服務進行了解,識別病毒經常創建服務的命名規則,例如:“xxxUpdate”帶有這類關鍵字,小技巧:查看指定系統服務
的屬性,看服務描述,如果服務描述很少或者比較非官方的語言,一般比較可疑,或者查看依存關系,針對使用RPC(Remote Procedure Call)的服務要重點
關注,
5.計劃任務審計
1)描述:計劃任務是計算機周期性執行的一系列操作的管理程式,黑客也會增加自定義計劃任務來檢測連接心跳或者發動DoS攻擊等行為,
2)命令:schtasks.exe或者在控制面板>計劃任務中找到GUI模式
3)檢查方法:了解系統程式自帶的計劃任務,查看任務對應的檔案夾,對照任務創建時間,釋放檔案等資訊來判斷是否是惡意計劃任務,
6.系統運行狀態審計
1)描述:病毒木馬一般情況下會使系統CPU、記憶體、磁盤讀寫、網路IO的利用率變高,通過監控系統狀態可以發現潛在的惡意程式,
2)命令:taskmgr.exe
3)檢查方法:查看任務管理器中性能選單,跟蹤單位時間內CPU、記憶體、磁盤、網路運行情況,并打開監視器配合檢查,
6.用戶會話審計
1)描述:黑客通過3389登錄系統會創建用戶session,通過審計session查看是否有攻擊者進行遠程登錄,
2)命令:query user
3)檢查方法:輸入命令查看是否會話例外,是否存在可疑的用戶會話狀態,
7.網路連接審計
1)描述:審計網路連接可以發現攻擊者來源IP,以及開放埠、行程等資訊,
2)命令:netstat -ano
3)檢查方法:輸入命令檢查是否存在外部可疑IP處于“ESTABLISTHED”狀態,
8.本地共享審計
1)描述:早期黑客攻擊利用經典IPC$的攻擊方式批量植入肉雞,
2)命令:net share和net use
3)檢查方法:輸入net share檢查本地開放了哪些共享,輸入net use檢查是否存在被映射的網路連接,
9.組策略審計
1)描述:是微軟Windows NT家族作業系統的一個特性,它可以控制用戶帳戶和計算機帳戶的作業環境,組策略提供了作業系統、應用程式和活動目錄中用
戶設定的集中化管理和配置,組策略的其中一個版本名為本地組策略(縮寫“LGPO”或“LocalGPO”),這可以在獨立且非域的計算機上管理組策略對
象,,
2)命令:gpedit.msc
3)檢查方法:打開組策略面板,重點查看計算機配置和用戶配置中的腳本子選單,查看是否加載powershell腳本,分析腳本內容判斷是否例外等,
10.日志審計
1)描述:windows日志包含系統日志,安全日志、應用日志等,通常通過windows內置的事件查看器查詢,
2)命令:eventvwr
3)檢查方法:打開windows日志查看器,根據安全事件發生時間區間篩選windows日志,一般重點查看“安全”、“應用”日志,黑客執行的惡意命令多
數被記錄在這兩個日志中,
一般情況下windows自帶日志查看器顯示不是很友好且不便于分析,所以通常配合日志決議工具LogParser.exe,可在微軟官網下載對應的32或64位版本,
安裝好之后可以像操作資料庫一樣查詢日志資訊,
由于路徑問題往往將默認日志位置c:\Windows\system32\winevt\Logs\的日志檔案拷貝到C盤根目錄中分析:
10.注冊表審計
1)描述:windows中注冊表是存盤系統和應用的設定資訊資料庫,通過鍵值對來配置,
2)命令:regedit.exe
3)檢查方法:輸入命令打開注冊表程式,手工檢查指定路徑下的注冊表鍵值或者配合殺毒軟體檢查,
例如:
\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 查看系統哪些程式自啟動
\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System 檢查EnableLUA的值(0:關閉UAC,1:啟動UAC)
\HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager 下查看是否存在ExcludeFromKnownDlls,如果存在值存在lpk.dll、
usp10.dll、msimg32.dll、midimap.dll、ksuser.dll、comres.dll、ddraw.dll這些dll,則判斷例外,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/55195.html
標籤:其他
上一篇:實驗報告二
