
Автоматизированный сканер уязвимостей, неправильных конфигураций и руткитов для экземпляров AWS EC2, использующий Vuls, Lynis и Chkrootkit через офлайн-анализ на основе снимков.

Просканируйте ваш EC2-экземпляр для поиска уязвимостей с помощью Vuls (https://vuls.io/en/).
Проверьте ваш EC2-экземпляр на наличие ошибок конфигурации безопасности с помощью Lynis (https://cisofy.com/solutions/#lynis).
Просканируйте ваш EC2-экземпляр на наличие признаков руткита с помощью Chkrootkit (http://www.chkrootkit.org/).

Детали действий:
| Необходимое разрешение действия | Зачем оно нужно |
|---|---|
| "AttachVolume" | Позволяет подключить том со снятым снимком к EC2-экземпляру, используемому для сканирования уязвимостей. |
| "AuthorizeSecurityGroupIngress" | Позволяет привязать группу безопасности к EC2-экземпляру. Включает IP-разрешения для SSH-порта и случайного порта, генерируемого для доступа к интерфейсу сканирования. |
| "DescribeInstances" | Предоставляет доступ к деталям EC2-экземпляров клиента. |
| "CreateKeyPair" | Позволяет создать пару ключей, которая используется в качестве ключа EC2-экземпляра. |
| "CreateTags" | Позволяет создавать теги на томе и снимке. |
| "DescribeRegions" | Предоставляет доступ к активным регионам клиента, чтобы пользователь мог выбрать соответствующий регион для сканирования. |
| "RunInstances" | Позволяет создать EC2-экземпляр в учётной записи пользователя. |
| "ReportInstanceStatus" | Позволяет получить текущий статус созданного EC2-экземпляра, чтобы убедиться, что он работает. |
| "DescribeSnapshots" | Позволяет получить текущий статус снятого снимка, чтобы убедиться, что он доступен. |
| "DescribeImages" | Позволяет запрашивать образы AMI для получения последней версии Ubuntu AMI. |
| "DescribeVolumeStatus" | Позволяет получить текущий статус создаваемого тома. |
| "DescribeVolumes" | Позволяет получить детали о томе. |
| "CreateVolume" | Позволяет создать том для последующего подключения к нему снятого снимка и присоединения к EC2-экземпляру, используемому для сканирования уязвимостей. |
| "DescribeAvailabilityZones" | Предоставляет доступ к активным зонам доступности клиента, чтобы выбрать одну для созданного тома, который будет подключён к EC2-экземпляру. |
| "DescribeVpcs" | Позволяет получить VPC клиента по умолчанию. Используется для генерации группы безопасности EC2. |
| "CreateSecurityGroup" | Позволяет создать группу безопасности, которая будет привязана к EC2-экземпляру. |
| "CreateSnapshot" | Позволяет сделать снимок. Используется для создания снимка выбранного EC2-экземпляра. |
| "DeleteSnapshot" | Позволяет удалить старый снимок, созданный в процессе. |
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.logДля получения технической информации обращайтесь по адресу [email protected].
Хотите увидеть эту возможность в действии? Ознакомьтесь с Lightspin.io
Этот репозиторий доступен по лицензии Apache License 2.0.