Истраживање кашике 25К АВС С3

Проблеми с дозволама корпе АВС С3 стари су колико и сам сервис. Мислим да је 2 најпознатија истраживања о овом питању урадила Скихигх истичући да је 7% свих канти С3 отворено, а Рапид7 је нагласио да је чак 17% отворених. Данас смо у 2018. и одлучила сам да проверим који је тренутни статус проблема. Поред тога, желим да представим своје технике извођења таквих истраживања - ако сам пропустио ниједно паметно, молим вас да ме обавестите у коментарима.

Кренимо од неке теорије

Свим АВС С3 кантама може се приступити коришћењем следећих УРЛ адреса:

хттпс: // [буцкет_наме] .с3.амазонавс.цом /
хттпс: // [авс_ендпоинт] .амазонавс.цом / [буцкет_наме] /

или помоћу АВС ЦЛИ:

$ авс с3 лс - регион [име_резергије] с3: // [име буцкет]

Људи често не указују на потребу коришћења регионалног параметра. Међутим, неке канте не функционишу без навођења региона. Не видим образац када то ради и када то није тако добра пракса је да увек додајете овај параметар :)

Дакле, генерално гледање проналаска ваљаног сегмента једнако је проналажењу поддомене домена с3.амазонавс.цомор [авс_ендпоинт] .амазонавс.цом. Испод ћу проћи кроз 4 методе које би могле бити корисне у овом задатку.

Брутефорцинг

Свако име канте мора бити јединствено и може садржати само 3 до 63 алфанумеричка карактера са неколико изузетака (може садржати '-' или '. Али с тим се не може покренути или завршити). Речено је да смо наоружани довољно знања да пронађемо све канте С3, али будимо искрени - радило би пре за кратка имена. Ипак, људи имају тенденцију да користе неке обрасце у именовању, нпр. [цомпани_наме] -дев или [цомпани_наме] .бацкупс. Једном када потражите канту одређене компаније, лако можете аутоматизовати поступак верификације тако добро познатих образаца помоћу алата као што су ЛазиС3 или авс-с3-брутефорце. Рецимо да имамо компанију која се зове Рзепски. Једноставна наредба: $ руби лазис3.рб рзепски открива канту рзепски-дев:

Али шта ако желите покупити што више канти без одређеног имена за почетак? Наставите читати овај пост;)

Ваибацк Мацхине

Јесте ли икада чули за Ваибацк Мацхине? Цитирање Википедије:

Ваибацк Мацхине је дигитална архива Ворлд Виде Веба и друге информације на Интернету које је креирала Интернет Арцхиве.

Неки ресурси у овој дигиталној архиви чувају се на Амазоновој инфраструктури. Уз то, ако је Ваибацк машина индексирала само једну фотографију на канти С3, можемо да преузмемо ове информације и проверимо да ли та канта садржи било какве јавне ресурсе. Чак и када је индексирана фотографија већ уклоњена (или јој је приступ онемогућен) и даље имате име канте, што даје наду за проналазак занимљивих датотека унутра. За постављање АПИ-ја Ваибацк Мацхине-а можете да користите Метасплоит модул који се зове енум_ваибацк:

Као што се сећате од почетка овог поста, можете да се обратите и садржају канте користећи УРЛ адресу са спецификацијом региона. Дакле, да добијемо још боље резултате, можемо да проверимо поддомене свих могућих крајњих тачака Амазон С3, помоћу једноставног басх једно-линијског слоја:

$ док је читати -р регион; уради мсфцонсоле -к "користи \ помоћни / скенер / хттп / енум_ваибацк; постави ДОМАИН $ регион; \
подеси ОУТФИЛЕ $ регион.ткт; трцати; излаз "; урађено <с3_регионс.ткт

Врло често вам Ваибацк машина даје неколико хиљада слика смештених у само једну канту. Дакле, морате извести неке операције да бисте извукли само валидна и јединствена имена канте. Програми попут цут и авк-а су овде сјајни пријатељи.

Ваибацк машина ми је дала 23498 потенцијалних канти у облику 398,7 МБ ткт датотека. 4863 тих канти је јавно отворено.

Упити треће стране

Друга техника коју бих хтео да уведем је испитивање трећих страна, попут Гооглеа, Бинга, ВирусТотал итд. Постоји много алата који могу аутоматизовати процес прикупљања занимљивих информација из екстерних сервиса. Један од њих је Сублист3р:

Опет би требало да претражимо поддомене сваке регије, а затим извучемо само јединствена имена канте. Брзи басх једнослојни:

$ док је читати -р регион; уради питхон3 сублист3р.пи -д $ регион \
> $ регион.ткт; готов <с3_регионс.ткт

даје као резултат 756 од којег је сакупљено само 1 канту. Пиво за администраторе!

Претраживање у евиденцијама транспарентности сертификата

Посљедња техника коју бих вам желио представити је претраживање имена канте гледајући евиденције о транспарентности цертификата. Ако нисте упознати са транспарентношћу сертификата, препоручујем вам да погледате ову презентацију. У основи, сваки издан ТЛС цертификат се бележи, а сви ти дневници су јавно доступни. Главни циљ ове идеје је да се провери да ли се неки сертификат погрешно или злонамерно користи. Међутим, идеја о јавним евиденцијама открива све домене, укључујући… да, и С3 канте. Добра вест је да већ постоји доступан алат који вас претражује - буцкет-стреам. Још је боља вест да овај алат такође проверава дозволе за канту која је пронађена. Дакле, покушајмо:

$ питхон3 буцкет-стреам.пи --тхреадс 100 --лог

Након провере 571134 могућности, скенер кашике ми је вратио 398 ваљаних канти. Њих 377 је било отворено.

Провера садржаја канте

У реду, нашли смо хиљаде имена канти и шта даље? Па, на пример, можете да проверите да ли неко од тих канти дозвољава јавни или било којем приступуном АВС кориснику (који је у основи исти као јавни). У ту сврху можете користити мој скрипти БуцкетСцаннер - он једноставно наводи све доступне датотеке и такође потврђује ВРИТЕ дозволе у ​​канти. Међутим, у сврху овог истраживања модификовао сам методу буцкет_реадер на следећи начин:

деф буцкет_реадер (име буцкет):
    регион = гет_регион (име буцкет)
    иф регион == 'Ноне':
        пролаз
    друго:
        буцкет = гет_буцкет (име буцкет)
        ресултс = ""
        покушати:
            за с3_објецт у буцкет.објецтс.алл ():
                ако с3_објецт.кеи:
                    принт "{0} је колекционар" .формат (име канте)
                    ресултс = "{0} \ н" .формат (име буцкет)
                    додавање_излаза (резултати)
                    пауза

Иако то није најелегантнији начин обављања свог посла - ако је у канти сакупљана само једна датотека, мој модификовани скенер пријављује ову канту као колекционарску.

Ризици

Међу јавно доступним датотекама можете пронаћи заиста занимљиве. Али цурење осетљивих података није једини ризик.

Неке канте се могу јавно писати. Сигурно да нападач може да користи такву канту као дистрибуцију злонамјерног софтвера. Још је застрашујуће ако користите такав канту за дистрибуцију легалног софтвера међу запосленима - замислите такав сценарио: водите све новопечене кориснике да инсталирају софтвер из корпе компаније, а овај софтвер нападач је већ преписао са заражени инсталатер. Друга варијанта овог сценарија била би премештање истраживача С3 - нпр. преношењем заражене датотеке са примамљивим именом, попут „Извештај о платама - 2017.пдф“ (наравно сви одговорни истраживачи увек преузимају непоуздане датотеке у окружење са песком, зар не?)

Још један ризик код јавно написаних канти је… да можете изгубити све своје податке. Чак и ако немате ДЕЛЕТЕ дозволе за објекте канте, већ само ВРИТЕ дозволу и даље можете пребрисати било коју датотеку. Уз то, ако пребрисати било коју датотеку празном датотеком, то значи да ова датотека више није доступна никоме. Погледајмо овај пример:

Једини механизам који може да сачува ваше податке у таквом сценарију је омогућавање верзије. Међутим, овај механизам може бити скуп (удвостручује величину искоришћеног простора у вашој канти) и није много људи одлучити да га користе.

Такође сам чуо аргумент:

Ох, хајде да то буде само канта у сврху тестирања.

Па, ако ваш "тест" канта постане складиште нелегалног садржаја, онда ... опрости човече, али твоја је кредитна картица приквачена за овај рачун.

Имате ли светлије будућности?

Проблем са дозволама за канте С3 и даље постоји и не очекујем спектакуларне промене у блиској будућности. ИМХО људи пружају приступ јавности, јер то увек ради - не требате бринути да бисте одредили дозволе када С3 сервис сарађује са другим сервисима. Други разлог може бити једноставна грешка у подешавању дозвола (нпр. Стављање знака „*“ на погрешно место у политици канте) или не разумевање унапред дефинисаних група (нпр. Група „Било који оверјени АВС налог“ и даље се може поставити путем АВС ЦЛИ).

Други проблем је како пријавити такве проблеме? Е-пошта није приквачена на канту тако да никада не можете бити сигурни са ким треба да контактирате. Називи канти могу указивати да припадају компанији Кс, али имајте на уму да свако може да га слободно именује. Зато пазите на тролере!

Резиме

За 24652 скениране канте успео сам да сакупим датотеке из 5241 канте (21%) и да отпремим произвољне датотеке на 1365 канти (6%). На основу резултата могу са сигурношћу рећи да проблем и даље постоји. Док су неке канте намјерно отворене (нпр. Послужују неке слике, брошуре компанија итд.), Ниједна се не смије јавно писати. Прилично сам сигуран да постоје и други цоол начини проналажења још ведри, па изгледа да је једина разумна противмера ... постављање исправних дозвола за вашу канту

Молимо пронађите и мој Водич у седам корака за сигурност вашег АВС краљевства.