O Yama LSM parece não fazer nada. RHEL / Centos 7.5

2

O módulo de segurança do Yama deve impedir que os usuários executem a chamada do sistema ptrace, mas mesmo com o kernel.yama.ptrace_scope definido como 3, os usuários ainda podem executar o strace (que usa o ptrace).

Nos documentos:

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

O módulo Yama parece estar carregado:

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

Isso está no RHEL7, com o SELinux também instalado, o que pode ser relevante. Os LSMs devem ser empilháveis, e estou vendo a mensagem acima no dmesg, então parece estar ativa. Como um aparte, uma vez configurado para 3, o valor de sysctl é imutável - não sei se isso implica que o módulo Yama está ativo ou não.

Curiosamente, no Ubuntu (sem o Apparmor, acredito), definir o valor como 3 impede que o ptrace seja executado - executar strace -p (como root) fornece um erro de permissão negada.

Estou preocupado, já que o Yama deve atenuar algumas outras vulnerabilidades.

Acabou de me ocorrer a reinicialização sem o SELinux e ver se funciona nesse concurso - atualizarei assim que o tiver feito.

O uso obsoleto do Yama (há um booleano do SELinux que lida com esse comportamento - é deny_ptrace )? Eu posso encontrar muito pouco em termos de documentação.

UPDATE: (mesmo sem o yama carregado pelo SElinux, não faz nada)

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)

E o Yama ainda não nega o 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
    
por Graham Nicholls 02.10.2018 / 13:10

0 respostas