Por que o ulimit não parou a minha fork que estava sendo executada como superusuário?

1

Estou estudando as garras e tenho alguns problemas para encontrar uma maneira de me proteger desse tipo de ataque. Tanto quanto sei, existem duas soluções possíveis:

  1. ulimit
  2. cgroup

Estou estudando o primeiro na seguinte máquina

uname -a
Linux kali 4.9.59-v7_Re4son-Kali-Pi+ #1 SMP Fri Jan 26 16:45:14 CST 2018 armv7l GNU/Linux

Eu modifiquei /etc/security/limits.conf com a seguinte linha

root        hard    nproc           20

Após uma reinicialização e um acesso ao shell como usuário root, obtenho:

ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 7346
max locked memory       (kbytes, -l) 16384
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 20
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

Tentando a seguinte bomba bifurcada

 :(){ : | : & };:

Eu obtenho uma negação de serviço e não entendo a lógica por trás dela. Com a minha configuração, devo evitar esse ataque, mas não funciona. O que há de errado?

    
por Alvin 25.02.2018 / 13:33

0 respostas

Tags