時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(1)
受影響系統(tǒng):
Linux kernel 2.2.17
Linux kernel 2.2.16
Linux kernel 2.2.15
Linux kernel 2.2.14
Linux kernel 2.2.13
Linux kernel 2.2.12
Linux kernel 2.2.10
不受影響系統(tǒng):
Linux kernel 2.4
描述:
ptrace是一個Unix系統(tǒng)調(diào)用,通常在斷點調(diào)試中用于分析運行中的進程,gdb、strace等調(diào)試工具都使用了這個系統(tǒng)調(diào)用。Linux 2.2.x內(nèi)核(甚至更早版本的內(nèi)核)的ptrace實現(xiàn)存在一個漏洞,允許攻擊者獲取本來無權(quán)獲取的的敏感信息。
出于安全考慮,普通用戶不能使用ptrace()系統(tǒng)調(diào)用跟蹤分析setuid程序,不能使用上述調(diào)試工具關(guān)聯(lián)其他用戶啟動的運行中的進程。如果二進制文件bar對于用戶foo來說不可讀(r權(quán)限去掉了),foo用戶無權(quán)使用ptrace()系統(tǒng)調(diào)用跟蹤bar程序的執(zhí)行。
所有這些限制都在ptrace( PT_ATTACH, ... )實現(xiàn)中得到檢查。但是,當(dāng)ptrace()用于跟蹤子進程時,未能正確檢查安全限制,bar程序?qū)τ趂oo用戶可執(zhí)行,即使不可讀,也可按子進程方式跟蹤bar程序的執(zhí)行過程,此時可以觀察bar程序的內(nèi)存映像。惡意用戶可能利用這種技術(shù)獲取敏感信息,本來這些敏感信息通過chmod go-r后防止諸如strings bar一類的窺探??梢岳迷撀┒礊檫M一步損害系統(tǒng)安全性做準(zhǔn)備。
測試方法:
警 告
以下程序(方法)可能帶有攻擊性,僅供安全研究與教學(xué)之用。使用者風(fēng)險自負!
下例是采用ptrace( PT_ATTACH, ... )企圖跟蹤一個不可執(zhí)行文件:
$ ls -l testfile
-rwx--x--x 1 root root 216916 Dec 4 11:59 testfile
$ ./testfile
waiting... <-- 假設(shè)testfile運行后保持,并沒有立即結(jié)束
從另外一個shell上執(zhí)行跟蹤命令:
$ strace -p 11535 <-- 假設(shè)testfile進程號是11535
attach: ptrace(PTRACE_ATTACH, ...): Operation not permitted
因為testfile不可讀,跟蹤失敗,這是正確的安全限制。
--------------------------------------------------------------------------
下例采用子進程方式成功跟蹤了一個不可讀文件:
$ strace testfile
SYS_197(0x3, 0xbffff650, 0x40197d40, 0x80cca38, 0x3) = -1 ENOSYS (Function not implemented)
fstat(3, {st_mode=S_IFREG|0644, st_size=1744, ...}) = 0
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40015000
...
建議:
升級內(nèi)核到2.4
關(guān)鍵詞標(biāo)簽:Linux漏洞
相關(guān)閱讀
熱門文章
安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程
Tomcat9.0如何安裝_Tomcat9.0環(huán)境變量配置方法
多種操作系統(tǒng)NTP客戶端配置
Linux操作系統(tǒng)修改IP
人氣排行 Linux下獲取CPUID、硬盤序列號與MAC地址 dmidecode命令查看內(nèi)存型號 linux tc實現(xiàn)ip流量限制 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程 linux下解壓rar文件 lcx.exe、nc.exe、sc.exe入侵中的使用方法 Ubuntu linux 關(guān)機、重啟、注銷 命令 查看linux服務(wù)器硬盤IO讀寫負載