HP-UX man 设计漏洞
发布日期:2000-06-07
更新日期:2000-06-08
受影响系统:
HP HP-UX 11.0
HP HP-UX 10.20
描述:
各种版本的HPUX的man命令的设计者犯了几个致命的错误,允许攻击者轻松设置一个
陷阱,当root执行man命令的时候,会导致系统中任意文件被覆盖。
1) man 在全局可写目录下创建的临时文件名可以预测。一般这两个临时文件名为
catXXXX 和 manXXXX ,这里 XXXX 是当前man进程号,很容易预测得到。
2) man 盲目地使用了符号链接,未做检查
3) man 精确地以 666 模式打开临时文件,忽略 umask 设置。虽然man不会修改文件
属性成 666 ,但是它允许攻击者编辑临时文件,这样就有可能插入一些恶意的数
据(最近在Bugtraq讨论过恶意的man手册页)。
4) man 打开临时文件时指定了 O_TRUNC 属性。意味着当man处理一个符号链接时,
真实对应的文件被盲目地截断。这很容易导致拒绝服务攻击。即使不考虑安全问
题,也会影响正常的man操作,如果一个用户处在man进程运行状态中,当进程号
回绕后,特权用户运行man时就会覆盖普通用户的临时文件。
<* 来源:Jason Axley jason.axley@attws.com *>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
在/tmp下建立65535个 catXXXX 或者 manXXXX 符号链接,指向任意你想覆盖的文件,
比如/etc/passwd。等一会,当root运行man的时候,/etc/passwd将被格式化过的man
手册页内容(catXXXX)或者未格式化手册页内容(manXXXX)覆盖。
建议:
确保/tmp目录设置了粘滞位,以root身份在其下创建catXXXX和manXXXX文件,于
是攻击者无法创建恶意符号链接。
浏览次数:6089
严重程度:0(网友投票)