Категория > Новости > Блямбда. Эксплуатируем AWS Lambda - «Новости»
Блямбда. Эксплуатируем AWS Lambda - «Новости»26-11-2022, 00:00. Автор: Нестор |
Проверка ведер. Как искать уязвимости в бакетах AWS S3».ТеорияAWS LambdaКак работает AWS Lambda? Если простыми словами: ты добавляешь свой скрипт и задаешь триггер или событие, при наступлении которого будет запускаться этот код. Больше делать ничего не нужно, потому что обо всем другом — администрировании, мониторинге работы, безопасности, журналах, логах — позаботится сервис AWS Lambda. Когда событий нет, лямбда не выполняется, соответственно, ресурсы не потребляются. Читайте также - I've been here all night (Ariana) I've been here all day (Nicki Minaj) And, boy, you got me walkin' side to side (Let them hoes know), side to side. Устройство лямбды Лямбда-функцияЛямбда‑функция — это часть кода, которая выполняется каждый раз, когда срабатывает триггер. Устройство лямбда‑функции Существует три типа триггеров, отличаются они способом вызова:
При этом вызов возможно выполнить и с помощью API Gateway. API GatewayСлужба API Gateway упрощает разработчикам работу с API. Поддерживается REST, HTTP и WebSocket API. Состав API Gateway Мы можем привязать API Gateway к какому‑то сервису, мобильному приложению, даже к IOT, — главное, чтобы у них был доступ в интернет. После этого оно будет стучать на API-шлюз, с которого и станут вызываться требуемые действия. Стандартное использование API Gateway Первоначальный доступЧаще всего через лямбду в облако не попадают. Но в случае обнаружения функции, гейтвея, создания полной ссылки и требуемого набора параметров можно все‑таки попробовать. Например, если лямбда‑функция принимает какую‑либо команду для запуска в cmd: https://i8jee1mn2f.execute-api.us-east-2.amazonaws.com/prod/system?cmd=env РазведкаLambda FunctionНа первом этапе нужно хорошенько разведать обстановку и поискать уязвимые места. На помощь нам придет AWS CLI. Чтобы увидеть все лямбда‑функции, воспользуемся следующей командой: awslambdalist-functions Получить лямбда‑функции в отдельном регионе: aws lambda list-functions --regionus-east-1
Получить информацию о конкретной лямбда‑функции (в том числе исходный код) можно следующим образом: awslambdaget-function--function-name<function-name>[--regioneu-west-1--profiledemo] Пример: awslambdaget-function--function-namePentestingForFun В приведенном выше примере мы видим раздел При этом в выводе данной команды есть огромная структура Учетные данные в переменных среды Исходный код зависимости можно получить вот так: awslambdaget-layer-version--layer-name<LayerName>--version-number<VersionNumber> Пример: awslambdaget-layer-version--layer-namerequest-library--version-number1 Теперь обрати внимание на способы вызова функции. awslambdaget-policy--function-name<function-name> Пример: awslambdaget-policy--function-namePentestingForFun
В лямбда‑функциях иногда встречается раздел Пример Condition В данном случае awslambdalist-event-source-mappings--function-name<function-name> Пример: awslambdalist-event-source-mappings--function-namePentestingForFun В этом случае используется Amazon Simple Queue Service (SQS) — служба очереди сообщений. API GatewayПосле изучения доступных лямбда‑функций пора восстанавливать URL, который приведет к ее вызову. Чтобы увидеть все REST APIs (получить айдишник, так как Region зачастую схож с большинством регионов, в котором стоят ЕС2-инстансы), воспользуемся следующей командой: awsapigatewayget-rest-apis Перейти обратно к новости |