OWASP Топ 10 безбедносни ризици | Преглед

Содржина

OWASP Топ 10 Преглед

Што е OWASP?

OWASP е непрофитна организација посветена на едукација за безбедност на веб апликации. 

Материјалите за учење OWASP се достапни на нивната веб-страница. Нивните алатки се корисни за подобрување на безбедноста на веб-апликациите. Ова вклучува документи, алатки, видеа и форуми.

Топ 10 на OWASP е листа што ги истакнува главните безбедносни грижи за веб-апликациите денес. Тие препорачуваат сите компании да го вклучат овој извештај во нивните процеси за да ги намалат безбедносните ризици. Подолу е листа на безбедносни ризици вклучени во извештајот OWASP Top 10 2017 година.

SQL Injection

Инјектирањето SQL се случува кога напаѓачот испраќа несоодветни податоци до веб-апликација за да ја наруши програмата во апликацијата.

Пример за SQL Injection:

Напаѓачот може да внесе SQL барање во влезна форма која бара чист текст за корисничко име. Ако формуларот за внесување не е обезбеден, тоа ќе резултира со извршување на SQL барање. Ова е упатен до како SQL инјекција.

За да ги заштитите веб-апликациите од вбризгување код, проверете дали вашите програмери користат валидација на влезот на податоците доставени од корисникот. Валидацијата овде се однесува на отфрлање на невалидни влезови. Управувачот со база на податоци може да постави и контроли за да го намали износот на информации кои можат да бидат обелоденети во напад со инјектирање.

За да се спречи инјектирање SQL, OWASP препорачува податоците да се чуваат одвоени од командите и барањата. Најпосакувана опција е да користите безбедно API за да се спречи употребата на преведувач или да се префрли на Алатките за релационо мапирање на објекти (ORMs).

Скршена автентикација

Пропустите за автентикација може да му овозможат на напаѓачот да пристапи до корисничките сметки и да го компромитира системот користејќи административна сметка. Сајбер-криминалецот може да користи скрипта за да проба илјадници комбинации на лозинки на системот за да види која работи. Откако ќе влезе сајбер криминалецот, може да го лажира идентитетот на корисникот, давајќи му пристап до доверливи информации.

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

Изложеност на чувствителни податоци

Ако веб-апликациите не ги штитат чувствителните напаѓачи можат да пристапат и да ги користат за нивна корист. Нападот на патеката е популарен метод за крадење чувствителни информации. Ризикот од изложеност може да е минимален кога сите чувствителни податоци се шифрирани. Веб-програмерите треба да се погрижат да нема чувствителни податоци изложени на прелистувачот или непотребно складирани.

XML надворешни ентитети (XEE)

Сајбер-криминалецот може да прикачи или вклучи злонамерна XML содржина, команди или код во XML документ. Ова им овозможува да гледаат датотеки на датотечниот систем на серверот за апликации. Откако ќе имаат пристап, тие можат да комуницираат со серверот за да вршат напади на фалсификување барања од страна на серверот (SSRF)..

Нападите на надворешните ентитети на XML можат биде спречен од дозволувајќи им на веб-апликациите да прифаќаат помалку сложени типови на податоци како што е JSON. Оневозможувањето на обработката на надворешните ентитети на XML, исто така, ги намалува шансите за напад на XEE.

Скршена контрола на пристап

Контрола на пристап е системски протокол кој ги ограничува неовластените корисници на чувствителни информации. Ако системот за контрола на пристап е скршен, напаѓачите можат да ја заобиколат автентикацијата. Ова им дава пристап до чувствителни информации како да имаат овластување. Контролата на пристап може да се обезбеди со имплементирање на токени за авторизација при најава на корисникот. На секое барање што го прави корисникот додека е автентициран, токенот за овластување со корисникот се проверува, сигнализирајќи дека корисникот е овластен да го направи тоа барање.

Погрешно конфигурирање на безбедноста

Погрешната конфигурација на безбедноста е вообичаен проблем што cybersecurity специјалистите набљудуваат во веб-апликациите. Ова се случува како резултат на погрешно конфигурирани заглавија на HTTP, скршени контроли за пристап и прикажување на грешки што откриваат информации во веб-апликација. Можете да ја поправите погрешната конфигурација на безбедноста со отстранување на неискористените функции. Исто така, треба да ги закрпите или надградите вашите софтверски пакети.

Скриптирање преку страници (XSS)

Ранливоста на XSS се јавува кога напаѓачот манипулира со DOM API на доверлива веб-локација за да изврши злонамерен код во прелистувачот на корисникот. Извршувањето на овој злонамерен код често се случува кога корисникот ќе кликне на врска што се чини дека е од доверлива веб-локација. Ако веб-локацијата не е заштитена од ранливоста на XSS, може биде компромитиран. Злонамерниот код кој се извршува му дава пристап на напаѓачот до сесијата за најавување на корисниците, деталите за кредитната картичка и другите чувствителни податоци.

За да спречите меѓусебно скриптирање (XSS), проверете дали вашиот HTML е добро саниран. Ова може да се постигне со избирање доверливи рамки во зависност од јазикот на кој се избира. Можете да користите јазици како .Net, Ruby on Rails и React JS бидејќи тие ќе помогнат да се анализира и исчисти вашиот HTML-код. Третирањето на сите податоци од автентицирани или неавтентицирани корисници како недоверливи може да го намали ризикот од напади на XSS.

Несигурна десеријализација

Десериализацијата е трансформација на сериски податоци од сервер во објект. Десериализацијата на податоците е честа појава во развојот на софтвер. Тоа е небезбедно кога податоците е десеријализиран од недоверлив извор. Ова може потенцијално изложете ја вашата апликација на напади. Несигурната десериализација се јавува кога десериализираните податоци од недоверлив извор доведуваат до DDOS напади, напади на далечинско извршување на кодот или заобиколување на автентикација.

За да се избегне несигурна десериализација, правилото е никогаш да не им верувате на податоците на корисниците. Секој корисник внесува податоци треба да се третираат as потенцијално злонамерен. Избегнувајте десериализација на податоци од недоверливи извори. Осигурајте се дека десериализацијата функционира да да се користи во вашата веб апликација е безбедна.

Користење на компоненти со познати ранливости

Библиотеките и Рамките го направија многу побрзо развивањето веб-апликации без потреба од повторно измислување на тркалото. Ова го намалува вишокот во евалуацијата на кодот. Тие го отвораат патот за програмерите да се фокусираат на поважните аспекти на апликациите. Ако напаѓачите откријат експлоатирања во овие рамки, секоја база на кодови што ја користи рамката би биде компромитиран.

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

Недоволно евидентирање и следење

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

Недоволно евидентирање и следење се случуваат кога не се евидентирани настани кои се критични за безбедноста правилно. Напаѓачите го користат ова за да извршат напади врз вашата апликација пред да има забележителен одговор.

Пријавувањето може да и помогне на вашата компанија да заштеди пари и време бидејќи вашите програмери можат лесно најдете бубачки. Ова им овозможува да се фокусираат повеќе на решавање на грешките отколку на нивно пребарување. Всушност, евиденцијата може да помогне да ги одржувате вашите сајтови и сервери во функција и да работат секој пат без тие да доживеат никаков прекин.

Заклучок

Добар код не е за само за функционалноста, се работи за одржување на безбедноста на вашите корисници и апликација. OWASP Топ 10 е листа на најкритичните безбедносни ризици на апликациите е одличен бесплатен ресурс за програмерите да пишуваат безбедни веб и мобилни апликации. Обуката на развивачите на вашиот тим за проценка и евиденција на ризиците може да заштеди време и пари на вашиот тим на долг рок. Ако сакате дознајте повеќе за тоа како да го обучите вашиот тим на OWASP Топ 10, кликнете овде.