complete penetration testing guide with sample test cases
То је поступак за идентификовање безбедносних пропуста у апликацији проценом система или мреже помоћу различитих злонамерних техника. Слабе тачке система се у овом процесу користе овлашћеним симулираним нападом.
Сврха овог теста је да осигура важне податке од страна, попут хакера који могу имати неовлашћен приступ систему. Једном када се рањивост идентификује, користи се за искоришћавање система да би се добио приступ осетљивим информацијама.
Тест пенетрације познат је и као тест оловке, а испитивач пенетрације такође се назива етичким хакером.
Шта ћете научити:
- Шта је испитивање пенетрације?
- Узроци рањивости
- Алати и компаније за испитивање продора
- Препоручени алати за испитивање пенетрације
- Препоручена компанија за испитивање пенетрације
- Зашто испитивање пенетрације?
- Шта треба тестирати?
- Врсте испитивања пенетрације
- Технике испитивања оловком
- Испитни случајеви испитивања пенетрације (сценарији испитивања)
- Закључак
Шта је испитивање пенетрације?
Рањивости рачунарског система, веб апликације или мреже можемо да утврдимо тестирањем пенетрације.
Тест пенетрације показује да ли су постојеће одбрамбене мере примењене на систему довољно јаке да спрече било какве безбедносне провале. Извештаји о испитивању пенетрације такође предлажу противмере које се могу предузети како би се смањио ризик од хаковања система.
Узроци рањивости
- Грешке у дизајну и развоју : Могу постојати недостаци у дизајну хардвера и софтвера. Ове грешке могу ваше пословне податке критично изложити.
- Лоша конфигурација система : Ово је још један узрок рањивости. Ако је систем лоше конфигурисан, тада може увести рупе кроз које нападачи могу ући у систем и украсти информације.
- Људске грешке : Људски фактори попут непрописног одлагања докумената, остављања докумената без надзора, грешака у кодирању, инсајдерских претњи, дељења лозинки преко пхисхинг локација итд. Могу довести до нарушавања безбедности.
- Повезивање : Ако је систем повезан на незаштићену мрежу (отворене везе), онда је доступан на домак хакера.
- Сложеност : Безбедносна рањивост расте пропорционално сложености система. Што више функција систем има, то је више шанси да систем буде нападнут.
- Лозинке : Лозинке се користе за спречавање неовлашћеног приступа. Требали би бити довољно јаки да нико не може да погоди вашу лозинку. Лозинке ни по коју цену не треба делити ни са ким, а лозинке треба повремено мењати. Упркос овим упутствима, понекад људи откривају своје лозинке другима, негде их записују и држе једноставне лозинке које се могу погодити.
- Унос корисника : Сигурно сте чули за убризгавање СКЛ-а, преливање међуспремника итд. Подаци примљени електронским путем ових метода могу се користити за напад на систем пријема.
- Менаџмент : Безбедношћу је тешко и скупо управљати. Понекад организације заостају у правилном управљању ризицима и отуда се рањивост индукује у систему.
- Недостатак обуке за особље : Ово доводи до људских грешака и других рањивости.
- Комуникација : Канали попут мобилних мрежа, интернета и телефона отварају опсег сигурносне крађе.
Алати и компаније за испитивање продора
Аутоматизовани алати се могу користити за идентификовање неких стандардних рањивости присутних у апликацији. Пентест алати скенирају код да провере да ли постоји злонамерни код који може довести до потенцијалног нарушавања безбедности. Пентест алати могу да провере рупе у безбедности присутне у систему испитивањем техника шифровања података и откривањем чврсто кодираних вредности попут корисничког имена и лозинке.
Критеријуми за избор најбољег алата за продирање:
- Требало би да буде лако применити, конфигурисати и користити.
- Лако би требало да скенира ваш систем.
- Требао би категоризовати рањивости на основу озбиљности која захтева тренутно решавање.
- Требало би да буде у стању да аутоматизује верификацију рањивости.
- Требало би поново да верификује претходно откривене експлоатације.
- Требало би да генерише детаљне извештаје о рањивости и евиденције.
Једном када сазнате које тестове треба да обавите, можете или да обучите своје интерне ресурсе за тестирање или да ангажујете стручне консултанте који ће за вас обавити задатак продора.
Препоручени алати за испитивање пенетрације
# 1) Ацунетик
Ацунетик ВВС нуди професионалцима из области безбедности и софтверским инжењерима читав низ запањујућих карактеристика у лаком, директном и врло робусном пакету.
=> Испробајте најбољи алат за тестирање оловке овде
# 2) уљез
Уљез је моћан скенер рањивости који проналази слабости сајбер безбедности у вашем дигиталном имању, објашњава ризике и помаже у њиховом отклањању пре него што дође до кршења. Савршен је алат који ће вам помоћи да аутоматизујете напоре за тестирање пенетрације.
Кључне карактеристике :
- Преко 9000 аутоматизованих чекова у целој вашој ИТ инфраструктури.
- Провере инфраструктуре и веб-слоја, попут СКЛ убризгавања и скриптирања на више локација.
- Аутоматски скенира ваше системе када се открију нове претње.
- Вишеструке интеграције: АВС, Азуре, Гоогле Цлоуд, АПИ, Јира, тимови и још много тога.
- Интрудер нуди 30-дневно бесплатно пробно коришћење Про плана.
Препоручена компанија за испитивање пенетрације
# 1) ИммуниВеб®
ИммуниВеб® је компанија за тестирање пенетрације са седиштем у Женеви, Швајцарска. Његова платформа за тестирање пенетрације апликација са омогућеном ДевСецОпс комбинује људе са вештачком интелигенцијом и долази са нула лажно позитивних СЛА, откривањем највише рањивости и активним извештавањем.
ИммуниВеб нуди свеобухватно тестирање пенетрације апликација интерних и екстерних веб и мобилних апликација, АПИ-ја и веб услуга, поштанских сервера, ИоТ уређаја и још много тога.
Кључне карактеристике:
- Континуирано откривање новог кода.
- Брзо и исплативо ручно тестирање.
- Капацитети виртуелног закрпа једним кликом.
- 24-часовни приступ сигурносним аналитичарима.
- ДевСецОпс и ЦИ / ЦД интеграција.
- Инстант наруџба и брза испорука.
- Вишенаменска контролна табла.
Остали бесплатни алати:
Комерцијалне услуге:
Такође се можете позвати на доњу листу доступну на СТХ која говори о 37 моћних алата за испитивање пенетрације => Моћни алати за испитивање пенетрације за сваки испитивач пенетрације
бесплатан софтвер за убацивање и избацивање сата
Зашто испитивање пенетрације?
Сигурно сте чули за напад на откупнину ВаннаЦри који је започео у мају 2017. Закључао је више од 2 лакх рачунара широм света и захтевао плаћања откупнине у крипто валути Битцоин. Овај напад погодио је многе велике организације широм света.
Са овако масовним и опасним кибер-нападима који се дешавају ових дана, постало је неизбежно вршити тестирање пенетрације у редовним интервалима како би заштитили информационе системе од нарушавања безбедности.
Дакле, испитивање пенетрације је углавном потребно за:
- Финансијски или критични подаци морају се осигурати током њиховог преноса између различитих система или путем мреже.
- Многи клијенти траже тестирање оловке као део циклуса издавања софтвера.
- Да бисте осигурали корисничке податке.
- Да бисте пронашли сигурносне пропусте у апликацији.
- Открити рупе у систему.
- Да би се проценио пословни утицај успешних напада.
- Да би се испунила безбедност информација у организацији.
- Да примени ефикасну стратегију безбедности у организацији.
Свака организација треба да идентификује сигурносне проблеме присутне у интерној мрежи и рачунарима. Коришћењем ове информативне организације може да планира одбрану од било каквог покушаја хаковања. Приватност корисника и сигурност података данас су највећа брига.
Замислите да ли било који хакер успе да добије корисничке детаље о веб локацији за друштвене мреже попут Фејсбука. Организација се може суочити са правним проблемима због мале рупе у софтверском систему. Стога велике организације траже цертификате о усклађености са ПЦИ (индустрија платних картица) пре него што послују са независним клијентима.
Шта треба тестирати?
- Софтвер (оперативни систем, услуге, апликација)
- Хардвер
- Мрежа
- Процеси
- Понашање крајњег корисника
Врсте испитивања пенетрације
# 1) Тест социјалног инжењерства: У овом тесту покушавају се натерати да особа открије осетљиве информације попут лозинке, пословних података, итд. Ови тестови се углавном раде путем телефона или интернета и циљају одређене службе за помоћ, запослене и процесе.
Људске грешке су главни узроци сигурносне рањивости. Све чланове особља треба да поштују сигурносне стандарде и политике како би се избегли покушаји продора социјалног инжењеринга. Пример ових стандарда укључује да се не спомињу никакве осетљиве информације у е-пошти или телефонској комуникацији. Ревизије безбедности могу се спровести како би се идентификовале и исправиле недостатке процеса.
# 2) Тест веб апликација: Користећи софтверске методе може се проверити да ли је апликација изложена безбедносним рањивостима. Проверава сигурносну рањивост веб апликација и софтверских програма позиционираних у циљаном окружењу.
# 3) Тест физичке пенетрације: За заштиту осетљивих података примењују се јаке методе физичке сигурности. Ово се обично користи у војним и владиним објектима. Сви физички мрежни уређаји и приступне тачке тестирани су на могућност било каквог нарушавања безбедности. Овај тест није много релевантан за опсег тестирања софтвера.
# 4) Тест мрежних услуга : Ово је један од најчешће извођених тестова пенетрације где се идентификују отвори у мрежи помоћу којих се врши унос у системе на мрежи како би се проверило какве рањивости постоје. Може се обавити локално или даљински.
# 5) Тест на страни клијента : Циљ му је да претражује и користи рањивости у софтверским програмима на страни клијента.
# 6) Даљински диал-уп ратни број : Тражи модеме у окружењу и покушава да се пријави на системе повезане преко ових модема погађањем лозинке или форсирањем грубе форме.
# 7) Тест безбедности бежичне мреже : Открива отворена, неовлашћена и мање заштићена жаришна места или Ви-Фи мреже и повезује се преко њих.
Горњих 7 категорија које смо видели су један од начина категоризације врста тестова оловке. Такође можемо организовати врсте испитивања пенетрације у три дела као што је приказано у наставку:
Хајде да разговарамо о приступима тестирања један по један:
- Испитивање продора црне кутије : У овом приступу испитивач процењује циљни систем, мрежу или процес без знања његових детаља. Они само имају врло висок ниво података као што су УРЛ или назив компаније помоћу којих продиру у циљно окружење. Овом методом се не испитује ниједан код.
- Испитивање пенетрације беле кутије : У овом приступу, тестер је опремљен комплетним детаљима о циљном окружењу - системима, мрежи, ОС-у, ИП адреси, изворном коду, шеми итд. Испитује код и открива грешке у дизајну и развоју. То је симулација напада на унутрашњу безбедност.
- Испитивање продора сиве кутије : У овом приступу испитивач има ограничене детаље о циљном окружењу. То је симулација спољних безбедносних напада.
Технике испитивања оловком
- Тест ручног продирања
- Коришћење аутоматизованих алата за испитивање пенетрације
- Комбинација ручног и аутоматизованог процеса
Трећи процес је уобичајенији за идентификовање свих врста рањивости.
Тест ручног продирања
Помоћу аутоматизованих алата тешко је пронаћи све рањивости. Постоје неке рањивости које се могу идентификовати само ручним скенирањем. Тестирачи пенетрације могу да изврше боље нападе на апликације на основу својих вештина и знања о систему у који се улази.
Методе попут социјалног инжењеринга могу да раде само људи. Ручна провера укључује дизајн, пословну логику као и верификацију кода.
Процес испитивања пенетрације:
Разговарајмо о стварном процесу који прате испитне агенције или испитивачи пенетрације. Идентификовање рањивости присутних у систему је први важан корак у овом процесу. На овој рањивости се предузимају корективне мере и понављају се исти тестови пенетрације док систем не буде негативан на све те тестове.
Овај процес можемо категоризовати на следеће методе:
# 1) Прикупљање података: За добијање циљаних системских података користе се разне методе, укључујући Гоогле претрагу. Такође се може користити техника анализе изворног кода веб странице да би се добило више информација о верзији система, софтвера и додатака.
На тржишту је доступно много бесплатних алата и услуга који вам могу пружити информације као што су имена база података или табела, верзије ДБ-а, верзије софтвера, коришћени хардвер и различити додаци независних произвођача који се користе у циљном систему.
# 2) Процена рањивости: На основу података прикупљених у првом кораку може се пронаћи сигурносна слабост циљног система. Ово помаже испитивачима пенетрације да покрећу нападе користећи идентификоване улазне тачке у систему.
# 3) Стварни експлоат: Ово је пресудан корак. Потребне су посебне вештине и технике за покретање напада на циљни систем. Искусни испитивачи пенетрације могу користити своје вештине за покретање напада на систем.
# 4) Резултат анализе и припреме извештаја: Након завршетка тестова пенетрације, припремају се детаљни извештаји за предузимање корективних мера. Све идентификоване рањивости и препоручене корективне методе наведене су у овим извештајима. Можете прилагодити формат извештаја о рањивости (ХТМЛ, КСМЛ, МС Ворд или ПДФ) према потребама ваше организације.
Испитни случајеви испитивања пенетрације (сценарији испитивања)
Запамтите да ово није функционално тестирање. Ваш циљ је да у Пентесту пронађете сигурносне рупе у систему. Испод су неки генерички примери и нису нужно применљиви на све примене.
- Проверите да ли је веб апликација у стању да идентификује нежељене нападе на контакт обрасце који се користе на веб локацији.
- Проки сервер - Проверите да ли мрежни саобраћај надгледају проки уређаји. Проки сервер хакерима отежава приступ интерним детаљима мреже, чиме штити систем од спољних напада.
- Филтри за нежељену пошту - проверите да ли је долазни и одлазни саобраћај е-поште филтриран и да ли су блокирани нежељени имејлови.
- Многи клијенти е-поште имају уграђене филтере за нежељену пошту који треба да се конфигуришу према вашим потребама. Ова правила конфигурације могу се применити на заглавља е-поште, тему или тело.
- Заштитни зид - Уверите се да су цела мрежа или рачунари заштићени заштитним зидовима. Заштитни зид може бити софтвер или хардвер за блокирање неовлашћеног приступа систему. Заштитни зид може спречити слање података изван мреже без ваше дозволе.
- Покушајте да искористите све сервере, радне површине, штампаче и мрежне уређаје.
- Проверите да ли су сва корисничка имена и лозинке шифровани и пребачени преко сигурних веза попут хттпс.
- Потврдите податке сачуване у веб колачићи . Не би требало да буде у читљивом формату.
- Проверите претходно пронађене рањивости да бисте проверили да ли поправак ради.
- Проверите да ли у мрежи нема отвореног порта.
- Проверите све телефонске уређаје.
- Потврдите безбедност ВИФИ мреже.
- Проверите све ХТТП методе. Методе ПУТ и Делете не би требало да буду омогућене на веб серверу.
- Проверите да ли лозинка испуњава тражене стандарде. Лозинка треба да има најмање 8 знакова који садржи најмање један број и један посебан знак.
- Корисничко име не би требало да буде попут „админ“ или „администратор“.
- Страница за пријављивање апликације би требало да буде закључана након неколико неуспешних покушаја пријаве.
- Поруке о грешкама треба да буду опште и не смеју да помињу одређене детаље о грешкама, попут „Неважеће корисничко име“ или „Неважећа лозинка“.
- Проверите да ли се са посебним знаковима, ХТМЛ ознакама и скриптама правилно поступа као са улазном вредношћу.
- Подаци о унутрашњем систему не смеју се откривати ни у једној поруци о грешци или упозорењу.
- Поруке прилагођених грешака треба да се прикажу крајњим корисницима у случају пада веб странице.
- Проверите употребу ставки регистра. Осетљиве информације не треба чувати у регистру.
- Све датотеке морају бити скениране пре слања на сервер.
- Осетљиви подаци не би требало да се прослеђују у УРЛ адресе током комуникације са различитим унутрашњим модулима веб апликације.
- У систему не би смело бити чврсто кодирано корисничко име или лозинка.
- Проверите сва поља за унос дугим улазним низом са и без размака.
- Проверите да ли је функција ресетовања лозинке сигурна.
- Верификујте пријаву за СКЛ Ињецтион .
- Верификујте пријаву за Цросс-Сите Сцриптинг .
- Важне провере уноса треба извршити на страни сервера уместо ЈаваСцрипт провере на страни клијента.
- Критични ресурси у систему требали би бити доступни само овлашћеним особама и службама.
- Све евиденције приступа треба да се воде са одговарајућим дозволама за приступ.
- Потврдите да се корисничка сесија завршава након одјаве.
- Уверите се да је на серверу онемогућено прегледање директоријума.
- Проверите да ли су све апликације и верзије базе података ажурне.
- Потврдите манипулацију УРЛ-ом да бисте проверили да ли веб апликација не приказује нежељене информације.
- Потврдите цурење меморије и прелив бафера.
- Проверите да ли је скениран долазни мрежни саобраћај да би се пронашли напади тројанаца.
- Проверите да ли је систем заштићен од бруте форце напада - метода покушаја и грешака за проналажење осетљивих информација попут лозинки.
- Проверите да ли су систем или мрежа заштићени од ДоС (одбијање услуге) напада. Хакер може циљати мрежу или један рачунар са непрекидним захтевима због којих се ресурси на циљном систему преоптерећују што резултира ускраћивањем услуге за легитимне захтеве.
- Верификујте апликацију за нападе убризгавања ХТМЛ скрипте.
- Провјерите против ЦОМ и АцтивеКс напада.
- Потврдите против напада лажног представљања. Лажно представљање може бити више врста - лажно представљање ИП адресе, лажно представљање ИД-а е-поште,
- АРП превара, превара референца, превара идентитета позиваоца, тровање мрежа за размену датотека, ГПС превара.
- Проверите да ли постоји неконтролисани напад низа формата - безбедносни напад који може проузроковати пад апликације или извршавање штетне скрипте на њему.
- Потврдите напад КСМЛ убризгавањем - користи се за промену предвиђене логике апликације.
- Потврдите против напада канонизацијом.
- Проверите да ли странице са грешкама приказују било какве информације које могу бити од помоћи хакеру да уђе у систем.
- Проверите да ли су неки критични подаци попут лозинке сачувани у тајним датотекама на систему.
- Проверите да ли апликација враћа више података него што је потребно.
Ово су само основни сценарији за тестирање за почетак рада са Пентестом. Постоје стотине напредних метода продирања које се могу извести ручно или уз помоћ алата за аутоматизацију.
Додатна литература:
Стандарди за испитивање оловком
- ПЦИ ДСС (Стандард заштите података индустрије платних картица)
- ОВАСП (Отворени пројекат заштите веб апликација)
- ИСО / ИЕЦ 27002 , ОССТММ (Приручник за методологију испитивања безбедности отвореног кода)
Сертификати
- ГПЕН
- Сарадник за испитивање безбедности ( АСТ )
- Сениор Сецурити Тестер (ССТ)
- Овлашћени испитивач пенетрације ( ЦПТ )
Закључак
На крају, као испитивач пенетрације, требали бисте прикупити и евидентирати све рањивости у систему. Не занемарујте ниједан сценарио с обзиром да га крајњи корисници неће извршити.
које су фазе сдлц
Ако сте испитивач пенетрације, помозите нашим читаоцима својим искуством, саветима и примерима тест примера како ефикасно да изврше испитивање пенетрације.
Препоручено читање
- 19 Моћни алати за испитивање пенетрације које су професионалци користили 2021. године
- Водич за почетнике за тестирање продора веб апликација
- Алфа тестирање и бета тестирање (потпун водич)
- Тестирање мрежне сигурности и најбољи алати за мрежну сигурност
- Водич за тестирање безбедности веб апликација
- Комплетни водич за тестирање верификације израде (БВТ тестирање)
- Функционално тестирање вс нефункционално тестирање
- Најбољи алати за тестирање софтвера 2021. (Алати за аутоматизацију КА теста)