Linux操作系統(tǒng)的漏洞及防范措施
Linux操作系統(tǒng)的漏洞及防范措施
Linux操作系統(tǒng)的漏洞威脅會被黑客利用,從而危害到系統(tǒng)安全。下面由學(xué)習(xí)啦小編為大家整理了Linux操作系統(tǒng)的漏洞及防范措施的相關(guān)知識,希望對大家有幫助!
Linux操作系統(tǒng)的漏洞及防范措施一
1. 安全漏洞:Linux VMLinux 任意內(nèi)核執(zhí)行拒絕服務(wù)漏洞
漏洞描述:
Linux 是 UNIX 操作系統(tǒng)的變種,目前已經(jīng)出現(xiàn)了很多版本,其中某些版本的內(nèi)核存在安全問題,可能導(dǎo)致拒絕服務(wù)攻擊。如果本地用戶從命令行執(zhí)行第二種內(nèi)核時,該內(nèi)核通常會被正在運行的內(nèi)核殺死,但是對于某些版本的內(nèi)核來說,第二種內(nèi)核會使正在運行的內(nèi)核崩潰,從而導(dǎo)致拒絕服務(wù)。
防范措施:
如果不能立刻安裝補丁或者升級,建議采取以下措施以減少風(fēng)險: 禁止用戶運行第二種內(nèi)核。建議使用Linux系統(tǒng)的用戶立刻升級到2.4.12或更新內(nèi)核
2. 安全漏洞:SuSE Linux SuSEHelp CGI 腳本執(zhí)行任意命令漏洞
漏洞描述:
SuSE Linux由SuSE發(fā)布的免費、開放源代碼的UNIX操作系統(tǒng)的變種。susehelp是SuSE用戶幫助文檔的一部分,用來快速解決用戶遇到的常見問題。該程序存在一個安全問題,可能允許攻擊者執(zhí)行任意命令。這是由于susehelp所帶的幾個CGI腳本在打開文件時沒有過濾用戶輸入的元字符造成的。
防范措施:
如果不能立刻安裝補丁或者升級,建議采取以下措施以減少風(fēng)險:暫時去掉這些CGI腳本的執(zhí)行權(quán)限。廠商已經(jīng)發(fā)布了補丁以修復(fù)該安全問題。
3. 安全漏洞:RedHat Linux IPTables 保存選項無法恢復(fù)規(guī)則漏洞
漏洞描述:Red Hat Linux 是免費、開放源代碼的UNIX操作系統(tǒng)的變種,是由Red Hat 公司發(fā)布和維護的。該系統(tǒng)的防火墻存在一個安全問題,可能導(dǎo)致管理員在不知情的情況下將系統(tǒng)暴露在危險之中。這是由于“-c”選項創(chuàng)建了一個iptables無讀權(quán)限的文件,當(dāng)系統(tǒng)重新啟動,iptables試圖加載這個文件時會失敗,這樣該系統(tǒng)就會失去保護。
防范措施:目前廠商已經(jīng)發(fā)布了補丁程序,可安裝補丁或者升級,或手工修改該文件的權(quán)限,使其可以被iptables讀取。
4. 安全漏洞: RH Linux Tux HTTPD 拒絕服務(wù)漏洞
漏洞描述:
Tux 是內(nèi)核空間的HTTP Server,可以最大地提高系統(tǒng)性能,能夠與用戶空間的HTTPServer如Apache同時工作,缺省情況下是禁止的。該軟件存在一個安全問題,可能導(dǎo)致拒絕服務(wù)。通過向遠程服務(wù)器發(fā)送超長的“Host:”頭,就可以導(dǎo)致遠程服務(wù)器拒絕服務(wù),只有重新啟動才能恢復(fù)正常工作。
如果運行以下命令:
perl -e "print qq(GET / HTTP/1.0 Accept: */* Host:). qq(A) x 6000 .qq( )" |nc
這將會導(dǎo)致遠程主機發(fā)生下列信息:
Code: Bad EIP Value.(0)Kernel Panic: Aiee, killing interrupt handler!In interrupt handler - not syncing!
防范措施:
如果不能立刻安裝補丁或者升級,建議采取以下措施:禁止運行Tux廠商補丁。
5. HP Secure OS Software for Linux 文件系統(tǒng)保護漏洞
漏洞描述:
HP Secure OS Software for Linux 是一個軟件包,同時也是一個提供了多種安全增強的Linux內(nèi)核,包括附加的文件系統(tǒng)控制。該軟件包被發(fā)現(xiàn)存在一個安全問題:可能允許用戶訪問到部分通過文件系統(tǒng)保護規(guī)則保護的文件。
防范措施:
目前廠商已經(jīng)發(fā)布了針對該問題的補丁,請安裝廠家提供的補丁。
6. Linux kernel ptrace提升權(quán)限漏洞
受影響的系統(tǒng): Linux kernel 2.2.x, x<=19 Linux kernel 2.4.y, y<=9
漏洞描述:Linux kernel的某些版本在處理ptrace時存在一些實現(xiàn)上的漏洞。本地用戶可能非法提升權(quán)限,比如獲取root權(quán)限。問題在于當(dāng)一個進程被ptrace跟蹤后,如果它再啟動某個setuid程序時,系統(tǒng)仍然認(rèn)為它是一個被跟蹤的進程。這可能導(dǎo)致普通用戶的進程可以修改特權(quán)進程的執(zhí)行流程,從而提升權(quán)限。
防范措施:Linux kernel 2.4.12已經(jīng)解決了這一問題,可以在廠商主頁下載最新升級版本,注意升級到新版本需要重新編譯并替換原有內(nèi)核,并重新啟動系統(tǒng)才能生效。
7. Linux kernel 深層鏈接拒絕服務(wù)漏洞
受影響的系統(tǒng):Linux kernel 2.2.x, x<=19 Linux kernel 2.4.y, y<=9
漏洞描述:
Linux kernel的某些版本中存在一個漏洞,當(dāng)處理一個深層鏈接的目錄時,將消耗大量的CPU時間,其他進程將無法繼續(xù)運行。這可能允許本地攻擊者進行拒絕服務(wù)攻擊。
防范措施:
下載安裝最新的補丁。
Linux操作系統(tǒng)的漏洞及防范措施二
8. Linux Util-Linux Login Pam 權(quán)限提升漏洞
漏洞描述:
util-Linux 軟件包中提供了很多標(biāo)準(zhǔn) UNIX 工具,例如 login.。它存在一個問題可能允許本地用戶提升權(quán)限。如果某些用戶的 login 訪問數(shù)目收到受到 pam_limits 控制的話,就可能導(dǎo)致一些不可預(yù)料的結(jié)果:登錄的用戶可能獲取控制臺或者pts/0用戶的權(quán)限。
防范措施:
如果已經(jīng)在 pam 配置文件中設(shè)置允許使用 pam_limits.so 對登錄session 進行限制,并且在/etc/security/limits.conf 中對某些用戶或者組設(shè)置了最大登錄限制的話,最好暫時注釋掉這些選項。目前各個Linux廠商正在著手開發(fā)相應(yīng)的補丁。
9. Linux 2.4 iptables MAC地址匹配繞過漏洞
受影響的系統(tǒng):Linux kernel 2.4
漏洞描述:
Linux 2.4 內(nèi)核中包含一個新的功能強大的防火墻體系——Netfilter。它的主要組件是 iptables.,Iptables中包含了一個擴展模塊MAC,它可以基于MAC地址來匹配經(jīng)過防火墻的報文。這個模塊主要是用來防止惡意的內(nèi)部用戶通過修改IP地址進行欺騙攻擊。然而,MAC模塊沒有正確匹配長度很小的報文,例如4個字節(jié)的ICMP或者UDP報文。這使得內(nèi)部攻擊者可能利用這一漏洞來探測受iptables保護的主機是否存活。
防范措施:
下載安裝最新的補丁包。
10. Mandrake Linux Kernel devfs實現(xiàn)漏洞
受影響的系統(tǒng): Mandrake Linux 8.1
漏洞描述:
Mandrake Linux 8.1 內(nèi)核中的devfs實現(xiàn)中存在一個安全問題,目前還沒有此問題的細節(jié)公布。
防范措施:
如果正在使用 8.1,在啟動時請使用 devfs=nomount 參數(shù)來禁止 devfs 加載,其廠商也著手開發(fā)補丁(www.Linux-mandrake.com/en/security/)。
11. RedHat Linux setserial腳本條件競爭漏洞
受影響的系統(tǒng):RedHat Linux 6.xRedHat Linux 7.x
漏洞描述:RedHat Linux的setserial包的文檔目錄中帶了一個初始化腳本。如果這個腳本被手工拷貝到/etc/init.d目錄中,并且內(nèi)核被重新編譯為支持模塊化串口支持,那么這個腳本執(zhí)行時會使用一個可以預(yù)測的臨時文件名。攻擊者可能猜測臨時文件名并利用符號鏈接攻擊來覆蓋系統(tǒng)文件。
這個問題在缺省配置下并不存在。如果執(zhí)行下列命令:/bin/ls /etc/rc.d/init.d/serial 返回“/et /rc.d/init.cd/serial”,說明這個腳本已經(jīng)被手工安裝了。再執(zhí)行命令:/sbin/modprobe -l | grep "/serial.o,如果有返回,這說明你的系統(tǒng)是受影響的。
防范措施:RedHat 的安全公告中建議用戶禁止串口支持或者使用不支持串口模塊的內(nèi)核。
12. Red Hat Linux Apache 遠程列舉用戶名漏洞
受影響的系統(tǒng):RedHat Linux 7.0
漏洞描述:
隨同Red Hat Linux 7.0一起發(fā)布的Apache存在一個這樣的配置錯誤:導(dǎo)致遠程攻擊者可能列舉該主機上存在的用戶。如果遠程攻擊者發(fā)送一個請求,那么一般會有以下三種情況:
(1)如果用戶存在,并且配置好了自己的個人主頁,那么服務(wù)器返回該用戶的首頁;
(2)如果用戶存在,但是還沒有配置自己的個人主頁,那么服務(wù)器返回:“You don"t have permission toaccess /~username on this server.”;
(3)如果用戶不存在,那么服務(wù)器返回:“The requested URL /~username was not found on this server.”,
利用不同情況返回不同錯誤信息,導(dǎo)致遠程攻擊者可能列舉主機用戶名。
防范措施:
建議安裝廠商補丁。安裝補丁程序之前,可采用如下臨時解決方法:
(1)關(guān)閉缺省打開的“UserDir”選項% echo "UserDir Disabled" >>/var/www/conf/httpd.conf
(2)替換路徑名URL% echo "ErrorDocument 404 http://localhost/sample.html" >>/var/www/conf/httpd.conf%echo "ErrorDocument 403 http://localhost/sample.html" >>/var/www/conf/httpd.conf% sudo apachectl restart
13. Linux LPRng rhs-printfilters遠程執(zhí)行命令漏洞
受影響的系統(tǒng): RedHat Linux 7.0
漏洞描述:
果系統(tǒng)安裝了tetex-dvips,而且在調(diào)用dvips命令時沒有指定“-R”開關(guān)(安全本模式),那么攻擊者可能利用LPRng來遠程執(zhí)行任意命令。dvips程序用來將一個.dvi文件轉(zhuǎn)換成“.ps”文件。在遠程用戶向目標(biāo)系統(tǒng)的LPRng打印守護進程提交一個“.dvi”文件的打印請求時,LPRng會將此請求交給過濾器“dvi-to-ps.fpi”來將“.dvi”文件轉(zhuǎn)換成“.ps”文件。攻擊者可以構(gòu)造一個惡意的“.dvi”文件,并在psfile部分中輸入包含shell元字符的任意命令,在dvips進行轉(zhuǎn)換時,就會以lp用戶的身份執(zhí)行這些命令。上述問題只有在dvips沒有指定“-R”開關(guān)時才會存在。
14. Linux ColdFusion CFReThrow 標(biāo)簽拒絕服務(wù)漏洞
受影響的系統(tǒng):Allaire ColdFusion Server 5.0 for Linux、 Allaire ColdFusion Server 4.5.1 for Linux
漏洞描述:
ColdFusion是由Allaire發(fā)布和維護的WEB應(yīng)用軟件包。如果ColdFusion服務(wù)器是安裝在Linux系統(tǒng)的話,CFRETHROW標(biāo)簽就可能導(dǎo)致ColdFusion服務(wù)器崩潰,這時ColdFusion就會在安裝目錄下的“log”子目錄生成一個“core”文件。這個漏洞只影響 Linux 下的 ColdFusion,攻擊者要利用這個漏洞,必須有權(quán)限上傳文件。利用這個漏洞,攻擊者可以使ColdFusion服務(wù)器崩潰,還可能訪問到該服務(wù)器上的敏感信息。
防范措施:
編輯文件/usr/lib/rhs/rhs-printfilters/dvi-to-ps.fpi,找到下列語句:dvips -f $DVIPS_OPTIONS < $TMP_FILE將其變成:dvips -R -f $DVIPS_OPTIONS < $TMP_FILE。目前廠商還沒有提供補丁或者升級程序。
防范措施:
使用CFTHROW標(biāo)簽廠商補丁。目前廠商還沒有提供補丁或者升級程序,建議使用此軟件的用戶隨時關(guān)注廠商的主頁以獲取最新版本:www.allaire.com/Products/index.cfm。
15. SuSE Linux sdbsearch.cgi執(zhí)行任意代碼漏洞
受影響的系統(tǒng):SuSE Linux 6.x、SuSE Linux 7.1、SuSE Linux 7.2
漏洞描述:
SuSE Linux發(fā)行版中帶了一個名為“sdbsearch.cgi”的Perl腳本。它存在一個安全問題,可能導(dǎo)致攻擊者執(zhí)行任意命令。這個腳本信任客戶端發(fā)送的HTTP請求中的HTTP_REFERER變量的內(nèi)容。“"sdbsearch.cgi”利用它來作為關(guān)鍵字來定位文件。如果攻擊者可以設(shè)法上傳一個包含特定內(nèi)容的文件,“sdbsearch.cgi”將會使用open()調(diào)用來打開匹配的文件。如果文件中包含管道符等shell元字符,攻擊者就可能以httpd身份執(zhí)行任意命令。
測試方法:
Maurycy Prodeus (z33d@eth-security.net)提供了如下測試方法。
首先攻擊者要設(shè)法上傳一個"keylist.txt"的文件。 如果在本機測試可以執(zhí)行如下操作:
$ echo -e "keywordtouch exploitable|"> /tmp/keylist.txt
將向目標(biāo)主機發(fā)送如下HTTP請求:
GET /cgi-bin/sdbsearch.cgi?stichwort=keyword HTTP/1.0Referer:http://szachy.org/../../../../../tmp
這將會在/tmp/下創(chuàng)建"exploitable"文件。
防范措施:
暫時禁止 CGI 腳本的執(zhí)行權(quán)限?;蛘邔⑵湟瞥?cgi-bin/目錄。建議使用此軟件的用戶隨時關(guān)注廠商的主頁獲取最新版本。
補充:Linux操作系統(tǒng)查找漏洞的兵器
(1) sXid
sXid是一個系統(tǒng)監(jiān)控程序,軟件下載后,使用“make install”命令即可安裝。它可以掃描系統(tǒng)中suid和sgid文件和目錄,因為這些目錄很可能是后門程序,并可以設(shè)置通過電子郵件來報告結(jié)果。缺省安裝的配置文件為/etc/sxid.conf,這個文件的注釋很容易看懂,它定義了sxid 的工作方式、日志文件的循環(huán)次數(shù)等;日志文件缺省為/var/log/sxid.log。出于安全方面的考慮,我們可以在配置參數(shù)后把sxid.conf 設(shè)置為不可改變,使用 chattr 命令把sxid.log文件設(shè)置為只可添加。此外,我們還可以隨時用sxid -k加上 -k 選項來進行檢查,這種檢查方式很靈活,既不記入日志,也不發(fā)出 email。
(2)LSAT
Linux Security Auditing Tool (LSAT) 是一款本地安全掃描程序,發(fā)現(xiàn)默認(rèn)配置不安全時,它可以生成報告。LSAT由Triode開發(fā),主要針對基于RPM的Linux發(fā)布設(shè)計的。軟件下載后,進行如下編譯:
cndes$ tar xzvf last-VERSION.tgz
cndes$ cd lsat-VERSION
cndes$ ./configure
cndes$ make
然后以root身份運行:root# ./lsat。默認(rèn)情況下,它會生成一份名字叫l(wèi)sat.out的報告。也可以指定一些選項:
-o filename 指定生成報告的文件名
-v 詳細輸出模式
-s 不在屏幕上打印任何信息,只生成報告。
-r 執(zhí)行RPM校驗和檢查,找出默認(rèn)內(nèi)容和權(quán)限被改動的文件
LSAT可以檢查的內(nèi)容很多,主要有:檢查無用的RPM安裝;檢查inetd和Xinetd和一些系統(tǒng)配置文件;檢查SUID和SGID文件;檢查777的文件;檢查進程和服務(wù);開放端口等。LSAT的常用方法是用cron定期調(diào)用,然后用diff比較當(dāng)前報告和以前報告的區(qū)別,就可以發(fā)現(xiàn)系統(tǒng)配置發(fā)生的變化。下面是一個測試中的報告片斷:
****************************************
This is a list of SUID files on the system:
/bin/ping
/bin/mount
/bin/umount
/bin/su
/sbin/pam_timestamp_check
/sbin/pwdb_chkpwd
/sbin/unix_chkpwd
****************************************
This is a list of SGID files/directories on the system:
/root/sendmail.bak
/root/mta.bak
/sbin/netreport
****************************************
List of normal files in /dev. MAKEDEV is ok, but there
should be no other files:
/dev/MAKEDEV
/dev/MAKEDEV.afa
****************************************
This is a list of world writable files
/etc/cron.daily/backup.sh
/etc/cron.daily/update_CDV.sh
/etc/megamonitor/monitor
/root/e
/root/pl/outfile
(3)GNU Tiger
這是掃描軟件可以檢測本機安全性,源自TAMU的Tiger(一個老牌掃描軟件)。Tiger程序可以檢查的項目有:系統(tǒng)配置錯誤;不安全的權(quán)限設(shè)置;所有用戶可寫的文件;SUID和SGID文件;Crontab條目;Sendmail和ftp設(shè)置;脆弱的口令或者空口令;系統(tǒng)文件的改動。另外,它還能暴露各種弱點并產(chǎn)生詳細報告。
(4)Nabou
Nabou是一個可以用來監(jiān)視系統(tǒng)變化的Perl 程序,它提供文件完整性和用戶賬號等檢查,并將所有數(shù)據(jù)保存在數(shù)據(jù)庫里。此外,用戶也可以在配置文件中嵌入Perl代碼來定義自己的函數(shù),執(zhí)行自定義測試,操作其實十分方便。
(5)COPS
COPS是可以報告系統(tǒng)的配置錯誤以及其他信息,對Linux系統(tǒng)進行安全檢查。其檢測目標(biāo)有:文件、目錄和設(shè)備文件的權(quán)限檢查;重要系統(tǒng)文件的內(nèi)容、格式和權(quán)限;是否存在所有者為root的SUID 文件;對重要系統(tǒng)二進制文件進行CRC校驗和檢查,看其是否被修改過;對匿名FTP、Sendmai等網(wǎng)絡(luò)應(yīng)用進行檢查。需要指出的是,COPS只是監(jiān)測工具,并不做實際的修復(fù)。這個軟件比較適合配合其他工具使用,其優(yōu)點在于比較擅長找到潛在的漏洞。
(6)strobe
Strobe是一個TCP端口掃描器,它可以記錄指定的機器的所有開放端口,運行速度非???。它最初用于掃描局域網(wǎng)中公開的電子郵件,從而得到郵件用戶信息。Strobe的另一個重要特點是它能快速識別指定機器上正在運行什么服務(wù),不足之處是這類信息量比較有限。
(7)SATAN
SATAN可以用來幫助系統(tǒng)管理員檢測安全,也能被基于網(wǎng)絡(luò)的攻擊者用來搜索脆弱的系統(tǒng)。SATAN是為系統(tǒng)和管理員設(shè)計的一個安全工具。然而,由于它的廣泛性,易用性和掃描遠程網(wǎng)絡(luò)的能力,SATAN也可能因為好奇而被用來定位有弱點的主機。SATAN包括一個有關(guān)網(wǎng)絡(luò)安全問題的檢測表,經(jīng)過網(wǎng)絡(luò)查找特定的系統(tǒng)或者子網(wǎng),并報告它的發(fā)現(xiàn)。它能搜索以下的弱點:
NFS——由無權(quán)限的程序或端口導(dǎo)出。
NIS-——口令文件訪問。
Rexd——是否被防火墻阻止。
Sendmail——各種弱點。
ftp——ftp、wu-ftpd或tftp配置問題。
遠程Shell的訪問——它是否被禁止或者隱藏。
X windows——主機是否提供無限制的訪問。
Modem——經(jīng)過tcp沒有限制撥號訪問。
(8)IdentTCPscan
IdentTCPscan是一個比較專業(yè)的掃描器,可以在各種平臺上運行。軟件加入了識別指定TCP端口進程的所有者的功能,也就是說,它能測定該進程的UID。這個程序具有很重要的功能就是通過發(fā)現(xiàn)進程的UID,很快識別出錯誤配置。它的運行速度非??欤梢苑Q得上是入侵者的寵物,是一個強大、銳利的工具。