![sudo 없이 /proc/PID/maps를 읽는 방법은 무엇입니까? [복사]](https://linux55.com/image/184423/sudo%20%EC%97%86%EC%9D%B4%20%2Fproc%2FPID%2Fmaps%EB%A5%BC%20%EC%9D%BD%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%EB%B3%B5%EC%82%AC%5D.png)
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 디렉토리를 읽는 방법은 무엇입니까?