Сигурност

10 типова сигурносних рањивости

10 типова сигурносних рањивости
Ненамерна или случајна грешка у софтверском коду или било ком систему који га чини потенцијално искористивим у смислу приступа нелегитимним корисницима, злонамерном понашању попут вируса, тројанаца, црва или било ког другог злонамерног софтвера назива се сигурносна рањивост. Употреба софтвера који је већ искоришћен или употреба слабих и подразумеваних лозинки такође доводи до тога да систем постане рањив на спољни свет. Ове врсте сигурносних рањивости захтевају закрпе како би спречили хакере да поново користе претходно коришћене екплоит-ове на њима како би стекли неовлашћен приступ систему. Сигурносна рањивост која се назива и сигурносна рупа или слабост је мана, грешка или грешка у примени кода, дизајна и архитектуре веб апликације и сервера, што ако се не адресира може резултирати компромитовањем система и чини цела мрежа рањива на напад. Људи који ће бити заражени укључују власника апликације, кориснике апликације и било коју другу особу која се ослања на ту апликацију. Погледајмо најопасније и најчешће сигурносне ризике за веб апликације.

Преглед садржаја

  1. Ињекција базе података
  2. Брокен Аутхентицатион
  3. Изложеност осетљивим подацима
  4. КСМЛ екстерни ентитети (КСЕЕ)
  5. Неисправна контрола приступа
  6. Погрешна конфигурација безбедности
  7. Цросс-сите Сцриптинг (КССС)
  8. Несигурна десеријализација
  9. Коришћење компонената са познатим рањивостима
  10. Недовољно евидентирање и надгледање

Ињекција базе података:

У случају слања непоузданих делова података тумачу као део наредбе кроз било коју област која захтева кориснички унос и.На пољу за унос обрасца или у било које друго подручје за подношење података појављују се недостаци у убризгавању. Злонамерни упити нападача могу преварити тумача да изврши наредбе које могу приказати поверљиве податке за које корисник нема овлашћење да их погледа. На пример, у нападу СКЛ убризгавања, када унос обрасца није правилно саниран, нападач може ући у СКЛ базу података и приступити њеном садржају без одобрења, само уношењем злонамерног кода СКЛ базе података у облик који очекује отворени текст. Свака врста поља која узима корисников унос је ињекциона и.е параметри, променљиве окружења, све веб услуге итд.

Апликација је осетљива на напад убризгавања када се подаци које корисник доставља не санирају и не потврде, употребом динамичких упита без избегавања контекста и директном употребом непријатељских података. Недостаци у ињекцијама могу се лако открити испитивањем кода и употребом аутоматизованих алата попут скенера и фузера. Да би се спречили напади убризгавањем, постоје неке мере које се могу предузети попут одвајања података од наредби и упита, употреба сигурног АПИ-ја који обезбеђује параметризовани интерфејс, употреба „беле листе“ провере уноса на страни сервера помоћу алата попут Снорт, бекство посебних знакова коришћењем специфичне синтаксе бекства, итд.

Напад убризгавањем може довести до великог губитка података, откривања поверљивих информација, ускраћивања приступа, а може довести и до потпуног преузимања апликације. Неке СКЛ контроле попут ЛИМИТ могу се користити за контролу огромних количина губитка података у случају напада. Неке врсте напада убризгавањем су напади СКЛ-а, ОС-а, НоСКЛ-а, ЛДАП-а.

Неисправна аутентификација:

Нападачи могу приступити корисничким налозима и чак могу компромитовати читав систем хоста преко администраторских налога, користећи рањивости у системима за потврду идентитета. Пропусти у аутентификацији омогућавају нападачу да угрози лозинке, токене сесије, кључеве за потврду идентитета и могу бити повезани ланцима с другим нападима који могу довести до неовлашћеног приступа било којем другом корисничком рачуну или сесији привремено, ау неким случајевима и трајно. Рецимо да корисник има списак речи или речник милиона ваљаних корисничких имена и лозинки добијених током кршења. Може их користити једну за другом у изузетно краћем времену користећи аутоматизоване алате и скрипте на систему за пријављивање да види да ли неко ради. Лоша примена управљања идентитетом и контрола приступа доводи до рањивости попут неисправне аутентификације.

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

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

Изложеност осетљивим подацима:

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

Главна мана није само што подаци нису шифровани, чак и ако су шифровани, већ слаба генерација кључа, слаби алгоритми хеширања, слаба употреба шифре такође могу резултирати овим врстама једног од најчешћих напада. Да бисте спречили ове врсте напада, прво класификујте коју врсту података можете сматрати осетљивом према законима о приватности и примените контроле према класификацији. Покушајте да не чувате никакве поверљиве податке који вам нису потребни, већ их оперите чим их употребите. За податке у транзиту, шифрујте их безбедним протоколима и.е ТЛС са ПФС шифрама итд.

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

КСМЛ спољни ентитети (КСЕЕ):

Лоше конфигурисани КСМЛ процесори обрађују референце спољних ентитета унутар КСМЛ докумената. Ови спољни ентитети могу се користити за преузимање података интерних датотека попут / етц / пассвд датотеку или за извршавање других злонамерних задатака.  Рањиви КСМЛ процесори могу се лако искористити ако нападач може отпремити КСМЛ документ или укључити КСМЛ итд. Ови рањиви КСМЛ ентитети могу се открити помоћу САСТ и ДАСТ алата или ручно прегледом зависности и конфигурација.

Веб апликација је рањива на КСЕЕ напад из многих разлога, на пример ако апликација прихвата директан КСМЛ унос из непоузданих извора, омогућене су дефиниције типа документа (ДТД) у апликацији, апликација користи САМЛ за обраду идентитета јер САМЛ користи КСМЛ за идентитет уметања итд. КСЕЕ напади могу се ублажити избегавањем сериализације осетљивих података, коришћењем мање сложених формата података и.ЈСОН, крпање КСМЛ процесора апликација се тренутно користи, па чак и библиотеке, онемогућава ДТД-ове у свим КСМЛ парсерима, валидација функционалности отпремања КСМЛ датотека помоћу КССД верификације итд.

Апликација рањива на ове врсте напада може довести до ДОС напада, напада Биллион Лаугхс, скенирања унутрашњих система, унутрашњег скенирања порта, извршавања даљинске команде што резултира утицајем на све податке апликације.

Неисправна контрола приступа:

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

Рањивости садрже ескалацију привилегија и.понашате се као корисник који нисте или се понашате као администратор док сте корисник, заобилазећи провере контроле приступа само изменом УРЛ адресе или променом стања апликације, манипулацијом метаподацима, омогућавајући примарном кључу да се промени као примарни кључ другог корисника, итд. Да би се спречиле ове врсте напада, механизми контроле приступа морају бити имплементирани у код на страни сервера где нападачи не могу да модификују контроле приступа. Морају се применити јединствена ограничења пословања апликација према моделима домена, онемогућавање уноса директорија сервера, упозорење администратора на поновљене неуспеле покушаје пријаве, неваљање ЈВТ токена након одјаве да би се ублажиле ове врсте напада.

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

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

Најчешћа рањивост је погрешна конфигурација безбедности. Главни разлог за рањивост је употреба задане конфигурације, непотпуне конфигурације, Адхоц конфигурација, лоше конфигурисаних ХТТП заглавља и детаљних порука о грешкама које садрже више информација него што је корисник заправо требао знати. На било ком нивоу веб апликације могу се десити погрешне конфигурације, тј.е база података, веб сервер, сервер апликација, мрежне услуге итд. Нападачи могу да користе неуправљене системе или да приступе незаштићеним датотекама и директоријумима како би неовлаштено задржали систем. На пример, апликација претерано детаљне поруке о грешкама које помажу нападачу да сазна рањивости у апликационом систему и начин на који то ради. Аутоматски алати и скенери могу се користити за откривање ових врста сигурносних недостатака.

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

Ове врсте рањивости или недостатака омогућавају нападачу неовлашћен приступ системским подацима што доводи до потпуне компромитације система.

Цросс-Сите Сцриптинг (КССС):

КССС рањивости се јављају у тренутку када веб апликација укључује непоуздане податке у нову страницу веб странице без легитимног одобрења или бекства или освежава тренутну страницу веб локације подацима клијента, користећи АПИ прегледача који може да направи ХТМЛ или ЈаваСцрипт.  КССС недостаци се јављају у случају да веб локација дозвољава кориснику да дода прилагођени код у УРЛ путању коју други корисници могу видети. Ове се мане користе за покретање злонамерног ЈаваСцрипт кода на претраживачу циља. Рецимо, нападач може жртви послати везу која садржи везу до веб странице било које компаније. У ову везу може бити уграђен неки злонамерни ЈаваСцрипт код. У случају да веб страница банке није на одговарајући начин заштићена од КССС напада, кликом на везу злонамерни код ће се покренути у прегледачу жртве.

Цросс-Сите Сцриптинг је сигурносна рањивост присутна у готово ⅔ веб апликација. Апликација је осетљива на КССС ако апликација складишти неиницијализовани кориснички унос који други корисник може видети, употребом ЈаваСцрипт структура, апликације на једној страници и АПИ-ји који снажно укључују информације које контролишу нападачи на страницу су беспомоћни против ДОМ КССС-а. КССС напади могу се ублажити употребом оквира који избегавају и санирају унос КССС по природи као што је Реацт ЈС итд., Учењем ограничења оквира и њиховим покривањем користећи сопствене случајеве, избегавањем непотребних и непоузданих ХТМЛ података свуда и.е у ХТМЛ атрибутима, УРИ-ју, Јавасцрипту итд., употреба кодирања осетљивог на контекст у случају измене документа на страни клијента итд.

Напади засновани на КССС су три врсте и.е Рефлецтед КССС, ДОМ КССС и Сторед КССС. Све врсте ових напада имају значајан утицај, али у случају Сторед КССС, утицај је још већи и.крађа поверљивих података, слање малвера жртви итд.

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

Серијализација података значи узимање објеката и њихово претварање у било који формат како би се ти подаци касније могли користити у друге сврхе, док десериализација података значи супротно од тога. Десериализација распакује ове сериализоване податке за употребу апликација. Несигурна десериализација подразумева каљење података који су сериализовани непосредно пре него што ће бити распаковани или десериализовани.  Несигурна десериализација доводи до даљинског извршавања кода и користи се за извршавање других задатака у злонамерне сврхе као што су ескалација привилегија, напади убризгавањем, напади поновног приказивања итд. Доступни су неки алати за откривање ове врсте недостатака, али за потврђивање проблема често је потребна људска помоћ. Искоришћавање десериализације је мало тешко јер експлоатације неће успети без неких ручних промена.

Када апликација десериализује злонамерне објекте које испоручује нападачки ентитет. То може довести до две врсте напада и.Напади повезани са структуром података и објектима у којима нападач модификује логику апликације или извршава удаљени код и типични напади на неовлашћено подметање података у којима се постојеће структуре података користе са измењеним садржајем, на пример напади повезани са контролом приступа.  Серијализација се може користити у даљинској комуникацији процеса (РПЦ) или међупроцесној комуникацији (ИПЦ), кеширању података, веб услугама, серверу кеш меморије база података, системима датотека, токенима за аутентификацију АПИ-ја, ХТМЛ колачићима, параметрима ХТМЛ обрасца итд. Десериализацијски напади могу се ублажити не кориштењем сериализираних објеката из непоузданих извора, провођењем провјера интегритета, изолацијом кода који се изводи у мало привилегованом окружењу, надгледањем долазних и одлазних мрежних веза са сервера који се често десеријализују.

Коришћење компонената са познатим рањивостима:

Већина програмера у веб апликацији користи различите компоненте попут библиотека, оквира и софтверских модула. Ове библиотеке помажу програмеру да избегне непотребан рад и пружају потребне функције. Нападачи траже недостатке и рањивости у овим компонентама како би координирали напад. У случају проналаска сигурносне рупе у компоненти могу све локације које користе исту компоненту учинити рањивим. Експлоати ове рањивости су већ доступни, док писање прилагођеног експлоатација од нуле захтева много напора. Ово је врло често и широко распрострањено питање, употреба велике количине компонената у развоју веб апликације може довести до тога да се чак ни не знају и не разумеју све коришћене компоненте, а поправљање и ажурирање свих компонената је дуг пут.

Апликација је рањива ако програмер не зна верзију компоненте која се користи, софтвер је застарео и.Оперативни систем, ДБМС, покренут софтвер, рунтиме окружења и библиотеке, скенирање рањивости се не врши редовно, компатибилност закрпљеног софтвера програмери не тестирају. То се може спречити уклањањем неискоришћених зависности, датотека, документације и библиотека, редовним проверавањем верзије клијентских и компонената на страни сервера, прибављањем компонената и библиотека из званичних и поузданих сигурних извора, надгледањем неуправљених библиотека и компонената, осигуравањем плана за редовно ажурирање и крпање рањивих компонената.

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

Недовољно евидентирање и надзор:

Већина система не предузима довољно мера и корака за откривање кршења података. Просечно време одзива на инцидент је 200 дана након што се догодио, ово је пуно времена да се ураде све гадне ствари за нападачког ентитета. Недовољно евидентирање и надгледање омогућавају нападачу да даље напада систем, одржава његово задржавање на систему, неовлашћено кочи, чува и извлачи податке према потреби. Нападачи користе недостатак надзора и одговора у своју корист за напад на веб апликацију.
Недовољно евидентирање и надгледање се јављају у било ком тренутку и.Евиденције апликација које се не надгледају због необичних активности, догађаји који се могу ревидирати попут неуспјелих покушаја пријаве и високих вриједности трансакција нису правилно евидентирани, упозорења и грешке генеришу нејасне поруке о грешкама, нема упозорења о покретачу у случају пентестирања помоћу аутоматизованих ДАСТ алата, јер нису у могућности да открију или брзо упозорите на активне нападе итд. Они се могу ублажити обезбеђивањем свих пријава, неуспеха контроле приступа и провере улазних података на страни сервера да би се идентификовао злонамерни кориснички рачун и задржао довољно времена за одложену форензичку истрагу, осигуравајући да су генерисани дневници у формату компатибилан са централизованим решењима за управљање евиденцијом, обезбеђивањем провера интегритета код трансакција велике вредности, успостављањем система за благовремено упозоравање на сумњиве активности итд.

Већина успјешних напада започиње провјером и испитивањем рањивости у систему, што омогућава да испитивање рањивости може довести до угрожавања цијелог система.

Закључак:

Безбедносне рањивости у веб апликацији утичу на све ентитете повезане са том апликацијом. О овим рањивостима се мора водити рачуна да би се корисницима обезбедило сигурно и сигурно окружење. Нападачи могу да користе ове рањивости да компромитују систем, докопају се и повећају привилегије. Утицај компромитоване веб апликације може се визуализовати од украдених акредитива на кредитним картицама и крађе идентитета до цурења високо поверљивих информација итд. у зависности од потреба и вектора напада злонамерних ентитета.

Топ 5 ергономских производа за рачунарски миш за Линук
Да ли дуготрајна употреба рачунара изазива бол у зглобу или прстима? Патите ли од укочених зглобова и стално морате да се рукујете? Да ли осећате гору...
Како променити поставке миша и додирне табле помоћу Ксинпут-а у Линук-у
Већина Линук дистрибуција подразумевано испоручује библиотеку „либинпут“ за обраду улазних догађаја на систему. Може да обрађује улазне догађаје и на ...
Замените тастере миша другачије за различити софтвер помоћу Кс-Моусе Буттон Цонтрол
Можда вам је потребан алат који би могао да промени контролу миша са сваком апликацијом коју користите. Ако је то случај, можете испробати апликацију ...