Блямбда. Эксплуатируем AWS Lambda - «Новости» » Самоучитель CSS
Меню
Наши новости
Учебник CSS

Невозможно отучить людей изучать самые ненужные предметы.

Введение в CSS
Преимущества стилей
Добавления стилей
Типы носителей
Базовый синтаксис
Значения стилевых свойств
Селекторы тегов
Классы
CSS3

Надо знать обо всем понемножку, но все о немногом.

Идентификаторы
Контекстные селекторы
Соседние селекторы
Дочерние селекторы
Селекторы атрибутов
Универсальный селектор
Псевдоклассы
Псевдоэлементы

Кто умеет, тот делает. Кто не умеет, тот учит. Кто не умеет учить - становится деканом. (Т. Мартин)

Группирование
Наследование
Каскадирование
Валидация
Идентификаторы и классы
Написание эффективного кода

Самоучитель CSS

Вёрстка
Изображения
Текст
Цвет
Линии и рамки
Углы
Списки
Ссылки
Дизайны сайтов
Формы
Таблицы
CSS3
HTML5

Новости

Блог для вебмастеров
Новости мира Интернет
Сайтостроение
Ремонт и советы
Все новости

Справочник CSS

Справочник от А до Я
HTML, CSS, JavaScript

Афоризмы

Афоризмы о учёбе
Статьи об афоризмах
Все Афоризмы

Видео Уроки


Видео уроки
Наш опрос



Наши новости

       
26-11-2022, 00:00
Блямбда. Эксплуатируем AWS Lambda - «Новости»
Рейтинг:
Категория: Новости

Про­вер­ка ведер. Как искать уяз­вимос­ти в бакетах 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.

Блямбда. Эксплуатируем AWS Lambda - «Новости»
Ус­трой­ство лям­бды 

Лямбда-функция


Лям­бда‑фун­кция — это часть кода, которая выпол­няет­ся каж­дый раз, ког­да сра­баты­вает триг­гер.


Ус­трой­ство лям­бда‑фун­кции

Су­щес­тву­ет три типа триг­геров, отли­чают­ся они спо­собом вызова:



  • по­токо­вый — сра­баты­вает при изме­нени­ях в чем‑либо, нап­ример при добав­лении дан­ных в БД;

  • син­хрон­ный — сра­баты­вает при получе­нии зап­роса на какой‑то конеч­ной точ­ке, которая вызыва­ет лям­бда‑фун­кцию;

  • асин­хрон­ный — про­исхо­дит в слу­чае какого‑либо события, нап­ример при заг­рузке фай­ла на S3.


При этом вызов воз­можно выпол­нить и с помощью 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
По­иск лям­бда‑фун­кций
Изу­чение зависи­мос­тей


  • FunctionArn — уни­каль­ный иден­тифика­тор фун­кции;


  • Runtime — язык, на котором написа­на фун­кция;


  • Role — роль, которую име­ет лям­бда‑фун­кция. Воз­можно, опре­делен­ная лям­бда‑фун­кция име­ет дос­туп к дру­гим служ­бам. Соот­ветс­твен­но, мы так­же можем опре­делить полити­ки, при­вязан­ные к лям­бда‑фун­кции;


  • Layers — зависи­мос­ти лям­бда‑фун­кции.


По­лучить информа­цию о кон­крет­ной лям­бда‑фун­кции (в том чис­ле исходный код) мож­но сле­дующим обра­зом:


awslambdaget-function--function-name<function-name>[--regioneu-west-1--profiledemo]

При­мер:


awslambdaget-function--function-namePentestingForFun
Смот­рим опре­делен­ную фун­кцию

В при­веден­ном выше при­мере мы видим раз­дел Code, а в нем — Location. То есть код извле­кает­ся по это­му пути, в дан­ном слу­чае это S3-бакет awslambda-us-west2-tasks. Перей­дя по ука­зан­ной ссыл­ке (либо порыв­шись в ука­зан­ном бакете), мы смо­жем ска­чать код лям­бда‑фун­кции.


При этом в выводе дан­ной коман­ды есть огромная струк­тура Configuration, которую тоже сто­ит обя­затель­но пос­мотреть. Во вре­мя пен­тестов мы час­то обна­ружи­вали здесь учет­ные дан­ные.


Учет­ные дан­ные в перемен­ных сре­ды

Ис­ходный код зависи­мос­ти мож­но получить вот так:


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
Объ­екты, спо­соб­ные вызывать син­хрон­ный триг­гер


  • Service — то, кому раз­решено дер­гать фун­кцию;


  • Action — что может сде­лать Service;


  • Resource — какие объ­екты могут быть выз­ваны.


В лям­бда‑фун­кци­ях иног­да встре­чает­ся раз­дел Condition. Он отве­чает за «филь­тра­цию» — каким методом и каким обра­зом вызыва­ется лям­бда. Имен­но в нем всег­да будет пря­тать­ся айдиш­ник, по которо­му ты смо­жешь опре­делить, к какому гей­твею при­вяза­на лям­бда‑фун­кция.


При­мер Condition

В дан­ном слу­чае uj3lq1cu8e — REST API ID. При этом триг­гер может сра­ботать и от изме­нений в чем‑либо. Для получе­ния информа­ции о подоб­ных событи­ях сущес­тву­ет вот такой коман­длет:


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
Об­наруже­ние всех REST API

Про­вер­ка ведер. Как искать уяз­вимос­ти в бакетах 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. Ус­трой­ство лям­бды Лямбда-функция Лям­бда‑фун­кция — это часть кода, которая выпол­няет­ся каж­дый раз, ког­да сра­баты­вает триг­гер. Ус­трой­ство лям­бда‑фун­кцииСу­щес­тву­ет три типа триг­геров, отли­чают­ся они спо­собом вызова: по­токо­вый — сра­баты­вает при изме­нени­ях в чем‑либо, нап­ример при добав­лении дан­ных в БД; син­хрон­ный — сра­баты­вает при получе­нии зап­роса на какой‑то конеч­ной точ­ке, которая вызыва­ет лям­бда‑фун­кцию; асин­хрон­ный — про­исхо­дит в слу­чае какого‑либо события, нап­ример при заг­рузке фай­ла на S3. При этом вызов воз­можно выпол­нить и с помощью 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. Что­бы уви­деть все лям­бда‑фун­кции, вос­поль­зуем­ся сле­дующей коман­дой: aws lambda list-functions По­лучить лям­бда‑фун­кции в отдель­ном реги­оне: aws lambda list- functions --region us- east- 1 По­иск лям­бда‑фун­кций Изу­чение зависи­мос­тей FunctionArn — уни­каль­ный иден­тифика­тор фун­кции; Runtime — язык, на котором написа­на фун­кция; Role — роль, которую име­ет лям­бда‑фун­кция. Воз­можно, опре­делен­ная лям­бда‑фун­кция име­ет дос­туп к дру­гим служ­бам. Соот­ветс­твен­но, мы так­же можем опре­делить полити­ки, при­вязан­ные к лям­бда‑фун­кции; Layers — зависи­мос­ти лям­бда‑фун­кции. По­лучить информа­цию о кон­крет­ной лям­бда‑фун­кции (в том чис­ле исходный код) мож­но сле­дующим обра­зом: aws lambda get-function --function-name

Теги: CSS

Просмотров: 570
Комментариев: 0:   26-11-2022, 00:00
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

 
Еще новости по теме:



Другие новости по теме:
Комментарии для сайта Cackle