
Scanner automatizado de vulnerabilidades, configurações incorretas e rootkits para instâncias AWS EC2 usando Vuls, Lynis e Chkrootkit por meio de análise offline baseada em snapshots.

Escaneie sua instância EC2 para encontrar vulnerabilidades usando o Vuls (https://vuls.io/en/).
Audite sua instância EC2 para encontrar configurações de segurança incorretas usando o Lynis (https://cisofy.com/solutions/#lynis).
Escaneie sua instância EC2 em busca de sinais de rootkit usando o Chkrootkit (http://www.chkrootkit.org/).

Detalhes das ações:
| Permissão de ação necessária | Por que é necessária |
|---|---|
| "AttachVolume" | Permite anexar o volume com o snapshot tirado à instância EC2 que está sendo usada para a varredura de vulnerabilidades. |
| "AuthorizeSecurityGroupIngress" | Permite anexar o grupo de segurança à instância EC2. Contém permissões de IP para a porta SSH e uma porta aleatória gerada para acesso à interface de varredura. |
| "DescribeInstances" | Permite acesso aos detalhes das instâncias EC2 do cliente. |
| "CreateKeyPair" | Permite a criação de um par de chaves que será usado como chave da instância EC2. |
| "CreateTags" | Permite a criação de Tags no Volume e no Snapshot. |
| "DescribeRegions" | Permite acesso às regiões ativas do cliente para permitir que o usuário selecione a região relevante para a varredura. |
| "RunInstances" | Permite a criação de uma instância EC2 na conta do cliente. |
| "ReportInstanceStatus" | Permite obter o status atual da instância EC2 criada para garantir que esteja em execução. |
| "DescribeSnapshots" | Permite obter o status atual do snapshot tirado para garantir que esteja disponível. |
| "DescribeImages" | Permite consultar AMIs para obter a última AMI do Ubuntu. |
| "DescribeVolumeStatus" | Permite obter o status atual do volume que está sendo criado. |
| "DescribeVolumes" | Permite obter detalhes sobre um volume. |
| "CreateVolume" | Permite a criação de um volume, a fim de anexar o snapshot tirado e anexá-lo à instância EC2 usada para a varredura de vulnerabilidades. |
| "DescribeAvailabilityZones" | Permite acesso às zonas de disponibilidade ativas do cliente para selecionar uma para o volume criado que será anexado à instância EC2. |
| "DescribeVpcs" | Permite obter a VPC padrão do cliente. Usado para a geração do grupo de segurança da EC2. |
| "CreateSecurityGroup" | Permite a criação de um grupo de segurança que será anexado à instância EC2. |
| "CreateSnapshot" | Permite tirar um snapshot. Usado para tirar um snapshot da instância EC2 escolhida. |
| "DeleteSnapshot" | Permite excluir o snapshot antigo criado durante o processo. |
sudo git clone https://github.com/lightspin-tech/red-detector.git
pip3 install -r requirements.txt
python3 main.py
usage: main.py [-h] [--region REGION] [--instance-id INSTANCE_ID] [--keypair KEYPAIR] [--log-level LOG_LEVEL]
optional arguments:
-h, --help show this help message and exit
--region REGION region name
--instance-id INSTANCE_ID EC2 instance id
--keypair KEYPAIR existing key pair name
--log-level LOG_LEVEL log level
python3 main.py --log-level DEBUG
ssh ubuntu@PUBLICIP -i KEYPAIR.pemtail /var/log/user-data.logPara informações técnicas, entre em contato conosco em [email protected].
Quer ver essa capacidade turbinada? Confira Lightspin.io
Este repositório está disponível sob a Apache License 2.0.