#75 Kali Linux для продвинутого тестирования на проникновение. Использование недостатков разрешений безопасности в облаке. Часть 2.
Здравствуйте, дорогие друзья.
7. Давайте изучим экземпляры, доступные для этого профиля, запустив sudo aws ec2 describe-instances –region us-east-1 –profile lambda-solus
. Команда должна перечислить сведения об экземпляре, вместе с общедоступным IP-адресом, как показано на рисунке ниже:
8. Получив общедоступный IP-адрес, мы сможем получить доступ к экземпляру, через порт 80, и Вы сможете увидеть сообщение об ошибке на сервере, показанное на рисунке ниже:
9. Злоумышленники могут запустить любой тип сканера, например, Nikto или OWASP ZAP, на IP-адресе. Они могут обмануть веб-приложение, чтобы сделать HTTP-запросы от их имени на определенном URL-адресе, и это приложение уязвимо для SSRF. В нашем случае добавление /?url=<URL, контролируемый злоумышленником> к IP-адресу, позволяет нам контролировать веб-приложение, для выполнения HTTP-запросов от нашего имени. Давайте используем приложение для вызова API метаданных, для получения учетных данных, добавив URL-адрес http://168.254.169.254/last/meta-data/iam/security/security-credentials/<Nameofthefile> , как показано на рисунке ниже, должен получать временные учетные данные, которые могут быть использованы тестировщиками:
10. Настройте профиль AWS в Kali Linux с другим профилем, запустив sudo aws configure --profile ec2-temp
, как показано на рисунке ниже, и, кроме того, убедитесь, что aws_session_token добавляется в файл учетных данных aws, а затем получает доступ к корзинам S3, запустив sudo aws s3 ls –profile ec2-temp
. Это корзина с именем cgsecret-s3-bucket-<randomid>:
11. Давайте загрузим все содержимое этой корзины, запустив sudo aws s3 sync s3://<bucketname><folder><file> location --profile
, как показано ниже на скриншоте. Ура! Теперь у нас есть данные доступа пользователя с высоким уровнем привилегий из этого сегмента. Это похоже на получение административного доступа к домену во время внутреннего тестирования на проникновение:
12. После настройки AWS с профилем ec2-admin в Kali Linux, злоумышленники теперь могут иметь возможность выполнять любые действия в среде EC2. В качестве примера, мы можем теперь просмотреть всех пользователей, запустив sudo aws iam list-users —profile ec2—admin
, как показано на рисунке ниже:
13. Просмотрите прикрепленные политики, относящиеся к пользователям, запустив sudo iam list-attacheduser- policy –username <nameofuser> --profile ec2-admin
, как показано на рисунке ниже:
Обратите внимание, что следующие два шага предназначены только для демонстрационных целей. Как создать ключ доступа aws iam и пользователя с помощью командной строки. Тестировщики должны знать, что, если эти шаги выполняются на развернутом CloudGoat, и среде AWS, то уничтожение экземпляра будет невозможно, поскольку CloudGoat может удалять только экземпляры, созданные с помощью скрипта.
14. Теперь Вы сможете изменить секретный ключ любого пользователя, запустив sudo iam createaccess-key --username <имя пользователя> --region us-east-1 --profile ec2-admin
:
15. Кроме того, Вы можете создать нового пользователя в качестве бэкдора, для доступа к среде, запустив sudo aws iam create-user –username backdoor –profile ec2-admin
, и придумайте нового пользователя, созданного с ключом доступа и секретным ключом доступа, как показано на рисунке ниже:
16. Теперь тестировщики могут вернуться к образу CloudGoat Docker и уничтожить настройку AWS, запустив ./cloudgoat.py, чтобы уничтожить все в терминале. В таблице ниже приведены полезные ссылки на команды, которые пентестеры могут использовать при проникновении в AWS тестирование:
На этом все. Всем хорошего дня!
Полный цикл статей по Kali Linux для продвинутого тестирования на проникновение.