Yama LSM은 아무 것도 하지 않는 것 같습니다. RHEL/센토스 7.5

Yama LSM은 아무 것도 하지 않는 것 같습니다. RHEL/센토스 7.5

Yama 보안 모듈은 사용자가 ptrace 시스템 호출을 실행하는 것을 방지할 수 있어야 하지만, kernel.yama.ptrace_scope가 3으로 설정되어 있어도 사용자는 여전히 strace(ptrace를 사용함)를 실행할 수 있습니다.

문서에서:

3 - no attach: no processes may use ptrace with PTRACE_ATTACH nor via
    PTRACE_TRACEME. Once set, this sysctl value cannot be changed.

Yama 모듈이 로드된 것 같습니다.

/var/log/dmesg:[    0.000127] Yama: becoming mindful.

이것은 RHEL7에 있으며 SELinux도 설치되어 있는데, 이와 관련이 있을 수 있습니다. LSM은 스택이 가능해야 하는데, dmesg에서 위의 메시지를 보니 활성화된 것 같습니다. 그런데 일단 3으로 설정하면 sysctl 값은 변경할 수 없습니다. 이것이 Yama 모듈이 활성화되어 있다는 의미인지는 모르겠습니다.

흥미롭게도 Ubuntu(Apparmor 제외)에서 값을 3으로 설정하면 ptrace가 실행되지 않습니다. strace -p(루트로)를 실행하면 권한 거부 오류가 발생합니다.

Yama가 다른 여러 취약점을 완화할 것으로 예상되기 때문에 걱정됩니다.

경주에서 작동하는지 확인하기 위해 SELinux 없이 재부팅해야 한다는 생각이 들었습니다. 일단 그렇게 하면 업데이트하겠습니다.

Yama는 더 이상 사용되지 않습니까(이 동작을 처리하는 SELinux 부울이 있습니다. deny_ptrace)? 내가 찾을 수 있는 문서가 거의 없습니다.

고쳐 쓰다:(SElinux가 로드되지 않은 경우에도 yama는 아무 작업도 수행하지 않습니다)

Oct  2 12:30:00 xx kernel: Command line: BOOT_IMAGE=/vmlinuz-3.10.0-862.11.6.el7.x86_64 root=/dev/mapper/rpool-root ro crashkernel=auto rd.lvm.lv=rpool/root rd.lvm.lv=rpool/swap rhgb ipv6.disable=1 biosdevname=0 net.ifnames=0 quiet audit=1 fips=1 boot=/dev/sda1 audit=1 CONFIG_SECURITY_YAMA=y selinux=0
Oct  2 12:30:00 xx kernel: Kernel command line: BOOT_IMAGE=/vmlinuz-3.10.0-862.11.6.el7.x86_64 root=/dev/mapper/rpool-root ro crashkernel=auto rd.lvm.lv=rpool/root rd.lvm.lv=rpool/swap rhgb ipv6.disable=1 biosdevname=0 net.ifnames=0 quiet audit=1 fips=1 boot=/dev/sda1 audit=1 CONFIG_SECURITY_YAMA=y selinux=0
Oct  2 12:30:00 xx kernel: SELinux:  Disabled at boot.
Oct  2 12:30:00 xx kernel: EVM: security.selinux
Oct  2 12:30:00 xx systemd[1]: systemd 219 running in system mode. (+PAM +AUDIT +SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 -SECCOMP +BLKID +ELFUTILS +KMOD +IDN)
Oct  2 12:30:03 xx systemd: systemd 219 running in system mode. (+PAM +AUDIT +SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 -SECCOMP +BLKID +ELFUTILS +KMOD +IDN)

Yama는 여전히 ptrace를 거부하지 않습니다.

xx:root@~ #strace -p 2195
strace: Process 2195 attached
restart_syscall(<... resuming interrupted poll ...>strace: Process 2195 detached
 <detached ...>
xx:root@~ #sysctl -a -r yama
kernel.yama.ptrace_scope = 3

관련 정보