Linux 如何从setcap可执行文件获取coredump?
为了防止特权数据的转义,Linux上的setcap可执行文件不转储内核:Linux 如何从setcap可执行文件获取coredump?,linux,debugging,privileges,elevated-privileges,Linux,Debugging,Privileges,Elevated Privileges,为了防止特权数据的转义,Linux上的setcap可执行文件不转储内核: ijw@build$ cat > test.c main() { abort(); } ijw@build$ gcc test.c test.c: In function ‘main’: test.c:1: warning: incompatible implicit declaration of built-in function ‘abort’ ijw@build$ ./a.out Aborted (core
ijw@build$ cat > test.c
main() { abort(); }
ijw@build$ gcc test.c
test.c: In function ‘main’:
test.c:1: warning: incompatible implicit declaration of built-in function ‘abort’
ijw@build$ ./a.out
Aborted (core dumped)
ijw@build$ sudo setcap "cap_net_admin=+ep" a.out
ijw@build$ ./a.out
Aborted
当您正在调试并且确实想要查看核心文件时,有没有办法启用它?经过进一步研究,我有两个答案
echo 1 > /proc/sys/fs/suid_dumpable
测试,工作是否启用核心转储
ulimit-c unlimited
是的,我在所有其他东西上使用coredumps都没有问题。
prctl(PR_SET_DUMPABLE, 1);