




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第5章UNIX/Linux操作系統(tǒng)取證技術(shù)5.1UNIX/Linux操作系統(tǒng)的特點(diǎn)與常見類型5.2UNIX/Linux操作系統(tǒng)取證第5章UNIX/Linux操作系統(tǒng)取證技術(shù)5.1UN
5.1?UNIX/Linux操作系統(tǒng)的特點(diǎn)與常見類型
5.1.1?UNIX操作系統(tǒng)的特點(diǎn)與常見類型UNIX操作系統(tǒng)環(huán)境由內(nèi)核、Shell接口和程序構(gòu)成。UNIX內(nèi)核為程序分配內(nèi)存和時(shí)間,處理文件的存儲(chǔ)和進(jìn)程間的通信,響應(yīng)系統(tǒng)調(diào)用。Shell是聯(lián)系程序和內(nèi)核之間的接口,提供給用戶輸入和管理的接入程序界面(GraphicalUserInterface,GUI)。在UNIX中一切皆為文件或進(jìn)程,用戶通過(guò)Shell創(chuàng)建的也是進(jìn)程或者文件。
5.1?UNIX/Linux操作系統(tǒng)的特點(diǎn)與常見類型
1.特點(diǎn)
(1)開放性。開放性是UNIX操作系統(tǒng)最基本的特點(diǎn),UNIX操作系統(tǒng)之所以被廣泛研究和商業(yè)化應(yīng)用,與其良好的開放性息息相關(guān)。良好開放性的UNIX操作系統(tǒng)具有可移植性、可兼容性、可伸縮性、互操作性(Interoperability)等特性。
(2)標(biāo)準(zhǔn)化。UNIX發(fā)展過(guò)程中產(chǎn)生了很多UNIX分支,也產(chǎn)生了很多UNIX標(biāo)準(zhǔn)化組織。不論是研究機(jī)構(gòu)還是商業(yè)團(tuán)體都可以建立獨(dú)自的標(biāo)準(zhǔn),如ISO/IEC的POSIX標(biāo)準(zhǔn)、IEEEPOSIX標(biāo)準(zhǔn)、X/Open組織的XPG3/4工業(yè)標(biāo)準(zhǔn)以及后來(lái)的Spec1170。UNIX不遵從單一標(biāo)準(zhǔn),從而保證其不同環(huán)境的生命力。
1.特點(diǎn)
(1)開放性。開放性是UNIX操作系
(3)穩(wěn)定性。UNIX操作系統(tǒng)的穩(wěn)定性來(lái)源于其穩(wěn)定的系統(tǒng)架構(gòu)、保守的更新策略和嚴(yán)密的集成測(cè)試。通常情況下,如非必要,使用UNIX類系統(tǒng)會(huì)禁止安裝發(fā)行版本之外的軟件。
(4)可伸縮性。UNIX操作系統(tǒng)可適用于各類操作平臺(tái),如筆記本電腦、PC、工作站、大型服務(wù)站,能夠在由CPU芯片(包括Intel/AMD及HP-PA、MIPS、PowerPC、UltraSPARC、ALPHA等RISC芯片)搭建的體系結(jié)構(gòu)上運(yùn)行。UNIX操作系統(tǒng)支持SMP(SymmetricMultiprocessing)和Cluster等技術(shù),使得可支持的運(yùn)行節(jié)點(diǎn)和CPU的數(shù)據(jù)大大提高,完全能夠應(yīng)對(duì)大型服務(wù)器的處理需求。
(3)穩(wěn)定性。UNIX操作系統(tǒng)的穩(wěn)定性來(lái)源于其穩(wěn)定的
(5)網(wǎng)絡(luò)服務(wù)。TCP/IP網(wǎng)絡(luò)協(xié)議是基于UNIX操作系統(tǒng)開發(fā)和發(fā)展起來(lái)的。UNIX操作系統(tǒng)支持常用的網(wǎng)絡(luò)通信協(xié)議,包括NFS、DCE、IPX/SPX、SLIP、PPP等,能方便地與已有的主機(jī)系統(tǒng)以及各種廣域網(wǎng)和局域網(wǎng)相連接,這也是UNIX具有出色的互操作性的根本原因。
(5)網(wǎng)絡(luò)服務(wù)。TCP/IP網(wǎng)絡(luò)協(xié)議是基于UNIX操
2.常見類型
UNIX是多用戶多任務(wù)的分時(shí)操作系統(tǒng),支持多處理器架構(gòu)。常見的UNIX大體可以分為研究型UNIX和商業(yè)型UNIX,下面基于時(shí)間線簡(jiǎn)單列舉UNIX發(fā)展脈絡(luò),具體如圖5-1所示。
2.常見類型
UNIX是多用戶多任務(wù)的分時(shí)操作系圖5-1?UNIX發(fā)展脈絡(luò)圖5-1?UNIX發(fā)展脈絡(luò)
在商業(yè)UNIX開發(fā)應(yīng)用領(lǐng)域主要有6套主流UNIX操作系統(tǒng),包括IRIX、AIX、Tru64UNIX、HP-UX、UnixWare、Solaris。下面簡(jiǎn)單對(duì)這6種操作系統(tǒng)進(jìn)行對(duì)比,如表5-1所示。
在商業(yè)UNIX開發(fā)應(yīng)用領(lǐng)域主要有6套主流UNIX操作系電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)
5.1.2?Linux操作系統(tǒng)的特點(diǎn)與常見類型
1.?Linux操作系統(tǒng)的特點(diǎn)
Linux的基本思想有兩點(diǎn):一切皆為文件,系統(tǒng)中所有內(nèi)容都?xì)w結(jié)為文件,包括設(shè)備、進(jìn)程、硬件、系統(tǒng)和命令等;從內(nèi)核層面來(lái)看,這些都是具有不同權(quán)限和類型的文件。基于內(nèi)核的開源特性,Linux操作系統(tǒng)具有以下特點(diǎn):
5.1.2?Linux操作系統(tǒng)的特點(diǎn)與常見類型
1
(1)多任務(wù)、多用戶。系統(tǒng)可同時(shí)運(yùn)行多個(gè)程序,每個(gè)程序之間相互獨(dú)立,支持系統(tǒng)資源被不同用戶使用,每個(gè)用戶擁有自己的有特定權(quán)限的資源。
(2)設(shè)備獨(dú)立性。Linux操作系統(tǒng)將所有外部設(shè)備看作文件,在驅(qū)動(dòng)程序的支持下設(shè)備被當(dāng)作文件使用,不需要知道其具體存在形式,因此其內(nèi)核具有高度適應(yīng)性,在各平臺(tái)都可得以應(yīng)用。
(1)多任務(wù)、多用戶。系統(tǒng)可同時(shí)運(yùn)行多個(gè)程序,每個(gè)程
(3)良好的可移植性。Linux是一種可移植的操作系統(tǒng),能夠在從微型計(jì)算機(jī)到大型服務(wù)器的任何環(huán)境中和任何平臺(tái)上運(yùn)行,并且能夠按照自身系統(tǒng)方式運(yùn)行。
(4)安全穩(wěn)定的性能。Linux操作系統(tǒng)采用審計(jì)跟蹤、權(quán)限審核等安全保障技術(shù)措施,提供了安全的運(yùn)行環(huán)境。
(3)良好的可移植性。Linux是一種可移植的操作系
2.常見類型
Linux發(fā)行版本大體可以分為兩類:一類是社區(qū)組織維護(hù)的發(fā)行版本,以Debian為代表;另一類則是商業(yè)公司維護(hù)的發(fā)行版本,以REHL(RedHatEnterpriseLinux)為代表。按照管理系統(tǒng)的分類方式,Linux常見類型有以下形式。
(1)基于RPM管理方式。
(2)基于Debian管理方式。
2.常見類型
Linux發(fā)行版本大體可以分為兩類
5.2?UNIX/Linux操作系統(tǒng)取證
5.2.1Linux文件系統(tǒng)層次體系與常見目錄結(jié)構(gòu)1.?Linux文件系統(tǒng)層次體系從系統(tǒng)頂層設(shè)計(jì)來(lái)看,Linux文件系統(tǒng)層次由上而下主要分為用戶層,即應(yīng)用程序;內(nèi)核層(Kernel),包括虛擬文件系統(tǒng)(VirtualFileSystem,VFS)、文件系統(tǒng)(FileSystem)(如EXT3、EXT4、XFS等)、頁(yè)緩存(PageCache)、塊設(shè)備驅(qū)動(dòng)(BlockDeviceDriver)、磁盤驅(qū)動(dòng)等;硬件層(Hardware),即存儲(chǔ)設(shè)備,如圖5-2所示。
5.2?UNIX/Linux操作系統(tǒng)取證
5.2.1圖5-2?Linux文件系統(tǒng)層次圖5-2?Linux文件系統(tǒng)層次
內(nèi)核層中包含眾多模塊,其中塊設(shè)備驅(qū)動(dòng)模塊又分為磁盤驅(qū)動(dòng)和Flash驅(qū)動(dòng)兩種。在Linux操作系統(tǒng)中,對(duì)不同硬盤提供的驅(qū)動(dòng)模塊一般都存放在內(nèi)核目錄樹drivers/ata中。對(duì)于一般通用的硬盤驅(qū)動(dòng),也可以直接被編譯到內(nèi)核中,但不會(huì)以模塊的方式出現(xiàn),可以通過(guò)查看/boot/config-xxx.xxx文件來(lái)確認(rèn),如圖5-3所示。
內(nèi)核層中包含眾多模塊,其中塊設(shè)備驅(qū)動(dòng)模塊又分為磁盤驅(qū)動(dòng)圖5-3硬盤驅(qū)動(dòng)文件圖5-3硬盤驅(qū)動(dòng)文件
塊設(shè)備驅(qū)動(dòng):通過(guò)塊接口讀取LBA,將讀寫命令組合并插入命令處理隊(duì)列,從而執(zhí)行文件的讀寫。
頁(yè)緩存:又稱為頁(yè)高速緩沖存儲(chǔ)器,用于緩存文件的邏輯內(nèi)容,從而加快對(duì)磁盤上映像和數(shù)據(jù)的訪問(wèn)。頁(yè)緩存的大小為一頁(yè),通常為4KB。
文件系統(tǒng):將文件讀寫命令轉(zhuǎn)化為對(duì)磁盤LBA的操作,起到翻譯與轉(zhuǎn)換作用。
塊設(shè)備驅(qū)動(dòng):通過(guò)塊接口讀取LBA,將讀寫命令組合并插入
虛擬文件系統(tǒng):由于不同的文件系統(tǒng)都有各自的API接口,虛擬文件系統(tǒng)將不同的文件系統(tǒng)抽象統(tǒng)一,提供統(tǒng)一的API訪問(wèn)接口,再經(jīng)過(guò)系統(tǒng)調(diào)用(SystemCall)包裝,用戶層就可以經(jīng)過(guò)SCI(SystemCallInterface,系統(tǒng)調(diào)用接口)的系統(tǒng)調(diào)用來(lái)操作不同的文件系統(tǒng)。虛擬文件系統(tǒng)提供的常用API有mount、umount、open、close、mkdir。
虛擬文件系統(tǒng):由于不同的文件系統(tǒng)都有各自的API接口,
系統(tǒng)調(diào)用:應(yīng)用程序和內(nèi)核之間的接口,提供的所有系統(tǒng)調(diào)用構(gòu)成的集合即程序接口或API。系統(tǒng)調(diào)用把應(yīng)用程序的文件處理請(qǐng)求傳給內(nèi)核,調(diào)用相應(yīng)的內(nèi)核函數(shù)完成所需的文件處理,將文件處理結(jié)果返回給應(yīng)用程序。
用戶層:應(yīng)用程序是各種程序?qū)?yīng)的各種接口,如文件的創(chuàng)建、刪除、打開、關(guān)閉、寫、讀等。
系統(tǒng)調(diào)用:應(yīng)用程序和內(nèi)核之間的接口,提供的所有系統(tǒng)調(diào)用
2.?Linux文件系統(tǒng)基本類型
Linux內(nèi)核支持的文件系統(tǒng)類型可以通過(guò)查看usr/src/linux.xxx/fs目錄下的內(nèi)核源代碼樹獲取,如圖5-4所示。常常會(huì)有新型文件系統(tǒng)被加到系統(tǒng)中,有一些尚在測(cè)試的文件系統(tǒng)并不包含在舊內(nèi)核中。
2.?Linux文件系統(tǒng)基本類型
Linux內(nèi)核圖5-4內(nèi)核源代碼樹圖5-4內(nèi)核源代碼樹
3.?Linux常見的文件目錄
Linux發(fā)行版本之間的差別很少,主要表現(xiàn)在系統(tǒng)管理的特色工具以及軟件包管理方式的不同。兩者的目錄結(jié)構(gòu)基本上是一樣的。Windows的文件結(jié)構(gòu)是多個(gè)并列的樹狀結(jié)構(gòu),最頂部的是不同的磁盤(分區(qū)),如C、D、E、F等。
3.?Linux常見的文件目錄
Linux發(fā)行版
Linux的文件結(jié)構(gòu)是單個(gè)的樹狀結(jié)構(gòu),可以用tree命令進(jìn)行展示(默認(rèn)沒有安裝)。每次安裝系統(tǒng)時(shí)都會(huì)進(jìn)行分區(qū),Linux下磁盤分區(qū)和目錄的關(guān)系如下:
(1)任何一個(gè)分區(qū)都必須掛載到某個(gè)目錄上。
(2)目錄是邏輯上的區(qū)分,分區(qū)是物理上的區(qū)分。
(3)磁盤Linux分區(qū)都必須掛載到目錄樹中的某個(gè)具體的目錄上才能進(jìn)行讀寫操作。
(4)根目錄是所有Linux的文件和目錄所在的地方,需要掛載一個(gè)磁盤分區(qū)。
Linux的文件結(jié)構(gòu)是單個(gè)的樹狀結(jié)構(gòu),可以用tree命
圖5-5所示為一種目錄和分區(qū)關(guān)系。
接下來(lái)對(duì)每一種目錄一一進(jìn)行介紹。
/:根目錄Linux文件系統(tǒng)的入口,也是最高級(jí)、最重要的目錄,除可衍生出其他目錄外,還和系統(tǒng)的開機(jī)、還原、系統(tǒng)修復(fù)有關(guān),一般要求不要把任務(wù)應(yīng)用程序直接放在根目錄下,若容量滿了,則可能無(wú)法登錄(需要注意日志輸出是否在根目錄下)。
/bin:系統(tǒng)需要的基本命令,主要是指在單用戶模式下還能執(zhí)行的命令,主要有cat、mv、mkdir、cp、bash、ls。
圖5-5所示為一種目錄和分區(qū)關(guān)系。
接下來(lái)對(duì)每一種
/boot:內(nèi)核和加載內(nèi)核需要的文件。grub系統(tǒng)引導(dǎo)管理器也在該目錄下,位于/boot/grub/。GNUGRUB(簡(jiǎn)稱GRUB)是一個(gè)來(lái)自GNU項(xiàng)目的啟動(dòng)引導(dǎo)程序。GRUB可以實(shí)現(xiàn)多系統(tǒng)啟動(dòng),它允許用戶在計(jì)算機(jī)內(nèi)同時(shí)擁有多個(gè)操作系統(tǒng),并在計(jì)算機(jī)啟動(dòng)時(shí)選擇希望運(yùn)行的操作系統(tǒng)。GRUB可用于選擇操作系統(tǒng)分區(qū)上的不同內(nèi)核,也可用于向這些內(nèi)核傳遞啟動(dòng)參數(shù)。GRUB是在計(jì)算機(jī)啟動(dòng)后運(yùn)行的第一個(gè)程序,是用來(lái)負(fù)責(zé)加載、傳輸控制到操作系統(tǒng)的內(nèi)核,一旦把內(nèi)核掛載,系統(tǒng)引導(dǎo)管理器的任務(wù)便完成了。系統(tǒng)引導(dǎo)的其他部分,如系統(tǒng)的初始化及啟動(dòng)過(guò)程則完全由內(nèi)核來(lái)控制完成。
/boot:內(nèi)核和加載內(nèi)核需要的文件。grub系統(tǒng)引導(dǎo)電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)
/dev:在Linux操作系統(tǒng)下任何設(shè)備及接口設(shè)備都是以文件形式存在于設(shè)備文件存儲(chǔ)目錄中的。
/etc:系統(tǒng)的主要配置文件都放在該目錄下,為了避免發(fā)生系統(tǒng)執(zhí)行錯(cuò)誤,在此目錄下不放其他外部可執(zhí)行文件。常見的目錄有/etc/inittab、/etc/init.d/、/etc/modprobe.conf、/etc/X11/、/etc/fstab/、/etc/sysconfig/。/etc/init.d/為開機(jī)啟動(dòng)腳本,/etc/xinetd.d/包含xinetd服務(wù)進(jìn)程控制的所有傳統(tǒng)網(wǎng)絡(luò)服務(wù)使用的配置文件,/etc/sysconfig/network/scripts/為網(wǎng)管配置。
/dev:在Linux操作系統(tǒng)下任何設(shè)備及接口設(shè)備都是
/home:普通用戶的默認(rèn)存儲(chǔ)目錄。主文件夾有兩種代號(hào):“~”代表用戶的主目錄;“~XX”代表XX的主文件夾。
/lib:庫(kù)文件和內(nèi)核模塊存放目錄,主要是開機(jī)相關(guān)文件以及在/bin/、/sbin目錄下命令會(huì)調(diào)用的庫(kù)函數(shù)。/lib/modules會(huì)放內(nèi)核相關(guān)的模塊;/lib64和/lib類似,主要存放64位版本的庫(kù)函數(shù)。
/media:即插即用設(shè)備的掛載點(diǎn)自動(dòng)存放在該目錄下。例如U盤,cdrom/dvd自動(dòng)掛載后,就會(huì)在該目錄下。其常見的目錄有/media/floppy、/media/cdrom。
/home:普通用戶的默認(rèn)存儲(chǔ)目錄。主文件夾有兩種代號(hào)
/mnt:臨時(shí)文件系統(tǒng)的掛載點(diǎn)目錄。
/opt:第三方軟件的存放目錄。
/proc:虛擬文件系統(tǒng)目錄,放置內(nèi)存中的數(shù)據(jù),當(dāng)有一個(gè)進(jìn)程啟動(dòng)時(shí),就自動(dòng)創(chuàng)建一個(gè)文件夾。比較重要的有?/proc/meminfo和/proc/cpuinfo,可以通過(guò)這兩個(gè)文件查看內(nèi)存和CPU的情況;另外還有?/proc/dma、/proc/interrupts、/proc/ioports、/proc/net/*?等文件。
/root:Linux超級(jí)權(quán)限用戶root的根目錄,一般用戶不可見,其數(shù)據(jù)被隱藏。
/mnt:臨時(shí)文件系統(tǒng)的掛載點(diǎn)目錄。
/opt:第
/sbin:基本的系統(tǒng)維護(hù)命令,這些命令只能由超級(jí)用戶使用,主要是開機(jī)、修復(fù)、還原系統(tǒng)過(guò)程需要的。其常見的命令有fdisk、fsck、ifconfig、init、mkfs。
/srv:存放一些服務(wù)器啟動(dòng)之后需要提取的數(shù)據(jù),主要存放網(wǎng)絡(luò)服務(wù)后的一些數(shù)據(jù),如www、ftp。
/sys:與/proc相似,也是虛擬文件系統(tǒng),主要記錄內(nèi)核相關(guān)數(shù)據(jù),如內(nèi)核模塊、內(nèi)核檢測(cè)的硬件信息。
/tmp:臨時(shí)文件目錄。任何用戶均可以訪問(wèn)該目錄,需要定期清理。
/sbin:基本的系統(tǒng)維護(hù)命令,這些命令只能由超級(jí)用戶
/usr:是存放可以分享與可不移動(dòng)的內(nèi)容,不是user的縮寫,而是UNIXSoftwareResource的縮寫,即UNIX操作系統(tǒng)的軟件資源。其主要子目錄有?/usr/X**/(XWindows數(shù)據(jù))、/usr/bin/?(絕大部分用戶可用命令)、/usr/include/?(C/C++?等的頭文件與包含文件)、/usr/lib/?(包含應(yīng)用程序函數(shù)庫(kù)及目標(biāo)文件,以及不被一般用戶慣用的執(zhí)行文件或腳本。如果以源碼的?*.tar.gz形式安裝軟件,可能會(huì)引用該目錄下的文件)、/usr/lib64/?(與?/usr/lib/相似)、/usr/local/?(本機(jī)安裝的軟件,建議安裝到這里,下面也有bin、etc、include、lib子目錄)、
/usr:是存放可以分享與可不移動(dòng)的內(nèi)容,不是user
/usr/sbin/?(非系統(tǒng)正常運(yùn)行需要的命令,最常見的就是網(wǎng)絡(luò)服務(wù)器軟件的daemon)、/usr/share/?[存放共享文件,基本是可讀的文本文件,其子目錄有?/usr/share/man?(在線幫助文件)、/usr/share/doc(軟件雜項(xiàng)的說(shuō)明文件)、/usr/share/zoneinfo?(軟件雜項(xiàng)的說(shuō)明文件)]、/usr/src(軟件源碼)。
/usr/sbin/?(非系統(tǒng)正常運(yùn)行需要的命令,最常見的
/var:存放經(jīng)常變動(dòng)的數(shù)據(jù),如日志、郵件等。其常見的子目錄有?/var/cache/執(zhí)行中的緩存文件;/var/lib/?軟件本身執(zhí)行過(guò)程中用到的數(shù)據(jù),如MySQL數(shù)據(jù)一般放在/var/lib/mysql/?中,而rpm數(shù)據(jù)則放在?/var/lib/rpm/?中;/var/lock/?資源被鎖時(shí)生成的數(shù)據(jù),有些資源只能由一個(gè)程序使用,如刻錄機(jī);/var/log/?系統(tǒng)日志;/var/mail/?系統(tǒng)郵件;/var/run/某些程序或服務(wù)啟動(dòng)后的PID數(shù)據(jù);/var/spool/?放置隊(duì)列數(shù)據(jù)。
其他目錄,如?/lost+found,是在ext2/ext3/ext4文件系統(tǒng)下產(chǎn)生的,當(dāng)文件系統(tǒng)產(chǎn)生錯(cuò)誤故障時(shí),會(huì)將一些丟失的片段存儲(chǔ)在該目錄下。
/var:存放經(jīng)常變動(dòng)的數(shù)據(jù),如日志、郵件等。其常見的
5.2.2?Linux文件系統(tǒng)的特點(diǎn)與取證
在計(jì)算機(jī)系統(tǒng)中,操作系統(tǒng)是一組軟件,由內(nèi)核和系統(tǒng)調(diào)用構(gòu)成,是連通硬件和應(yīng)用程序的橋梁。人們常說(shuō)的Linux系統(tǒng)包括Linux操作系統(tǒng)及其附加的各類應(yīng)用程序,但嚴(yán)格意義上,Linux僅是一套操作系統(tǒng),其核心是Linux內(nèi)核,應(yīng)用程序并非操作系統(tǒng)的組成部分。內(nèi)核功能主要包含系統(tǒng)調(diào)用接口、程序管理、內(nèi)存管理、文件系統(tǒng)管理、設(shè)備驅(qū)動(dòng)等。其中文件系統(tǒng)管理是操作系統(tǒng)對(duì)存儲(chǔ)文件的一種組織、管理方式。因此,在Linux取證中,文件系統(tǒng)管理是調(diào)查人員必須掌握的儲(chǔ)備常識(shí),也是對(duì)具體案件進(jìn)行實(shí)操的取證要點(diǎn)。
5.2.2?Linux文件系統(tǒng)的特點(diǎn)與取證
在計(jì)算
在UNIX哲學(xué)中最為重要的一個(gè)法則就是一切皆為文件。Linux是重寫UNIX的一種操作系統(tǒng),屬于UNIX類型,自然也承接了此法則。因此,在Linux操作系統(tǒng)中,把一切資源都看作文件,包括硬件設(shè)備。Linux操作系統(tǒng)把每個(gè)硬件都看作一個(gè)文件,通常稱為設(shè)備文件,以讀寫文件的方式實(shí)現(xiàn)對(duì)硬件的訪問(wèn)。從文件管理來(lái)看,Windows是通過(guò)“硬盤—硬盤上的分區(qū)—分區(qū)上的特定文件系統(tǒng)—特定文件系統(tǒng)中的文件”這樣的順序來(lái)訪問(wèn)一個(gè)文件的;相較而言,Linux操作系統(tǒng)是通過(guò)“虛擬文件系統(tǒng)—硬盤—硬盤上的分區(qū)—分區(qū)上的特定文件系統(tǒng)—特定文件系統(tǒng)中的文件”這樣的順序來(lái)訪問(wèn)一個(gè)文件的。
在UNIX哲學(xué)中最為重要的一個(gè)法則就是一切皆為文件。L
因此,Linux文件系統(tǒng)與人們習(xí)以為常的Windows文件系統(tǒng)存在差異性,下面具體闡述Linux文件系統(tǒng)的特點(diǎn)及其取證分析要點(diǎn)。
因此,Linux文件系統(tǒng)與人們習(xí)以為常的Windows文件
1.?Linux文件系統(tǒng)的特點(diǎn)
Linux支持的文件系統(tǒng)較多,不同文件系統(tǒng)各具特色。下面主要從取證角度分析常見的Ext4、XFS和Btrfs文件系統(tǒng)。
1)?Ext4文件系統(tǒng)的特點(diǎn)
Ext4采用元塊組作為管理單位,在元塊組中塊組描述符為固定長(zhǎng)度。以128?MB的塊組(數(shù)據(jù)塊為4KB)為例,Ext4中每個(gè)元塊組可以包括4096/64?=?64個(gè)塊組,每個(gè)元塊組的大小是64?×?128MB?=?8?GB。
1.?Linux文件系統(tǒng)的特點(diǎn)
Linux支持的
2)?XFS文件系統(tǒng)的特點(diǎn)
XFS是一個(gè)高度可擴(kuò)展的高性能文件系統(tǒng),支持元數(shù)據(jù)日志,有助于快速恢復(fù),支持在掛載和活動(dòng)狀態(tài)下在線進(jìn)行碎片整理和擴(kuò)容。RHEL7默認(rèn)支持備份恢復(fù)工具的XFS選項(xiàng)。
XFS支持多種數(shù)據(jù)分配方案,其中延遲分配方案允許寫入XFS文件系統(tǒng)的數(shù)據(jù)在調(diào)用fsync()之前不會(huì)真正寫入磁盤。
XFS還支持新的DAX技術(shù),可以使應(yīng)用程序直接映射內(nèi)存到磁盤地址上。
2)?XFS文件系統(tǒng)的特點(diǎn)
XFS是一個(gè)高度可擴(kuò)
3)?Btrfs文件系統(tǒng)的特點(diǎn)
(1)擴(kuò)展性。Btrfs使用extent作為文件存儲(chǔ)單元,使用B樹管理所有元數(shù)據(jù),動(dòng)態(tài)創(chuàng)建inode,能夠快速高效地進(jìn)行查找、插入和刪除操作。
(2)數(shù)據(jù)一致性。當(dāng)硬件系統(tǒng)面臨不可預(yù)估的故障時(shí),Btrfs采用COW(Copy-on-Write,寫時(shí)復(fù)制)事務(wù)技術(shù)保障文件系統(tǒng)的一致性,能夠追溯和還原原始數(shù)據(jù)。
(3)多設(shè)備管理。Btrfs支持動(dòng)態(tài)添加設(shè)備,當(dāng)用戶添加新磁盤后,可以通過(guò)命令方式將其加入文件系統(tǒng)中。
3)?Btrfs文件系統(tǒng)的特點(diǎn)
(1)擴(kuò)展性。
2.?Linux文件系統(tǒng)取證分析要點(diǎn)
文件系統(tǒng)是Linux取證活動(dòng)的基礎(chǔ),一般而言,對(duì)Linux取證的首要操作是對(duì)存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)內(nèi)容的鏡像復(fù)制,然后是對(duì)該復(fù)制件進(jìn)行檢驗(yàn)分析。Linux文件系統(tǒng)的取證基于具體文件系統(tǒng)類型及特性,但Linux文件系統(tǒng)存在一定的共通性,不同的Linux文件系統(tǒng)的取證方法和目標(biāo)存在共同之處,下面具體闡述Linux文件系統(tǒng)取證的注意要點(diǎn)。
2.?Linux文件系統(tǒng)取證分析要點(diǎn)
文件系統(tǒng)是
1)文件系統(tǒng)布局與inode結(jié)構(gòu)信息
(1)文件系統(tǒng)布局。
在對(duì)Linux進(jìn)行取證分析時(shí),大多不需要了解存儲(chǔ)設(shè)備或文件系統(tǒng)的結(jié)構(gòu)。但有時(shí)存儲(chǔ)設(shè)備或文件系統(tǒng)被破壞,需要對(duì)數(shù)據(jù)進(jìn)行恢復(fù),或者需要對(duì)電子數(shù)據(jù)的真實(shí)性進(jìn)行分析時(shí),則需要熟悉文件系統(tǒng)的結(jié)構(gòu)。在對(duì)文件系統(tǒng)進(jìn)行分析時(shí),首先需要了解文件系統(tǒng)所在存儲(chǔ)設(shè)備采用的分區(qū)體系,如是否使用了RAID(RedundantArraysofIndependentDisks,磁盤陣列)、LVM(LogicVolumeManager,邏輯卷管理)結(jié)構(gòu)等。
1)文件系統(tǒng)布局與inode結(jié)構(gòu)信息
(1)文
當(dāng)確定了文件系統(tǒng)所在分區(qū)的起始和結(jié)束位置后,需要對(duì)文件系統(tǒng)的整體布局進(jìn)行分析,準(zhǔn)確定位文件系統(tǒng)的不同結(jié)構(gòu),提取相關(guān)元數(shù)據(jù)信息,從而從底層開始分析文件系統(tǒng)中的數(shù)據(jù)。
當(dāng)確定了文件系統(tǒng)所在分區(qū)的起始和結(jié)束位置后,需要對(duì)文件
(2)?inode結(jié)構(gòu)信息。
在Linux文件系統(tǒng)中,Ext2、Ext3、Ext4文件系統(tǒng)比較常見。其中比較關(guān)鍵的是inode表結(jié)構(gòu),它包含了文件的基礎(chǔ)信息和數(shù)據(jù)塊有關(guān)信息。inode結(jié)構(gòu)在Ext2、Ext3中大體相似,而在Ext4中比Ext2/Ext3記錄了更多信息,且采用extent樹結(jié)構(gòu)。
(2)?inode結(jié)構(gòu)信息。
在Linux文件系
inode信息中主要記錄了文件模式、UID、GID、文件大小、實(shí)際使用扇區(qū)數(shù)、訪問(wèn)時(shí)間、文件修改時(shí)間、inode修改時(shí)間、文件刪除時(shí)間、直間接塊尋址數(shù)組或extent樹、文件ACL信息等。而在Ext4中還記錄了額外的信息,目前Ext4的inode表結(jié)構(gòu)多出了32字節(jié)存放額外的信息,其中對(duì)取證比較有價(jià)值的信息是文件創(chuàng)建時(shí)間信息以及精確到納秒的補(bǔ)充時(shí)間信息(見圖5-6中框圖部分)。
inode信息中主要記錄了文件模式、UID、GID、文圖5-6?Ext4中的inode結(jié)構(gòu)圖5-6?Ext4中的inode結(jié)構(gòu)
當(dāng)文件被刪除后,Ext中inode中的文件大小、實(shí)際使用扇區(qū)數(shù)、extent信息均清零,而inode修改時(shí)間、文件修改時(shí)間、文件刪除時(shí)間、硬連接數(shù)均進(jìn)行了更新,但文件的創(chuàng)建時(shí)間未發(fā)生變化。這些信息有時(shí)對(duì)取證分析有一定幫助。文件被刪除前后inode信息的對(duì)比如圖5-7所示。
當(dāng)文件被刪除后,Ext中inode中的文件大小、實(shí)際使圖5-7文件被刪除前后inode信息的對(duì)比圖5-7文件被刪除前后inode信息的對(duì)比
2)被刪除文件的特點(diǎn)和恢復(fù)方法
Ext3/4文件系統(tǒng)中的文件被刪除以后,文件內(nèi)容對(duì)應(yīng)的block中的信息并未被刪除,目錄中block中的文件名與inode的關(guān)聯(lián)也未變化,而僅僅刪除了inode位圖、block塊位圖中對(duì)應(yīng)位的信息,以及更新了目錄中相鄰項(xiàng)長(zhǎng)度和超級(jí)塊、組描述符表中的有關(guān)信息,但inode表中的數(shù)據(jù)塊指針或者extent信息則清零,因而給被刪除文件的恢復(fù)帶來(lái)了較大困難,但可利用日志中備份inode信息或者文件頭部特征等信息進(jìn)行數(shù)據(jù)恢復(fù)。通??刹捎脙煞N不同方法進(jìn)行數(shù)據(jù)恢復(fù),具體如下:
2)被刪除文件的特點(diǎn)和恢復(fù)方法
Ext3/4文件
方法1:利用文件系統(tǒng)遺留痕跡進(jìn)行數(shù)據(jù)恢復(fù)。在journal日志文件中找到殘留的inode信息,根據(jù)inode信息定位到相關(guān)目錄(或先確定目錄項(xiàng),再在日志中確定inode備份信息),恢復(fù)殘留inode對(duì)應(yīng)的block,從而恢復(fù)被刪除的文件。
方法2:利用文件自身的特殊結(jié)構(gòu)進(jìn)行恢復(fù)。對(duì)于具有文件頭特征或者具有特殊結(jié)構(gòu)和格式的文件,可根據(jù)文件自身特點(diǎn)進(jìn)行數(shù)據(jù)恢復(fù)。這種數(shù)據(jù)恢復(fù)因不考慮文件系統(tǒng)本身的特征,故可用支持該方法的通用數(shù)據(jù)恢復(fù)軟件進(jìn)行恢復(fù)。但在數(shù)據(jù)恢復(fù)之前需要考慮文件系統(tǒng)物理空間是否連續(xù),如果使用了LVM、RAID等存儲(chǔ)方式,則首先要通過(guò)重組或者仿真方法提取出整個(gè)分區(qū)的鏡像,然后進(jìn)行恢復(fù),否則有可能因數(shù)據(jù)恢復(fù)軟件不能準(zhǔn)確解析上述結(jié)構(gòu)而使恢復(fù)效果變差。
方法1:利用文件系統(tǒng)遺留痕跡進(jìn)行數(shù)據(jù)恢復(fù)。在journ
5.2.3?Linux日志文件的特點(diǎn)與取證
1.?Linux日志文件結(jié)構(gòu)的特點(diǎn)
日志用來(lái)記錄系統(tǒng)中事件和有關(guān)軟硬件問(wèn)題,通過(guò)對(duì)日志信息的檢測(cè)和審計(jì),能夠給調(diào)查人員提供重要的線索,指明調(diào)查方向。在Linux系統(tǒng)中,日志多數(shù)以明文形式存儲(chǔ),調(diào)查人員可以通過(guò)系統(tǒng)命令或者專業(yè)工具檢查相關(guān)日志文件。大部分Linux發(fā)行版默認(rèn)的日志守護(hù)進(jìn)程為syslog,位于/etc/syslog或/etc/syslogd或/etc/rsyslog.d,默認(rèn)配置文件為/etc/syslog.conf或rsyslog.conf。rsyslog是syslog的多線程增強(qiáng)版,如rhel6之后默認(rèn)使用rsyslog。舊版本(以CentOS5.5為例)的Linux默認(rèn)使用syslog,每行格式為facility.loglevellogtarget。
5.2.3?Linux日志文件的特點(diǎn)與取證
1.電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)
完整的syslog日志中包含產(chǎn)生日志的程序模塊(Facility)、嚴(yán)重性(Severity或Level)、時(shí)間、主機(jī)名或IP、進(jìn)程名、進(jìn)程ID和正文。在UNIX類操作系統(tǒng)上,能夠通過(guò)Facility和Severity的組合來(lái)決定什么樣的日志消息需要記錄、記錄到什么地方、是否需要發(fā)送到一個(gè)接收syslog的服務(wù)器等。Facility的消息類型用來(lái)指定syslog功能,主要功能如表5-2所示。
完整的syslog日志中包含產(chǎn)生日志的程序模塊(Fac電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)
由于其簡(jiǎn)單而靈活的特性,因此syslog不再僅限于UNIX類主機(jī)的日志記錄,任何需要記錄和發(fā)送日志的場(chǎng)景都可能會(huì)使用syslog。這里重點(diǎn)說(shuō)明兩條配置的含義:首先,所有Severity大于或等于info的信息都會(huì)被保存到/var/log/messages中,但是Facility為mail、authpriv、cron的消息例外;其次,所有Facility為mail的消息都會(huì)被保存到/var/log/maillog中,日志文件前面的減號(hào)表示異步寫文件。
由于其簡(jiǎn)單而靈活的特性,因此syslog不再僅限于UN
Loglevel或Severity級(jí)別如表5-3所示。
Loglevel或Severity級(jí)別如表5-3所示。
2.?Linux日志文件取證
1)日志文件檢驗(yàn)分析
日志是記錄系統(tǒng)活動(dòng)信息的文件,即記錄系統(tǒng)在什么時(shí)間有哪個(gè)進(jìn)程做了什么樣的操作,發(fā)生了何種事件。系統(tǒng)日志一般是最有價(jià)值的系統(tǒng)活動(dòng)記錄源,完整的日志記錄對(duì)于取證會(huì)有極大的幫助。
常見的系統(tǒng)日志文件類型、位置及其查看方法(包括RHEL?6發(fā)行版本前后的新舊日志類型)如表5-4所示。
2.?Linux日志文件取證
1)日志文件檢驗(yàn)電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)
下面介紹表5-4所列日志中的幾個(gè)重要日志。
(1)?secure。/var/log/secure日志文件中的每一條記錄通常包含日期與時(shí)間信息、主機(jī)名稱、服務(wù)名稱與ID號(hào)以及其他顯示信息。在Linux新發(fā)行版本中,secure日志已經(jīng)被auth.log和authpriv代替。
(2)?auth。/var/log/auth是Linux新發(fā)行版本的安全登錄日志,記錄包含時(shí)間、主機(jī)名稱、服務(wù)名稱、ID以及登錄信息。
(3)?message。/var/log/message日志文件通常包含時(shí)間、主機(jī)名、程序名、PID和相應(yīng)消息,但由于登錄信息過(guò)多,外部接入信息有可能被掩蓋,因此可以進(jìn)行消息定制。
下面介紹表5-4所列日志中的幾個(gè)重要日志。
(1)
(4)?maillog。/var/log/maillog日志文件記錄包含時(shí)間、主機(jī)名、進(jìn)程、ID以及相關(guān)信息。
(5)?cron。/var/log/cron日志文件主要記錄crontab的守護(hù)進(jìn)程crond派生的子進(jìn)程的信息,包含時(shí)間、用戶進(jìn)程、ID以及相關(guān)信息。
(6)?lastlog。/var/log/lastlog日志文件記錄用戶最近成功登錄和最后一次未成功登錄事件。每條記錄包含用戶名、端口號(hào)、上次登錄時(shí)間等信息。
(7)?.bash_history?!皛/.bash_history”(“~/”表示用戶目錄)文件能夠保存相關(guān)用戶最近使用過(guò)的命令。
(4)?maillog。/var/log/maill
2)日志分析工具
日志文件包含有關(guān)系統(tǒng)的任何消息,如內(nèi)核、服務(wù)和正在運(yùn)行的應(yīng)用程序,不同消息分屬不同日志文件。當(dāng)對(duì)Linux操作系統(tǒng)進(jìn)行檢驗(yàn)分析時(shí),日志文件是重要的線索查控源,任何未經(jīng)正式授權(quán)或未經(jīng)授權(quán)的行為都可以在日志文件記錄中查找到。因此,日志文件分析工具是取證人員必不可少的查看檢驗(yàn)助手。
2)日志分析工具
日志文件包含有關(guān)系統(tǒng)的任何消息
(1)?Logcheck。Logcheck是一個(gè)開源日志管理系統(tǒng),可幫助系統(tǒng)管理員自動(dòng)識(shí)別日志中的未知問(wèn)題和安全違規(guī)問(wèn)題,對(duì)安全事件、系統(tǒng)事件和系統(tǒng)攻擊事件進(jìn)行緊急性排序以供優(yōu)先處理,還可定期向配置的電子郵件地址發(fā)送有關(guān)分析結(jié)果。Logcheck分為超級(jí)防御級(jí)(Paranoid)、服務(wù)器級(jí)(Server)和個(gè)人工作站級(jí)(Workstation)等不同等級(jí)的過(guò)濾規(guī)則,管理人員可以根據(jù)不同的日志檢測(cè)需求設(shè)定具體規(guī)則。其下載地址為/?sid/all/logcheck/download。
(1)?Logcheck。Logcheck是一個(gè)開源
(2)?SARG(SquidAnalysisReportGenerator)。SARG是基于Web的完全開源且免費(fèi)、支持多平臺(tái)的日志應(yīng)用程序,能夠在網(wǎng)絡(luò)上監(jiān)視用戶的活動(dòng),查看其會(huì)話期間訪問(wèn)的網(wǎng)站,包括有關(guān)用戶的詳細(xì)信息,如IP地址、歷史記錄、使用的網(wǎng)絡(luò)流量以及消費(fèi)時(shí)間。其下載地址為/get/Internet/Log-Analyzers/sarg-102.shtml。
(2)?SARG(SquidAnalysisRe
(3)?Http-analyze。Http-analyze是Web服務(wù)器的日志分析工具,支持分析Web服務(wù)器的日志文件,自動(dòng)將目錄和URI鏈接結(jié)果進(jìn)行統(tǒng)計(jì)記錄,并根據(jù)日志信息創(chuàng)建全面的摘要報(bào)告。其下載地址為/get/Internet/Log-Analyzers/http-analyze-28177.shtml。
Linux日志分析工具還有很多,可參考網(wǎng)站獲取。
(3)?Http-analyze。Http-anal
5.2.4?Linux網(wǎng)絡(luò)信息分析
在涉及Linux操作系統(tǒng)的電子數(shù)據(jù)取證案件中,充分了解和分析系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)、配置以及相關(guān)服務(wù)至關(guān)重要。實(shí)際上,Linux網(wǎng)絡(luò)調(diào)查分析是一項(xiàng)復(fù)雜的取證工作,網(wǎng)絡(luò)數(shù)據(jù)具有動(dòng)態(tài)、實(shí)時(shí)、海量、多態(tài)特性,單一的靜態(tài)取證手段不足以獲取完整的痕跡線索,需要側(cè)重于對(duì)網(wǎng)絡(luò)設(shè)備、數(shù)據(jù)流以及網(wǎng)絡(luò)服務(wù)中網(wǎng)絡(luò)數(shù)據(jù)的檢測(cè)、整理、收集、分析。
5.2.4?Linux網(wǎng)絡(luò)信息分析
在涉及Linu
1.?Linux網(wǎng)絡(luò)信息分析的基本思路
Linux網(wǎng)絡(luò)信息分析通常從獲取用戶權(quán)限和訪問(wèn)信息開始,分析程序管理模塊,查看登錄日志中是否存在可疑記錄。常見可疑記錄或操作有:管理員賬戶登錄時(shí)間是否異常,是否登錄頻次異常、登錄多次嘗試失敗,是否加載過(guò)跨session等異常腳本等。在電子數(shù)據(jù)取證的獲取階段,收集可疑網(wǎng)絡(luò)日志文件等電子數(shù)據(jù),為后續(xù)推斷攻擊者的攻擊時(shí)間、方式等信息做好前期準(zhǔn)備,為下一步取證工作打好基礎(chǔ)。
1.?Linux網(wǎng)絡(luò)信息分析的基本思路
Linu
綜合理論和實(shí)踐經(jīng)驗(yàn)來(lái)看,網(wǎng)絡(luò)信息分析的基本思路包含以下幾個(gè)基本環(huán)節(jié)。
1)獲取網(wǎng)絡(luò)信息源
從網(wǎng)絡(luò)安全檢測(cè)角度來(lái)看,通過(guò)收集和分析網(wǎng)絡(luò)行為、安全日志、審計(jì)數(shù)據(jù)、其他網(wǎng)絡(luò)上可獲取信息以及計(jì)算機(jī)系統(tǒng)中若干關(guān)鍵點(diǎn)的信息,檢查網(wǎng)絡(luò)或系統(tǒng)中是否存在違反安全策略的行為和被攻擊的跡象?;诰W(wǎng)絡(luò)安全檢測(cè)的保障技術(shù)可以分為靜態(tài)安全技術(shù)(如防火墻技術(shù))和動(dòng)態(tài)安全技術(shù)(如網(wǎng)絡(luò)入侵檢測(cè)技術(shù))。入侵檢測(cè)作為防火墻防御的補(bǔ)充,實(shí)時(shí)應(yīng)對(duì)網(wǎng)絡(luò)入侵攻擊,極大地?cái)U(kuò)展了網(wǎng)絡(luò)系統(tǒng)管理人員的綜合管理能力(包括監(jiān)視、識(shí)別進(jìn)攻、安全審計(jì)、應(yīng)急響應(yīng)),也提高了網(wǎng)絡(luò)安全基礎(chǔ)結(jié)構(gòu)的完整性。
綜合理論和實(shí)踐經(jīng)驗(yàn)來(lái)看,網(wǎng)絡(luò)信息分析的基本思路包含以下
網(wǎng)絡(luò)數(shù)據(jù)源有以下內(nèi)容:
(1)主機(jī)網(wǎng)絡(luò)配置。通過(guò)Linux網(wǎng)絡(luò)查看和配置相關(guān)命令,收集和分析本地主機(jī)端口開啟情況以及其他網(wǎng)絡(luò)配置信息。
(2)防火墻。通過(guò)防火墻配置防御規(guī)則,檢查網(wǎng)絡(luò)通信數(shù)據(jù),拒絕惡意鏈接等不符合規(guī)則的網(wǎng)絡(luò)數(shù)據(jù)的流入。在其日志中通常會(huì)存有被拒絕鏈接的記錄數(shù)據(jù)包,其中包含許多重要消息,如源IP地址、基本協(xié)議內(nèi)容、鏈接時(shí)間屬性等。
網(wǎng)絡(luò)數(shù)據(jù)源有以下內(nèi)容:
(1)主機(jī)網(wǎng)絡(luò)配置。通過(guò)
(3)入侵檢測(cè)系統(tǒng)。入侵檢測(cè)系統(tǒng)通過(guò)執(zhí)行數(shù)據(jù)嗅探和分析通信數(shù)據(jù)來(lái)識(shí)別外部可疑活動(dòng)并記錄相關(guān)信息。對(duì)每一個(gè)可疑活動(dòng),入侵檢測(cè)系統(tǒng)都會(huì)記錄其網(wǎng)絡(luò)數(shù)據(jù),包含數(shù)據(jù)結(jié)構(gòu)特征、應(yīng)用層信息、時(shí)間屬性、源和目的端口、源和目的IP地址等信息。
(3)入侵檢測(cè)系統(tǒng)。入侵檢測(cè)系統(tǒng)通過(guò)執(zhí)行數(shù)據(jù)嗅探和分
(4)遠(yuǎn)程訪問(wèn)連接。外部系統(tǒng)可以通過(guò)遠(yuǎn)程訪問(wèn)服務(wù)器的連接方式連通內(nèi)部系統(tǒng),內(nèi)部系統(tǒng)也可以通過(guò)這種方式連通到外部系統(tǒng)。遠(yuǎn)程訪問(wèn)服務(wù)器為每個(gè)訪問(wèn)用戶分配IP地址,并將它們記入日志,日志記錄內(nèi)容與防火墻日志類似。諸如此類訪問(wèn)形式的程序有很多,如VPN(VirtualPrivateNetwork,虛擬專用網(wǎng)絡(luò))、SSH、Telnet、遠(yuǎn)程控制軟件(如Teamviewer)等,在其配置信息里記錄著每次連接的基本信息。
(4)遠(yuǎn)程訪問(wèn)連接。外部系統(tǒng)可以通過(guò)遠(yuǎn)程訪問(wèn)服務(wù)器的
(5)?ISP(InternetServiceProvider,網(wǎng)絡(luò)服務(wù)提供商)記錄。在影響重大的網(wǎng)絡(luò)異?;顒?dòng)中,特別是大量網(wǎng)絡(luò)通信和攻擊活動(dòng),ISP收集并保留關(guān)鍵的網(wǎng)絡(luò)數(shù)據(jù)信息,在合理時(shí)限內(nèi)可以通過(guò)司法程序予以提供。
(5)?ISP(InternetServiceP
2)收集網(wǎng)絡(luò)信息
在Linux操作系統(tǒng)運(yùn)行過(guò)程中,網(wǎng)絡(luò)數(shù)據(jù)可能會(huì)存在于系統(tǒng)各處,具體可能分布在檢測(cè)軟件、日志文件、遠(yuǎn)程服務(wù)器存儲(chǔ)數(shù)據(jù)中等。下面著重介紹Linux操作系統(tǒng)里的網(wǎng)絡(luò)日志信息部分。
網(wǎng)絡(luò)日志信息主要分為3大類:Linux系統(tǒng)日志、網(wǎng)絡(luò)設(shè)備日志(如路由器、交換機(jī))和應(yīng)用程序日志(如檢測(cè)軟件、VPN、SSH等Web應(yīng)用)。
2)收集網(wǎng)絡(luò)信息
在Linux操作系統(tǒng)運(yùn)行過(guò)程中
(1)?Linux系統(tǒng)日志。5.2.3節(jié)中已對(duì)Linux日志做了較為詳細(xì)的介紹,這里主要介紹與網(wǎng)絡(luò)信息分析有關(guān)的日志。涉及網(wǎng)絡(luò)信息的Linux系統(tǒng)日志系統(tǒng)主要有以下3類:
①登錄時(shí)間日志系統(tǒng)。
②進(jìn)程統(tǒng)計(jì)日志系統(tǒng)。
③錯(cuò)誤日志系統(tǒng),由進(jìn)程syslogd(Linux新發(fā)行版本采用rsyslogd進(jìn)程服務(wù))進(jìn)行管理。
(1)?Linux系統(tǒng)日志。5.2.3節(jié)中已對(duì)Lin
(2)網(wǎng)絡(luò)設(shè)備日志。網(wǎng)絡(luò)設(shè)備通常指集中器、交換機(jī)、路由器、防火墻和IDS等。由于網(wǎng)絡(luò)設(shè)備的生產(chǎn)廠商不同,采取的設(shè)計(jì)標(biāo)準(zhǔn)存在一定差異,因此其日志表現(xiàn)形式和格式不完全相同。例如,防火墻日志通常會(huì)記錄登錄認(rèn)證事件、連接時(shí)間、登錄錯(cuò)誤事件、故障事件等;路由器日志一般只包含最基本的網(wǎng)絡(luò)信息,如時(shí)間、源和目的IP、基本協(xié)議、端口、數(shù)據(jù)包量;交換機(jī)日志則主要記錄網(wǎng)絡(luò)故障信息,如IP地址沖突、廣播風(fēng)暴。
(2)網(wǎng)絡(luò)設(shè)備日志。網(wǎng)絡(luò)設(shè)備通常指集中器、交換機(jī)、路
(3)應(yīng)用程序日志。應(yīng)用程序日志是指網(wǎng)絡(luò)應(yīng)用程序在運(yùn)行過(guò)程中存儲(chǔ)的重要記錄信息,如Apache、FTP、DHCP、NFS等。
收集網(wǎng)絡(luò)日志信息需要特別注意時(shí)間的正確性,不符合邏輯的時(shí)間線表明日志極有可能被偽造,錯(cuò)誤的時(shí)間會(huì)影響整個(gè)案件的調(diào)查分析,如不同時(shí)區(qū)、時(shí)間設(shè)定錯(cuò)誤。時(shí)間的正確性和一致性也是分析電子數(shù)據(jù)的基本要求。
(3)應(yīng)用程序日志。應(yīng)用程序日志是指網(wǎng)絡(luò)應(yīng)用程序在運(yùn)
3)檢驗(yàn)和分析網(wǎng)絡(luò)信息
當(dāng)發(fā)生針對(duì)Linux操作系統(tǒng)的入侵事件或其他影響事件時(shí),取證人員需要對(duì)數(shù)據(jù)源進(jìn)行初步確定,盡可能收集所有網(wǎng)絡(luò)數(shù)據(jù),在此基礎(chǔ)上提取、分析、評(píng)估有價(jià)值和意義的電子數(shù)據(jù)。整個(gè)過(guò)程不同案件有不同情況,有的案件只是日志誤報(bào)或者管理操作失誤;但有的案件可能很復(fù)雜,入侵者采取某種方式突破口令和保護(hù)機(jī)制,在系統(tǒng)中進(jìn)行不為人知的操作,并且在退出時(shí)仔細(xì)清掃了入侵的各種痕跡信息,導(dǎo)致管理人員沒有意識(shí)到系統(tǒng)已經(jīng)被攻入,取證人員也就很難獲取到有效電子數(shù)據(jù)。因此,在分析網(wǎng)絡(luò)信息階段,取證人員通常會(huì)采用多種方式和工具全面分析網(wǎng)絡(luò)數(shù)據(jù)。
3)檢驗(yàn)和分析網(wǎng)絡(luò)信息
當(dāng)發(fā)生針對(duì)Linux操作
(1)查網(wǎng)絡(luò)信息源。
在發(fā)生案件中,入侵痕跡通常會(huì)被多個(gè)網(wǎng)絡(luò)設(shè)備捕獲,但實(shí)際上分析這些信息源不具有可行性和可操作性,一般會(huì)從基本的信息源開始調(diào)查。
首先,確認(rèn)信息源的真實(shí)性。
其次,確認(rèn)信息源內(nèi)容的價(jià)值。
(1)查網(wǎng)絡(luò)信息源。
在發(fā)生案件中,入侵痕跡通常
(2)分析網(wǎng)絡(luò)信息。
在獲取和收集網(wǎng)絡(luò)數(shù)據(jù)的基礎(chǔ)上,取證人員系統(tǒng)性地分析數(shù)據(jù),辨認(rèn)事件基本類型,理解不同類型網(wǎng)絡(luò)數(shù)據(jù)的重要程度,識(shí)別攻擊活動(dòng)的主要特點(diǎn),確定能夠證明案件事實(shí)的電子數(shù)據(jù)證據(jù)鏈。檢驗(yàn)分析需要制定合理的策略和步驟,不僅關(guān)注事件本身的真實(shí)性,是否需要明確攻擊者身份,而且所有的操作都必須符合法律的相關(guān)規(guī)定。
(2)分析網(wǎng)絡(luò)信息。
在獲取和收集網(wǎng)絡(luò)數(shù)據(jù)的基礎(chǔ)
通常在分析網(wǎng)絡(luò)信息時(shí)需要注意以下要點(diǎn):
①排除“良性”事件。存在一些類攻擊事件是由于系統(tǒng)本身運(yùn)行出錯(cuò)導(dǎo)致的,需要排除這些“良性”事件。
②創(chuàng)建具有時(shí)間線的證據(jù)鏈。
③完整記錄分析時(shí)的操作過(guò)程。分析過(guò)程需要在取證之后得以驗(yàn)證,因此完整的記錄是校驗(yàn)操作的合理性和科學(xué)性的有效證據(jù)。
通常在分析網(wǎng)絡(luò)信息時(shí)需要注意以下要點(diǎn):
①排除“
2.?Linux網(wǎng)絡(luò)信息分析的常用技術(shù)
前述內(nèi)容為網(wǎng)絡(luò)信息分析的基本思路,在分析之前需要通過(guò)使用一些基本的工具和命令,采用必要的取證技術(shù)和手段獲取Linux操作系統(tǒng)受到入侵或破壞后的線索,以進(jìn)一步取證分析。
2.?Linux網(wǎng)絡(luò)信息分析的常用技術(shù)
前述內(nèi)容
5.2.5?Linux內(nèi)存信息分析
內(nèi)存信息屬于易失性電子數(shù)據(jù),當(dāng)關(guān)機(jī)以后相關(guān)信息便無(wú)法提取或固定。但有一些黑客入侵、惡意代碼程序分析等案件中,內(nèi)存信息的分析是發(fā)現(xiàn)犯罪線索、分析犯罪手法的重要途徑。對(duì)內(nèi)存信息分析可以在開機(jī)狀態(tài)下直接進(jìn)行,也可以先將內(nèi)存信息鏡像后在實(shí)驗(yàn)室進(jìn)行。
5.2.5?Linux內(nèi)存信息分析
內(nèi)存信息屬于易
1.在線分析內(nèi)存信息
在某些案件中需要對(duì)Linux內(nèi)存信息進(jìn)行分析,有一種方法是直接在開機(jī)狀態(tài)下進(jìn)行分析,通過(guò)命令工具箱直接提取內(nèi)存中的重要信息。直接分析內(nèi)存信息存在很多缺點(diǎn),首先,操作不具有可重復(fù)性;其次,每一次操作均或多或少破壞了原始內(nèi)存狀態(tài);最后,原環(huán)境中的命令工具不可信,需要自備工具。因此,當(dāng)內(nèi)存信息可能是至關(guān)重要的證據(jù)時(shí),宜先獲取物理內(nèi)存數(shù)據(jù),然后進(jìn)行分析。常見的在線分析命令如表5-5所示。
1.在線分析內(nèi)存信息
在某些案件中需要對(duì)Linu電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)
2.內(nèi)存鏡像文件分析
1)內(nèi)存鏡像文件的獲取
獲取內(nèi)存鏡像文件是實(shí)驗(yàn)室分析內(nèi)存的前提,內(nèi)存鏡像可以基于硬件方式獲取,也可以基于軟件方式獲取?;谲浖绞将@取內(nèi)存鏡像比較靈活,目前很多取證產(chǎn)品均通過(guò)此方式實(shí)現(xiàn)。下面僅基于軟件方式介紹內(nèi)存鏡像文件的獲取方式。
按照原理不同,基于軟件獲取鏡像文件的方式可分為兩類:第一類是利用對(duì)象或設(shè)備直接讀取物理內(nèi)存,第二類是利用驅(qū)動(dòng)或內(nèi)核擴(kuò)展讀取物理內(nèi)存。
2.內(nèi)存鏡像文件分析
1)內(nèi)存鏡像文件的獲取
第一類軟件,常見的方式有利用?/dev/mem或?/dev/kmem獲取內(nèi)存。/dev/mem是Linux提供的一個(gè)對(duì)物理內(nèi)存的映射,可以用來(lái)訪問(wèn)物理內(nèi)存;而?/dev/kmem是Linux提供的一個(gè)對(duì)虛擬內(nèi)存的映射,可以用來(lái)訪問(wèn)虛擬內(nèi)存??赏ㄟ^(guò)打開設(shè)備后利用mmap映射來(lái)讀取內(nèi)存,但目前主流Linux已經(jīng)限制或禁止使用?/dev/mem和?/dev/kmem設(shè)備。
第二類軟件,主要通過(guò)將一個(gè)內(nèi)核模式驅(qū)動(dòng)程序轉(zhuǎn)載到系統(tǒng)中并調(diào)用它,從而利用驅(qū)動(dòng)擁有的權(quán)限對(duì)物理內(nèi)存信息進(jìn)行讀寫操作。
第一類軟件,常見的方式有利用?/dev/mem或?/d
下面以使用廣泛的lime工具說(shuō)明獲取物理內(nèi)存的步驟。
(1)準(zhǔn)備工具(以lmg工具為例)。
lmg是一個(gè)較為簡(jiǎn)便的內(nèi)存獲取工具,集合了包括lime、Volatility在內(nèi)的模塊,因此對(duì)于Linux系列操作系統(tǒng)而言,使用lmg是獲取內(nèi)存的方法之一。準(zhǔn)備一個(gè)U盤,燒入Linux可識(shí)別的文件系統(tǒng),將lmg工具寫入后,開始獲取Linux內(nèi)存鏡像。
下面以使用廣泛的lime工具說(shuō)明獲取物理內(nèi)存的步驟。
(2)獲取內(nèi)存。
插入U(xiǎn)盤后,掛載到/media/liao/644213276FCD745C文件夾下,按下列步驟運(yùn)行:
①通過(guò)cdlmg/src進(jìn)入lmg源代碼。
②通過(guò)./lmg運(yùn)行l(wèi)mg內(nèi)存獲取工具,即可獲取Linux內(nèi)存鏡像。
(2)獲取內(nèi)存。
插入U(xiǎn)盤后,掛載到/media
(3)獲取內(nèi)容分析。
獲取后的文件存儲(chǔ)在/media/liao/644213276FCD745C/capture文件夾下。而lmg支持一個(gè)?-c選項(xiàng)來(lái)指定caseID目錄名,以代替默認(rèn)的<hostname>-YYYY-MM-DD_hh.mm.ss目錄。
無(wú)論使用哪個(gè)目錄名,該目錄都將包含以下內(nèi)容:
(3)獲取內(nèi)容分析。
獲取后的文件存儲(chǔ)在/med
①?<hostname>-YYYY-MM-DD_hh.mm.ss-memory.lime:RAM捕獲鏡像。
②?<hostname>-YYYY-MM-DD_hh.mm.ss-profile.zip:Volatility(TM)profile文件。
③?<hostname>-YYYY-MM-DD_hh.mm.ss-bash:Linux主機(jī)的/bin/bash副本。
④?volatilityrc:Volatility原型機(jī)的配置文件。
①?<hostname>-YYYY-MM-DD_hh
2)內(nèi)存鏡像文件的分析
當(dāng)獲取物理內(nèi)存鏡像以后,在安全的環(huán)境下利用內(nèi)存分析工具分析內(nèi)存鏡像文件,可以防止對(duì)原始信息的污染,避免不良后果。
支持內(nèi)存鏡像文件分析的工具很多,下面以開源軟件Volatility為例介紹內(nèi)存分析的一般方法。
2)內(nèi)存鏡像文件的分析
當(dāng)獲取物理內(nèi)存鏡像以后,
Volatility是一款基于GNU協(xié)議的開源框架,是使用Python語(yǔ)言編寫而成的內(nèi)存取證工具集,支持命令行操作,支持對(duì)各種操作系統(tǒng),如Windows、Linux、Mac、Android等內(nèi)存進(jìn)行取證分析。其工作流程:首先在取證計(jì)算機(jī)上安裝Volatility軟件包,接著將獲取的內(nèi)存副本傳輸?shù)饺∽C計(jì)算機(jī)中,最后進(jìn)行分析工作。表5-6所示為Volatility2.6常見的Linux內(nèi)存分析命令。
Volatility是一款基于GNU協(xié)議的開源框架,是電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)
Volatility工具的使用方法是:輸入Volatility命令,并附加若干個(gè)必要參數(shù)便可。下面是使用Volatility時(shí)的一個(gè)實(shí)例:
Volatility工具的使用方法是:輸入Volati
5.2.6其他信息源分析
1.隱藏文件和臨時(shí)文件
在Linux文件系統(tǒng)中以“.”開頭的文件或者目錄通常是隱藏的,攻擊者可以把入侵工具的文件和目錄命名為以“.”開頭的名稱,目的是不引起管理人員或取證人員的關(guān)注。取證人員在分析隱藏文件時(shí),則需要將隱藏文件也納入分析范圍,從時(shí)間、屬性等方面加以檢驗(yàn)。
5.2.6其他信息源分析
1.隱藏文件和臨時(shí)文件
2.網(wǎng)絡(luò)服務(wù)啟動(dòng)項(xiàng)
Linux操作系統(tǒng)在啟動(dòng)時(shí)可以嵌入惡意程序或者設(shè)定觸發(fā)條件,當(dāng)用戶開啟某些應(yīng)用時(shí)以觸發(fā)或等待系統(tǒng)定期允許。在Linux取證檢查分析中,檢查啟動(dòng)任務(wù)項(xiàng)是關(guān)鍵任務(wù)之一。Linux操作系統(tǒng)中的inetd.conf中是系統(tǒng)守護(hù)進(jìn)程的配置文件,其內(nèi)容為配置服務(wù)啟動(dòng)項(xiàng)。例如,如果開啟STMP服務(wù),在inetd.conf需要配置這樣的信息:包含<服務(wù)名稱><協(xié)議(TCP或UDP)><標(biāo)志(wait或nowait)><用戶><真實(shí)服務(wù)程序全路徑><真實(shí)服務(wù)程序名稱及參數(shù)>,如smtpstreamtcpnowaitroot/usr/sbin/sendmailsendmail-bs。
2.網(wǎng)絡(luò)服務(wù)啟動(dòng)項(xiàng)
Linux操作系統(tǒng)在啟動(dòng)時(shí)可
如果沒有開啟某項(xiàng)服務(wù),如FTP,則inetd.conf中不會(huì)設(shè)置FTP配置信息,或者在該配置項(xiàng)前加入“#”以注釋化,不予執(zhí)行。inetd.conf是Linux早期發(fā)行版本的配置文件,高版本的Linux用xinetd.conf代替了inetd.conf,xinetd的默認(rèn)配置文件是?/etc/xinetd.conf,其語(yǔ)法和/etc/inetd.conf存在差異,是?/etc/inetd.conf、/etc/hosts.allow、/etc/hosts.deny功能的組合。/etc/xinetd.conf(圖5-8)中的每一項(xiàng)均具有下列形式:
如果沒有開啟某項(xiàng)服務(wù),如FTP,則inetd.conf
serviceservice-name(默認(rèn)一項(xiàng)是defaults)
{
}
其中,service是必需的關(guān)鍵字,且屬性表必須用大括號(hào)括起來(lái),其每一項(xiàng)都定義了由service-name定義的服務(wù);service-name是任意的,但通常是標(biāo)準(zhǔn)網(wǎng)絡(luò)服務(wù)名,也可增加其他非標(biāo)準(zhǔn)的服務(wù),只要它們能通過(guò)網(wǎng)絡(luò)請(qǐng)求被激活,包括localhost自身發(fā)出的網(wǎng)絡(luò)請(qǐng)求。通過(guò)啟動(dòng)項(xiàng)檢查,取證人員可查看其詳細(xì)內(nèi)容,逐一查看各項(xiàng)服務(wù)配置,分析是否存在可疑服務(wù)。再者,在/etc/rc目錄下也存在著啟動(dòng)項(xiàng)配置信息,如sendmail配置文件。
serviceservice-name(默認(rèn)一項(xiàng)是圖5-8?xinetd.conf圖5-8?xinetd.conf
3.?Linux的Web服務(wù)器日志
服務(wù)器日志的典型示例是Web服務(wù)器日志,其中包含了頁(yè)面請(qǐng)求的歷史記錄。W3C維護(hù)Web服務(wù)器日志文件的標(biāo)準(zhǔn)格式,即常規(guī)日志格式,但還有其他專有格式。近些年來(lái),日志文件通常將內(nèi)容附加到文件末尾,添加了有關(guān)請(qǐng)求的信息,包括客戶端IP地址、請(qǐng)求日期/時(shí)間、請(qǐng)求的網(wǎng)頁(yè)、HTTP代碼、提供的字節(jié)、用戶代理、參考地址等。這些數(shù)據(jù)可以寫在一個(gè)文件中,也可以分成不同的日志,如訪問(wèn)日志、錯(cuò)誤日志、引用日志等。但是,服務(wù)器日志通常不收集用戶特定的信息。
3.?Linux的Web服務(wù)器日志
服務(wù)器日志的
常用的Linux服務(wù)器架構(gòu)是Apache和nginx。nginx是常用的HTTP服務(wù)器和反向代理服務(wù)器,常用在Linux服務(wù)器中。下面以nginx服務(wù)器為例進(jìn)行簡(jiǎn)單介紹。
對(duì)普通的Linux系統(tǒng)日志可用last和lastb進(jìn)行取證;而Linux服務(wù)器日志存放位置不固定,因此需根據(jù)內(nèi)存中的信息和網(wǎng)絡(luò)端口開放信息來(lái)判斷。取證人員可對(duì)端口開放信息進(jìn)行取證,以確認(rèn)使用的服務(wù)器架構(gòu)。圖5-9所示為服務(wù)器使用的nginx架構(gòu),圖5-10所示為nginx配置文件的存放位置。
常用的Linux服務(wù)器架構(gòu)是Apache和nginx。圖5-9服務(wù)器使用的nginx架構(gòu)圖5-9服務(wù)器使用的nginx架構(gòu)圖5-10?nginx配置文件的存放位置圖5-10?nginx配置文件的存放位置
取證人員通過(guò)分析nginx配置文件,可以找出nginx的訪問(wèn)日志、錯(cuò)誤日志和網(wǎng)站根目錄等信息,隨后便可對(duì)日志進(jìn)行分析,如圖5-11所示。
取證人員通過(guò)分析nginx配置文件,可以找出nginx圖5-11?nginx的訪問(wèn)日志、錯(cuò)誤日志和網(wǎng)站根目錄等信息圖5-11?nginx的訪問(wèn)日志、錯(cuò)誤日志和網(wǎng)站根目錄等
4.數(shù)據(jù)庫(kù)日志
通常情況下,Linux服務(wù)器使用數(shù)據(jù)庫(kù)存儲(chǔ)賬號(hào)、密碼以及其他信息,而數(shù)據(jù)庫(kù)日志存儲(chǔ)在不同目錄下。分析數(shù)據(jù)庫(kù)日志時(shí),應(yīng)對(duì)數(shù)據(jù)庫(kù)管理員的連接賬號(hào)、密碼進(jìn)行固定,并對(duì)數(shù)據(jù)庫(kù)的關(guān)鍵操作(如增、刪、改、查)進(jìn)行分析。
以MySQL為例,數(shù)據(jù)庫(kù)管理員的連接賬號(hào)和密碼可通過(guò)查看數(shù)據(jù)庫(kù)的配置信息進(jìn)行固定,如圖5-12所示,數(shù)據(jù)庫(kù)的配置信息通常在網(wǎng)站根目錄下。
4.數(shù)據(jù)庫(kù)日志
通常情況下,Linux服務(wù)器使用圖5-12數(shù)據(jù)庫(kù)的配置信息圖5-12數(shù)據(jù)庫(kù)的配置信息
數(shù)據(jù)庫(kù)更詳細(xì)的配置信息位于?/etc/f中,如圖5-13所示,通過(guò)此配置文件可以找到數(shù)據(jù)庫(kù)的目錄,記錄關(guān)鍵字為datadir。圖5-14使用vi命令查看MySQL操作日志
數(shù)據(jù)庫(kù)更詳細(xì)的配置信息位于?/etc/f中,圖5-15查找UPDATE等命令(1)圖5-15查找UPDATE等命令(1)圖5-16查找UPDATE等命令(2)圖5-16查找UPDATE等命令(2)
5.利用備份恢復(fù)數(shù)據(jù)庫(kù)數(shù)據(jù)
在電子數(shù)據(jù)取證實(shí)務(wù)過(guò)程中,數(shù)據(jù)庫(kù)恢復(fù)對(duì)電子數(shù)據(jù)取證有至關(guān)重要的作用。常用的數(shù)據(jù)庫(kù)恢復(fù)技術(shù)有以下兩種:
(1)通過(guò)binlog日志進(jìn)行恢復(fù)。
(2)通過(guò)導(dǎo)入備份的SQL進(jìn)行恢復(fù)。
另外,數(shù)據(jù)庫(kù)轉(zhuǎn)儲(chǔ)技術(shù)、數(shù)據(jù)庫(kù)鏡像恢復(fù)技術(shù)等都可進(jìn)行數(shù)據(jù)庫(kù)恢復(fù)。
5.利用備份恢復(fù)數(shù)據(jù)庫(kù)數(shù)據(jù)
在電子數(shù)據(jù)取證實(shí)務(wù)過(guò)第5章UNIX/Linux操作系統(tǒng)取證技術(shù)5.1UNIX/Linux操作系統(tǒng)的特點(diǎn)與常見類型5.2UNIX/Linux操作系統(tǒng)取證第5章UNIX/Linux操作系統(tǒng)取證技術(shù)5.1UN
5.1?UNIX/Linux操作系統(tǒng)的特點(diǎn)與常見類型
5.1.1?UNIX操作系統(tǒng)的特點(diǎn)與常見類型UNIX操作系統(tǒng)環(huán)境由內(nèi)核、Shell接口和程序構(gòu)成。UNIX內(nèi)核為程序分配內(nèi)存和時(shí)間,處理文件的存儲(chǔ)和進(jìn)程間的通信,響應(yīng)系統(tǒng)調(diào)用。Shell是聯(lián)系程序和內(nèi)核之間的接口,提供給用戶輸入和管理的接入程序界面(GraphicalUserInterface,GUI)。在UNIX中一切皆為文件或進(jìn)程,用戶通過(guò)Shell創(chuàng)建的也是進(jìn)程或者文件。
5.1?UNIX/Linux操作系統(tǒng)的特點(diǎn)與常見類型
1.特點(diǎn)
(1)開放性。開放性是UNIX操作系統(tǒng)最基本的特點(diǎn),UNIX操作系統(tǒng)之所以被廣泛研究和商業(yè)化應(yīng)用,與其良好的開放性息息相關(guān)。良好開放性的UNIX操作系統(tǒng)具有可移植性、可兼容性、可伸縮性、互操作性(Interoperability)等特性。
(2)標(biāo)準(zhǔn)化。UNIX發(fā)展過(guò)程中產(chǎn)生了很多UNIX分支,也產(chǎn)生了很多UNIX標(biāo)準(zhǔn)化組織。不論是研究機(jī)構(gòu)還是商業(yè)團(tuán)體都可以建立獨(dú)自的標(biāo)準(zhǔn),如ISO/IEC的POSIX標(biāo)準(zhǔn)、IEEEPOSIX標(biāo)準(zhǔn)、X/Open組織的XPG3/4工業(yè)標(biāo)準(zhǔn)以及后來(lái)的Spec1170。UNIX不遵從單一標(biāo)準(zhǔn),從而保證其不同環(huán)境的生命力。
1.特點(diǎn)
(1)開放性。開放性是UNIX操作系
(3)穩(wěn)定性。UNIX操作系統(tǒng)的穩(wěn)定性來(lái)源于其穩(wěn)定的系統(tǒng)架構(gòu)、保守的更新策略和嚴(yán)密的集成測(cè)試。通常情況下,如非必要,使用UNIX類系統(tǒng)會(huì)禁止安裝發(fā)行版本之外的軟件。
(4)可伸縮性。UNIX操作系統(tǒng)可適用于各類操作平臺(tái),如筆記本電腦、PC、工作站、大型服務(wù)站,能夠在由CPU芯片(包括Intel/AMD及HP-PA、MIPS、PowerPC、UltraSPARC、ALPHA等RISC芯片)搭建的體系結(jié)構(gòu)上運(yùn)行。UNIX操作系統(tǒng)支持SMP(SymmetricMultiprocessing)和Cluster等技術(shù),使得可支持的運(yùn)行節(jié)點(diǎn)和CPU的數(shù)據(jù)大大提高,完全能夠應(yīng)對(duì)大型服務(wù)器的處理需求。
(3)穩(wěn)定性。UNIX操作系統(tǒng)的穩(wěn)定性來(lái)源于其穩(wěn)定的
(5)網(wǎng)絡(luò)服務(wù)。TCP/IP網(wǎng)絡(luò)協(xié)議是基于UNIX操作系統(tǒng)開發(fā)和發(fā)展起來(lái)的。UNIX操作系統(tǒng)支持常用的網(wǎng)絡(luò)通信協(xié)議,包括NFS、DCE、IPX/SPX、SLIP、PPP等,能方便地與已有的主機(jī)系統(tǒng)以及各種廣域網(wǎng)和局域網(wǎng)相連接,這也是UNIX具有出色的互操作性的根本原因。
(5)網(wǎng)絡(luò)服務(wù)。TCP/IP網(wǎng)絡(luò)協(xié)議是基于UNIX操
2.常見類型
UNIX是多用戶多任務(wù)的分時(shí)操作系統(tǒng),支持多處理器架構(gòu)。常見的UNIX大體可以分為研究型UNIX和商業(yè)型UNIX,下面基于時(shí)間線簡(jiǎn)單列舉UNIX發(fā)展脈絡(luò),具體如圖5-1所示。
2.常見類型
UNIX是多用戶多任務(wù)的分時(shí)操作系圖5-1?UNIX發(fā)展脈絡(luò)圖5-1?UNIX發(fā)展脈絡(luò)
在商業(yè)UNIX開發(fā)應(yīng)用領(lǐng)域主要有6套主流UNIX操作系統(tǒng),包括IRIX、AIX、Tru64UNIX、HP-UX、UnixWare、Solaris。下面簡(jiǎn)單對(duì)這6種操作系統(tǒng)進(jìn)行對(duì)比,如表5-1所示。
在商業(yè)UNIX開發(fā)應(yīng)用領(lǐng)域主要有6套主流UNIX操作系電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)
5.1.2?Linux操作系統(tǒng)的特點(diǎn)與常見類型
1.?Linux操作系統(tǒng)的特點(diǎn)
Linux的基本思想有兩點(diǎn):一切皆為文件,系統(tǒng)中所有內(nèi)容都?xì)w結(jié)為文件,包括設(shè)備、進(jìn)程、硬件、系統(tǒng)和命令等;從內(nèi)核層面來(lái)看,這些都是具有不同權(quán)限和類型的文件?;趦?nèi)核的開源特性,Linux操作系統(tǒng)具有以下特點(diǎn):
5.1.2?Linux操作系統(tǒng)的特點(diǎn)與常見類型
1
(1)多任務(wù)、多用戶。系統(tǒng)可同時(shí)運(yùn)行多個(gè)程序,每個(gè)程序之間相互獨(dú)立,支持系統(tǒng)資源被不同用戶使用,每個(gè)用戶擁有自己的有特定權(quán)限的資源。
(2)設(shè)備獨(dú)立性。Linux操作系統(tǒng)將所有外部設(shè)備看作文件,在驅(qū)動(dòng)程序的支持下設(shè)備被當(dāng)作文件使用,不需要知道其具體存在形式,因此其內(nèi)核具有高度適應(yīng)性,在各平臺(tái)都可得以應(yīng)用。
(1)多任務(wù)、多用戶。系統(tǒng)可同時(shí)運(yùn)行多個(gè)程序,每個(gè)程
(3)良好的可移植性。Linux是一種可移植的操作系統(tǒng),能夠在從微型計(jì)算機(jī)到大型服務(wù)器的任何環(huán)境中和任何平臺(tái)上運(yùn)行,并且能夠按照自身系統(tǒng)方式運(yùn)行。
(4)安全穩(wěn)定的性能。Linux操作系統(tǒng)采用審計(jì)跟蹤、權(quán)限審核等安全保障技術(shù)措施,提供了安全的運(yùn)行環(huán)境。
(3)良好的可移植性。Linux是一種可移植的操作系
2.常見類型
Linux發(fā)行版本大體可以分為兩類:一類是社區(qū)組織維護(hù)的發(fā)行版本,以Debian為代表;另一類則是商業(yè)公司維護(hù)的發(fā)行版本,以REHL(RedHatEnterpriseLinux)為代表。按照管理系統(tǒng)的分類方式,Linux常見類型有以下形式。
(1)基于RPM管理方式。
(2)基于Debian管理方式。
2.常見類型
Linux發(fā)行版本大體可以分為兩類
5.2?UNIX/Linux操作系統(tǒng)取證
5.2.1Linux文件系統(tǒng)層次體系與常見目錄結(jié)構(gòu)1.?Linux文件系統(tǒng)層次體系從系統(tǒng)頂層設(shè)計(jì)來(lái)看,Linux文件系統(tǒng)層次由上而下主要分為用戶層,即應(yīng)用程序;內(nèi)核層(Kernel),包括虛擬文件系統(tǒng)(VirtualFileSystem,VFS)、文件系統(tǒng)(FileSystem)(如EXT3、EXT4、XFS等)、頁(yè)緩存(PageCache)、塊設(shè)備驅(qū)動(dòng)(BlockDeviceDriver)、磁盤驅(qū)動(dòng)等;硬件層(Hardware),即存儲(chǔ)設(shè)備,如圖5-2所示。
5.2?UNIX/Linux操作系統(tǒng)取證
5.2.1圖5-2?Linux文件系統(tǒng)層次圖5-2?Linux文件系統(tǒng)層次
內(nèi)核層中包含眾多模塊,其中塊設(shè)備驅(qū)動(dòng)模塊又分為磁盤驅(qū)動(dòng)和Flash驅(qū)動(dòng)兩種。在Linux操作系統(tǒng)中,對(duì)不同硬盤提供的驅(qū)動(dòng)模塊一般都存放在內(nèi)核目錄樹drivers/ata中。對(duì)于一般通用的硬盤驅(qū)動(dòng),也可以直接被編譯到內(nèi)核中,但不會(huì)以模塊的方式出現(xiàn),可以通過(guò)查看/boot/config-xxx.xxx文件來(lái)確認(rèn),如圖5-3所示。
內(nèi)核層中包含眾多模塊,其中塊設(shè)備驅(qū)動(dòng)模塊又分為磁盤驅(qū)動(dòng)圖5-3硬盤驅(qū)動(dòng)文件圖5-3硬盤驅(qū)動(dòng)文件
塊設(shè)備驅(qū)動(dòng):通過(guò)塊接口讀取LBA,將讀寫命令組合并插入命令處理隊(duì)列,從而執(zhí)行文件的讀寫。
頁(yè)緩存:又稱為頁(yè)高速緩沖存儲(chǔ)器,用于緩存文件的邏輯內(nèi)容,從而加快對(duì)磁盤上映像和數(shù)據(jù)的訪問(wèn)。頁(yè)緩存的大小為一頁(yè),通常為4KB。
文件系統(tǒng):將文件讀寫命令轉(zhuǎn)化為對(duì)磁盤LBA的操作,起到翻譯與轉(zhuǎn)換作用。
塊設(shè)備驅(qū)動(dòng):通過(guò)塊接口讀取LBA,將讀寫命令組合并插入
虛擬文件系統(tǒng):由于不同的文件系統(tǒng)都有各自的API接口,虛擬文件系統(tǒng)將不同的文件系統(tǒng)抽象統(tǒng)一,提供統(tǒng)一的API訪問(wèn)接口,再經(jīng)過(guò)系統(tǒng)調(diào)用(SystemCall)包裝,用戶層就可以經(jīng)過(guò)SCI(SystemCallInterface,系統(tǒng)調(diào)用接口)的系統(tǒng)調(diào)用來(lái)操作不同的文件系統(tǒng)。虛擬文件系統(tǒng)提供的常用API有mount、umount、open、close、mkdir。
虛擬文件系統(tǒng):由于不同的文件系統(tǒng)都有各自的API接口,
系統(tǒng)調(diào)用:應(yīng)用程序和內(nèi)核之間的接口,提供的所有系統(tǒng)調(diào)用構(gòu)成的集合即程序接口或API。系統(tǒng)調(diào)用把應(yīng)用程序的文件處理請(qǐng)求傳給內(nèi)核,調(diào)用相應(yīng)的內(nèi)核函數(shù)完成所需的文件處理,將文件處理結(jié)果返回給應(yīng)用程序。
用戶層:應(yīng)用程序是各種程序?qū)?yīng)的各種接口,如文件的創(chuàng)建、刪除、打開、關(guān)閉、寫、讀等。
系統(tǒng)調(diào)用:應(yīng)用程序和內(nèi)核之間的接口,提供的所有系統(tǒng)調(diào)用
2.?Linux文件系統(tǒng)基本類型
Linux內(nèi)核支持的文件系統(tǒng)類型可以通過(guò)查看usr/src/linux.xxx/fs目錄下的內(nèi)核源代碼樹獲取,如圖5-4所示。常常會(huì)有新型文件系統(tǒng)被加到系統(tǒng)中,有一些尚在測(cè)試的文件系統(tǒng)并不包含在舊內(nèi)核中。
2.?Linux文件系統(tǒng)基本類型
Linux內(nèi)核圖5-4內(nèi)核源代碼樹圖5-4內(nèi)核源代碼樹
3.?Linux常見的文件目錄
Linux發(fā)行版本之間的差別很少,主要表現(xiàn)在系統(tǒng)管理的特色工具以及軟件包管理方式的不同。兩者的目錄結(jié)構(gòu)基本上是一樣的。Windows的文件結(jié)構(gòu)是多個(gè)并列的樹狀結(jié)構(gòu),最頂部的是不同的磁盤(分區(qū)),如C、D、E、F等。
3.?Linux常見的文件目錄
Linux發(fā)行版
Linux的文件結(jié)構(gòu)是單個(gè)的樹狀結(jié)構(gòu),可以用tree命令進(jìn)行展示(默認(rèn)沒有安裝)。每次安裝系統(tǒng)時(shí)都會(huì)進(jìn)行分區(qū),Linux下磁盤分區(qū)和目錄的關(guān)系如下:
(1)任何一個(gè)分區(qū)都必須掛載到某個(gè)目錄上。
(2)目錄是邏輯上的區(qū)分,分區(qū)是物理上的區(qū)分。
(3)磁盤Linux分區(qū)都必須掛載到目錄樹中的某個(gè)具體的目錄上才能進(jìn)行讀寫操作。
(4)根目錄是所有Linux的文件和目錄所在的地方,需要掛載一個(gè)磁盤分區(qū)。
Linux的文件結(jié)構(gòu)是單個(gè)的樹狀結(jié)構(gòu),可以用tree命
圖5-5所示為一種目錄和分區(qū)關(guān)系。
接下來(lái)對(duì)每一種目錄一一進(jìn)行介紹。
/:根目錄Linux文件系統(tǒng)的入口,也是最高級(jí)、最重要的目錄,除可衍生出其他目錄外,還和系統(tǒng)的開機(jī)、還原、系統(tǒng)修復(fù)有關(guān),一般要求不要把任務(wù)應(yīng)用程序直接放在根目錄下,若容量滿了,則可能無(wú)法登錄(需要注意日志輸出是否在根目錄下)。
/bin:系統(tǒng)需要的基本命令,主要是指在單用戶模式下還能執(zhí)行的命令,主要有cat、mv、mkdir、cp、bash、ls。
圖5-5所示為一種目錄和分區(qū)關(guān)系。
接下來(lái)對(duì)每一種
/boot:內(nèi)核和加載內(nèi)核需要的文件。grub系統(tǒng)引導(dǎo)管理器也在該目錄下,位于/boot/grub/。GNUGRUB(簡(jiǎn)稱GRUB)是一個(gè)來(lái)自GNU項(xiàng)目的啟動(dòng)引導(dǎo)程序。GRUB可以實(shí)現(xiàn)多系統(tǒng)啟動(dòng),它允許用戶在計(jì)算機(jī)內(nèi)同時(shí)擁有多個(gè)操作系統(tǒng),并在計(jì)算機(jī)啟動(dòng)時(shí)選擇希望運(yùn)行的操作系統(tǒng)。GRUB可用于選擇操作系統(tǒng)分區(qū)上的不同內(nèi)核,也可用于向這些內(nèi)核傳遞啟動(dòng)參數(shù)。GRUB是在計(jì)算機(jī)啟動(dòng)后運(yùn)行的第一個(gè)程序,是用來(lái)負(fù)責(zé)加載、傳輸控制到操作系統(tǒng)的內(nèi)核,一旦把內(nèi)核掛載,系統(tǒng)引導(dǎo)管理器的任務(wù)便完成了。系統(tǒng)引導(dǎo)的其他部分,如系統(tǒng)的初始化及啟動(dòng)過(guò)程則完全由內(nèi)核來(lái)控制完成。
/boot:內(nèi)核和加載內(nèi)核需要的文件。grub系統(tǒng)引導(dǎo)電子數(shù)據(jù)取證技術(shù)--課件--第5章-UNIXLinux操作系統(tǒng)取證技術(shù)
/dev:在Linux操作系統(tǒng)下任何設(shè)備及接口設(shè)備都是以文件形式存在于設(shè)備文件存儲(chǔ)目錄中的。
/etc:系統(tǒng)的主要配置文件都放在該目錄下,為了避免發(fā)生系統(tǒng)執(zhí)行錯(cuò)誤,在此目錄下不放其他外部可執(zhí)行文件。常見的目錄有/etc/inittab、/etc/init.d/、/etc/modprobe.conf、/etc/X11/、/etc/fstab/、/etc/sysconfig/。/etc/init.d/為開機(jī)啟動(dòng)腳本,/etc/xinetd.d/包含xinetd服務(wù)進(jìn)程控制的所有傳統(tǒng)網(wǎng)絡(luò)服務(wù)使用的配置文件,/etc/sysconfig/network/scripts/為網(wǎng)管配置。
/dev:在Linux操作系統(tǒng)下任何設(shè)備及接口設(shè)備都是
/home:普通用戶的默認(rèn)存儲(chǔ)目錄。主文件夾有兩種代號(hào):“~”代表用戶的主目錄;“~XX”代表XX的主文件夾。
/lib:庫(kù)文件和內(nèi)核模塊存放目錄,主要是開機(jī)相關(guān)文件以及在/bin/、/sbin目錄下命令會(huì)調(diào)用的庫(kù)函數(shù)。/lib/modules會(huì)放內(nèi)核相關(guān)的模塊;/lib64和/lib類似,主要存放64位版本的庫(kù)函數(shù)。
/media:即插即用設(shè)備的掛載點(diǎn)自動(dòng)存放在該目錄下。例如U盤,cdrom/dvd自動(dòng)掛載后,就會(huì)在該目錄下。其常見的目錄有/media/floppy、/media/cdrom。
/home:普通用戶的默認(rèn)存儲(chǔ)目錄。主文件夾有兩種代號(hào)
/mnt:臨時(shí)文件系統(tǒng)的掛載點(diǎn)目錄。
/opt:第三方軟件的存放目錄。
/proc:虛擬文件系統(tǒng)目錄,放置內(nèi)存中的數(shù)據(jù),當(dāng)有一個(gè)進(jìn)程啟動(dòng)時(shí),就自動(dòng)創(chuàng)建一個(gè)文件夾。比較重要的有?/proc/meminfo和/proc/cpuinfo,可以通過(guò)這兩個(gè)文件查看內(nèi)存和CPU的情況;另外還有?/proc/dma、/proc/interrupts、/proc/ioports、/proc/net/*?等文件。
/root:L
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 屆深圳高級(jí)中學(xué)高三第二次模擬試題語(yǔ)文
- 高三語(yǔ)文試題分類匯編 標(biāo)點(diǎn)符合
- 開健身工作室心得
- 宜春精密制造項(xiàng)目申請(qǐng)報(bào)告
- 2024-2025學(xué)年高中語(yǔ)文第四單元文言文215勸學(xué)節(jié)選習(xí)題含解析粵教版必修4
- 2024-2025學(xué)年高中物理第7章分子動(dòng)理論第2節(jié)分子的熱運(yùn)動(dòng)課后練習(xí)含解析新人教版選修3-3
- 中國(guó)煙氣分析儀行業(yè)發(fā)展趨勢(shì)預(yù)測(cè)及投資戰(zhàn)略咨詢報(bào)告
- 2024-2025學(xué)年高中生物第三章胚胎工程第二節(jié)胚胎工程學(xué)案浙科版選修3
- 2024-2025學(xué)年高中地理第四章生態(tài)環(huán)境保護(hù)第二節(jié)草地退化及其防治學(xué)案新人教版選修6
- 2024-2025學(xué)年高中語(yǔ)文第四單元文字繪出的圖畫4云南冬天的樹林實(shí)戰(zhàn)演練蘇教版選修現(xiàn)代散文蚜
- 《贏利》精讀圖解
- 高一化學(xué)必修一試題
- 大學(xué)生職業(yè)素養(yǎng)訓(xùn)練(第六版)教案 第二單元 學(xué)習(xí)職業(yè)禮儀
- 2022年中華護(hù)理學(xué)會(huì)輸液連接裝置安全管理專家共識(shí)解讀
- 內(nèi)鏡下ESD護(hù)理配合
- DB34∕T 1644-2012 南方紅豆杉用材林栽培技術(shù)規(guī)程
- 直腸癌課件完整版本
- 2024年山東省青島市普通高中自主招生物理試卷(含解析)
- 胸部影像檢查護(hù)理常規(guī)
- 【Z精密零部件公司企業(yè)文化建設(shè)問(wèn)題及優(yōu)化建議14000字(論文)】
- 2024-2030年紅茶行業(yè)市場(chǎng)深度調(diào)研及發(fā)展趨勢(shì)與投資戰(zhàn)略研究報(bào)告
評(píng)論
0/150
提交評(píng)論