麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 系統 > Unix > 正文

文件系統安全(unix)

2019-09-08 23:19:55
字體:
來源:轉載
供稿:網友

1. 基礎知識  

文件系統是unix系統安全的核心。在unix中,所有的事物都是文件。Unix中的基本文件類型有正規文件、目錄、特殊文件、鏈接、Sockets等等。這些不同類型的文件以一個分層的樹結構進行組織,以一個叫"root"的目錄為起始位置("/")。整個就是一個文件系統。每個文件對應一個"i節點", "i節點"包括UID(文件擁有者)、GID(文件所在組)、模式(文件的權限)、文件大小、文件類型、ctime("i節點"上次修改時間)、mtime(文件上次修改時間)、atime(文件上次訪問時間)、nlink(鏈接數)。它表示了文件的基本屬性。  

大家注意到,"/"下有很多的目錄,那么這些目錄是干什么的呢?我簡要介紹一下目錄結構。如下:  

/bin 用戶命令的可執行文件  
/dev 特殊設備文件  
/etc 系統執行文件、配置文件、管理文件,主要是配置文件  
/home 用戶起始目錄  
/lib 引導系統以及在root文件系統中運行命令所需的共享庫文件  
/lost+found 與特定文件系統斷開連結的丟失文件  
/mnt 臨時安裝的文件系統(如光驅、軟驅)  
/proc 一個偽文件系統,用來作為到內核數據結構或正在運行的進程的接口(用于調試)  
/sbin 只有root使用的可執行文件和只需要引導或安裝/usr的文件  
/tmp 臨時文件  
/usr 為用戶和系統命令使用的可執行文件、頭文件、共享庫、幫助文件、本地程序(在/usr/local中)  
/var 用于電子郵件、打印、cron等的文件,統計文件,日志文件  

文件系統有多種類型,linux內核支持如下文件系統:  

ext2 固定和可移動磁盤都支持的一種高性能文件系統,用于linux  
msdos 由MS-DOS和Windows使用  
umsdos Linux使用的一種擴充的DOS文件系統,支持長文件名、權限設置  
iso9660 遵從ISO9660標準的CD-ROM文件系統  
hpfs High Performance Filesystem 高性能文件系統,OS/2使用  
minix 在Minux OS中使用,最早的Linux文件系統  
nfs 用來訪問遠程計算機中磁盤的網絡文件系統  
swap 用作交換的磁盤分區  

2. 文件權限 

文件權限是unix文件系統安全的關鍵。Unix中的每個用戶有一個唯一的用戶名和UID(用戶ID號),每個用戶屬于一個或多個組。基本分組成員在/etc/passwd中定義,附加的分組成員在/etc/group中定義。例如,用戶tiger的UID為225,分組為11(students),此外,他還是分組185(postgraduates)的成員。每個文件和目錄有三組權限,一組是文件的擁有者、一組是文件所屬組的成員、一組是其他所有用戶。"r"表示可讀,"w"表示可寫,"x"表示可執行。一共9位(每組3位),合起來稱為模式位(mode bits)。  

模式位通常由一列10個字符來表示,每個字符表示一個模式設置,第一個指明文件類型,如(d表示目錄,-表示普通文件,l表示鏈接文件等等)。例如,用ls -l 命令顯示如下:  

drwxr-xr-x 2 root root 1024 Aug 13 09:22 backup/  
-rw-r--r-- 1 root root 1824 Apr 21 18:45 client.c  
-rw------- 1 root root 65536 Apr 22 17:56 core  
-rw-r----- 1 root root 2351 Apr 22 14:01 cry1.bak  
-rwxr-xr-x 1 root root 27492 Apr 21 18:47 crypt*  
-rw-r----- 1 tiger tiger 2450 Apr 22 15:16 cryption_server.c  
-rw-r----- 1 tiger tiger 1544 Apr 22 15:02 myinclude.h  
-rwxr-xr-x 1 root root 8280 May 3 10:35 test*  

例如最后一行以"-"開始,表示test使一個普通文件,文件擁有者可以讀寫執行、本組其他成員可以讀執行、其他用戶可以讀執行。我們可以用chmod和umask命令來改變權限,這很簡單,察看相應的幫助就知道怎么修改權限。  

3. SUID/SGID 

為什么我要單獨把他們從文件權限中分出來講呢?因為,這是網絡入侵者非常愛用的入侵入口。SUID表示"設置用戶ID",SGID表示"設置組ID"。當用戶執行一個SUID文件時,用戶ID在程序運行過程中被置為文件擁有者的用戶ID。如果文件屬于root,那用戶就成為超級用戶。同樣,當一個用戶執行SGID文件時,用戶的組被置為文件的組。例如,PS命令以SUID root運行,他從系統內存中讀取,這是一般用戶不能做的。SUID程序代表了重要的安全漏洞,特別是SUID設為root的程序。 

Unix實際上有兩種類型的用戶ID。"real user ID"是在登錄過程中建立的用戶ID。 "effective user ID"是在登錄后的會話過程中通過SUID和SGID位來修改。當一個用戶運行一條命令時,進程繼承了用戶登錄Shell的權限,這時"real user ID"和"effective user ID"是相同的。當SUID位被設置時,進程繼承了命令擁有者的權限。例如普通用戶運行passwd命令時,他能夠修改/etc/passwd文件,盡管文件是屬于root的。這成為可能是因為passwd命令以root的SUID權限運行。那么如何識別SUID程序呢?我們檢查文件的權限模式,在它的第四位如果不是"x",而是"s",就是一個SUID程序。例如,ls -l /bin/su命令顯示:  

-rwsr-xr-x 1 root root 14888 Aug 15 1999 /bin/su*  

表明su是一個SUID程序。  

Unix系統安全的一種典型攻擊就是創建一個SUID是root的shell拷貝,然后把他隱藏。通過調用后門,攻擊者就獲得了root的權利。例如,某個系統管理員忘了關閉某個root的 Shell,一個壞人經過運行如下命令:  

cp /bin/bash /home/badman/.bash; chmod 4777 /home/badman/.bash  

badman現在就有了一個bash的SUID root拷貝任其處理。他就有完整的root權限了。因此,系統管理員應該定期察看系統中有哪些SUID和SGID文件。用下面的命令可以實現:find / -type f ( -perm -4000 -o -perm -2000 ) -ls  

當然,攻擊者可以通過修改find命令來逃避檢測,所以要運行專門的檢測軟件(如Tripwire)來進行檢查。  

4. 加密與驗證 

Tripwire工具提出了使用密碼校驗和來確定文件是否經過了未認證的修改,加密技術可 以用來保護機密文件甚至整個文件系統。加密是通過密鑰將明文轉化為一堆亂碼的密文,從而起到保護文件內容的作用。Unix常用的加密算法有crypt(最早的加密工具)、DES(目前最常用的)、IDEA(國際數據加密算法)、RC4、Blowfish(簡單高效的DES)、RSA等等。 具體的加密算法這里不再闡明,需要了解請閱讀Bruce Schneier的《應用密碼學》一書。注意單向hash函數,他處理任意長度的信息并返回一個固定長度的hash值(128位)。常用的有MD5、SHA、HAVAL、Snefru等等。單向hash函數經常和公開密鑰算法一起來創建數字簽名,提供身份證明。與傳統的簽名相比,數字簽名還可以指出文件是否被修改過。  

PGP是unix下用來保護信息特別是電子郵件的工具。他使用IDEA算法為數據加密,使用RSA算法來進行密鑰管理和數字簽名,使用MD5來作為一個單向hash函數。其特點在于安全:不僅內容被偽裝,連發送者的簽名也加密。PGP還可以用來加密本地文件。現在常用的Linux下的PGP工具為:pgpe(加密)、pgps(簽名)、pgpv(確認/解密)、pgpk(管理密鑰)。請參考相應的幫助來使用。  

"特洛伊木馬"的故事不知道大家聽說過沒有。古希臘人久攻特洛伊城不下,于是假裝 求和,送了一個巨大的木馬作為禮物,向城主Minerva表示和解。特洛伊人將木馬拉入城內,到了夜晚,藏在木馬中的希臘士兵鉆出來,里應外合,攻破特洛伊城。在計算機安全領域,這種欺騙技巧成為攻擊計算機安全的一種標準方式。他藏在你的計算機里,隨時可能爆發,如果攻擊者需要的話。因此,一旦一個系統被裝了特洛伊木馬,他就不能在信任了,必須從新安裝。怎么避免呢,要養成良好的習慣,例如:限制下載,只從有聲望的站點下載東西; 檢驗下載的文件;避免運行已編譯好的二進制代碼,從源代碼開始編譯;不執行不信任的電子郵件發送的程序;不執行從非信任的Web站點得到的Java applets和Java Script。  

MD5校驗和有時與軟件一起發行,用戶可以用他來檢驗一個軟件包。用戶可以運行Red Hat Linux中包含的md5sum工具,例如:  
md5sum cops.1.04.tar.gz  

結果:lfa416872934e5bee99068f9989cb8b0 cops.1.04.tar.gz  

和軟件包自帶的校驗和文件比較,如果不符,則說明文件在傳輸過程中出了問題,最好從新下載,本文件不可靠。md5sum還可以用來檢驗系統文件,在第一次安裝系統之后對重要的lilo系統二進制文件進行一下校驗:md5sum lilo,其結果應該一直保持不變,除非升級。  

5. 完整性檢查 

完整性是安全系統的核心屬性。用戶需要知道昨天寫的文件和今天打開的文件沒有被改動。攻擊者可以用很多方法破壞文件系統,從依靠錯誤配置的權限獲益到放置特洛伊木馬和病毒。Linux中用cksum命令對一個特定文件執行16位校驗和的計算,上面的md5sum也是一個檢驗的命令。  

RPM(Red Hat Package manager)是由Red Hat Software開發并包含在其Linux產品之中的多功能軟件安裝管理器。他可以用來建立、安裝、查詢、檢驗、升級和卸載獨立的軟件包。  

一個RPM包包括了一個壓縮文件和包信息。當使用RPM安裝軟件時,RPM為每個被安裝文件向數據庫中添加信息,包括:MD5校驗和、文件大小、文件類型、擁有者、組和權限模式。當RPM以"--verify"標志運行時,他把初始文件的值與當前安裝的文件進行比較并報告差異。例如,下面檢驗當前的Tripwire文件:rpm -verify Tripwire-1.30-1  

結果:  

S.5….T /usr/local/bin/tw/siggen  
S.5….T /usr/local/bin/tw/tripwire  
S.5….T /usr/local/bin/tw/tw.config  
……..T /var/tripwire/tw.db_TEST  

說明幾個Tripwire文件已經被改動。RPM簽名檢查命令的常見形式為:rpm -checksig +,他檢查包含在軟件包內的PGP簽名以保證完整性和軟件包的原裝性。  

6. 加密文件系統  

加密文件系統是文件系統安全的一個更引人注目的方法。他根據一個簡單的推斷:如果 一個系統保存機密數據,那么就應該以加密形式保存。加密文件系統(CFS)的核心思想是: CFS為目錄和文件提供一個透明的接口,并自動使用用戶的密鑰加密。一條單獨的命令把一個密鑰和一個目錄關聯起來,從這時起,目錄的內容在寫時自動加密,在打開時自動解密。Red Hat的CFS可以從下面的地址下載:  
http://www.replay.com/redhat/cfs.html  

一個由意大利人開發的透明加密文件系統(TCFS),用戶甚至不知道他們的文件倍加密了。從下面的地址下載:http://tcfs.dia.unisa.it/  

7. 備份  

備份的重要性我想不需要多說了,那么備份有那些策略呢?常見的有:系統初裝時的備 份、定期備份、增量式備份(只備份改動的)、特別備份(為某些文件備份)等等。Linux系統提供了以下備份工具:  

a. cp:拷貝,例如把dir1中的所有內容拷貝到dir2:cp -R dir1 dir2  
b. tar:可以創建、把文件添加到或從一個tar檔案中解開文件。檔案本身也是一個文件,它包含其他的許多文件和有關信息。Tar最初用于磁帶機。  
c. cpio:把文件拷貝進或拷貝出一個cpio檔案或tar檔案,與tar類似  
d. dump:得到整個文件系統并把他拷貝到備份介質上,一個確保完整備份的正規方式是跟隨定期增量備份運行一個0級或完全備份,dump支持10個級別并能把上次備份后改動的所有文件以更低的級別備份。缺省情況dump將備份到磁盤介質。例如,把一個SCSI硬盤(/dev/rsd0a)以0級備份到磁帶(/dev/rst0)。dump 0f0 /dev/rst0 1500 /dev/sd0a  
e. l restore:用來恢復整個文件系統或提取單個文件。與dump相對。注意,restore命令特別冒險,因為他運行SUID root,像任何SUID root程序一樣,可以根據自己的風險來運行restore。  

8. 其他常見系統安全工具導航  

Crypt Breakers Workbench,一個集成多種工具的平臺,幫助一個加密人員讀取BSD4.2加密的文件。  
ftp://coast.cs.purdue.edu/pub/tools/unix/cbw  


Hobgoblin  
ftp://coast.cs.purdue.edu/pub/tools/unix/hobgoblin/  


tripwire,強烈推薦,是一個文件系統完整性檢查工具  
http://www.tripwiresecurity.com  


Trojan,一個可以被任何用戶運行來檢查特洛伊木馬的perl程序  
ftp://coast.cs.purdue.edu/pub/tools/unix/trojan/trojan.pl  


Pretty Good Privacy(PGP),流行的郵件和文件加密程序  
http://rufus.w3.org/linux/RPM/pgp.html  


libdes,建立一個DES加密庫和一個DES加密程序的工具。包括一個crypt(3)的快速實現  
ftp://ftp.psy.uq.oz.au/pub/Crypto/DES/

 
 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 国产又白又嫩又紧又爽18p | 欧美一级美国一级 | 免费看性xxx高清视频自由 | 国产亚洲精品yxsp | 国产精品美女久久久免费 | 91美女啪啪| 国产精品av久久久久久网址 | 亚洲综合网站 | 在线播放中文 | 男女生羞羞视频网站在线观看 | 国产免费观看一区二区三区 | 亚洲精品久久久久久久久久 | 天天草天天干天天 | 精品午夜久久 | 欧美成人精品一区二区 | 舌头伸进添的我好爽高潮网站 | 久久成人免费观看 | 亚洲精中文字幕二区三区 | 亚洲av一级毛片特黄大片 | 在线亚洲综合 | 一级毛片免费高清视频 | 成人福利电影在线观看 | 欧美成人免费tv在线播放 | 天天操很很操 | av观看国产 | 欧美性成人 | 国产一级午夜 | 日本最新免费二区三区 | 亚洲一区免费观看 | 国产视频在线播放 | 欧美一级做性受免费大片免费 | 欧美性猛交xxx乱大交3蜜桃 | 欧美一级视频免费看 | 国产精品免费在线 | 精品一区二区在线观看视频 | 男女隐私免费视频 | 中文字幕一区二区三区四区 | 日韩av有码在线 | 精品成人免费视频 | 国产免费观看电影网站 | 成人毛片在线 |