refer to:
POC 已经放出来了:
https://github.com/lflare/cve-2024-6387-poc
我也做了备份。
详细解释:
https://github.com/sg552/cve-2024-6387-poc/blob/master/regresshion.txt
几个概念:
该漏洞使用于 openssh 的 < 4.1 8.2~ 9.1 之间
glibc address会随时变化,使用的技术是 aslr 技术 (address space layout randomilize )
0: 禁止该技术
1: 保守使用(部分使用)
2: 完整使用(全都是随机的)
echo 2 | sudo tee /proc/sys/kernel/randomize_va_space
测试代码: (aslrtest.c )
( gcc xx.c ,就是编译,得到一个 a.out 文件,执行即可 ./a.out ) 1 #include2 #include 3 4 int main() { 5 printf("%p\n", &system); 6 return 0; 7 printf("hihihi"); 8 } ~
禁止aslr 之后:
开启了aslr之后:
保守开启后:
修复方式:
1. 把openssh 更新到最新版本
2. 或者,修改 sshd 配置文件: sudo vim /etc/ssh/sshd_config
LoginGraceTime 0 # 表示该session永不关闭。默认是2m
修改后记得 sudo service ssh restart