sudo 없이 /proc/PID/maps를 읽는 방법은 무엇입니까? [복사]

sudo 없이 /proc/PID/maps를 읽는 방법은 무엇입니까? [복사]

sudo를 사용하지 않고 일부 프로세스의 메모리 맵(/proc/PID/maps)을 읽고 싶습니다. 프로세스가 가능하지 않으면 이는 사소한 일입니다. 이해했나요:

내가 실행하면 :

$ bash
$ cat /proc/$$/maps

이것은 작동하고 출력을 얻습니다!

하지만 내가 실행하면 :

sudo setcap "cap_net_raw+p" /bin/bash

테스트 사례를 다시 시도해 보세요.

$ bash
$ cat /proc/$$/maps

나는 얻다:

cat: /proc/1151842/maps: Permission denied

이것이 이해할 수 있기를 바랍니다.

당신의 도움을 주셔서 감사합니다

답변1

/proc/에 있는 파일의 소유권은 Linux 커널의 "dumpable" 플래그에 의해 제어됩니다. 이 플래그는 권한이 있는 프로세스에서 권한이 없는 사용자에게 정보가 유출되는 것을 방지하는 데 사용됩니다.

프로세스가 기능을 얻으면 권한이 있는 프로세스로 승격되고 /proc/는 이제 루트가 소유하게 됩니다.

답변자: 기능을 추가하여 권위를 잃습니까? 그리고 Linux 가능 프로세스의 /proc/<pid>/fd 디렉토리를 읽는 방법은 무엇입니까?

관련 정보