differences between sast
Tento výukový program vysvetľuje rozdiely medzi štyrmi hlavnými bezpečnostnými nástrojmi. Budeme ich porovnávať SAST vs DAST a IAST vs RASP:
Pokiaľ ide o zabezpečenie softvéru v rámci životného cyklu vývoja softvéru, už to nie je obvyklá záležitosť, pretože teraz sú ľahko dostupné rôzne nástroje, ktoré uľahčujú prácu testeru zabezpečenia a pomáhajú vývojárovi odhaliť akékoľvek chyby v ranom štádiu vývoja.
Tu budeme analyzovať a porovnávať štyri také hlavné bezpečnostné nástroje SAST, DAST, IAST a RASP.
Čo sa dozviete:
Rozdiely medzi SAST, DAST, IAST a RASP
Už niekoľko dobrých rokov softvérové aplikácie pozitívne ovplyvňujú spôsob, akým pracujeme alebo podnikáme. Väčšina webových aplikácií teraz ukladá a narába s čoraz citlivejšími údajmi, čo teraz prinieslo otázku zabezpečenia údajov a zabezpečenia súkromia.
Kontrola faktov: Podľa prieskumu, ktorý uskutočnil Verizon v roku 2020 o narušení údajov sa uviedlo, že 43% porušení bolo útokov na webové aplikácie, zatiaľ čo niektoré ďalšie porušenia bezpečnosti boli dôsledkom akejsi zraniteľnosti webových aplikácií.
V tomto výučbe budeme analyzovať štyri hlavné bezpečnostné nástroje, ktoré by organizácie mali mať k dispozícii a ktoré môžu vývojárom a testerom pomôcť identifikovať zraniteľné miesta v ich zdrojovom kóde v rôznych fázach životného cyklu vývoja softvéru.
Medzi tieto bezpečnostné nástroje patrí SAST , DAST , IAST , a RASP.
(obrázok zdroj )
Čo je SAST
Skratka „ SAST ” znamenať Statické testovanie bezpečnosti aplikácií .
Mnoho ľudí má tendenciu vyvíjať aplikáciu, ktorá dokáže automatizovať alebo vykonávať procesy veľmi rýchlo, a tiež zlepšuje výkon a užívateľskú skúsenosť, a tým zabúda na negatívny dopad, ktorý by mohla aplikácia, ktorá nemá zabezpečenie, spôsobiť.
Testovanie bezpečnosti nie je o rýchlosti alebo výkone, ale skôr o hľadaní zraniteľností.
Prečo to je Statický ? Je to tak preto, lebo test sa vykonáva pred spustením a spustením aplikácie. SAST môže pomôcť odhaliť zraniteľné miesta vo vašej aplikácii skôr, ako ich svet nájde.
Ako to funguje
SAST používa testovaciu metodológiu analýzy zdrojového kódu na detekciu akýchkoľvek stôp zraniteľnosti, ktoré by mohli útočníkovi poskytnúť backdoor. SAST zvyčajne analyzujú a skenujú aplikáciu pred zostavením kódu.
Proces SAST je tiež známy ako Testovanie bielej skrinky . Akonáhle je zistená zraniteľnosť, ďalším smerom je kontrola kódu a oprava kódu pred tým, ako bude kód kompilovaný a nasadený na uvedenie do života.
Testovanie bielej skrinky je prístup alebo metóda, ktorú testeri používajú na testovanie vnútornej štruktúry softvéru a na zisťovanie jeho integrácie s externými systémami.
Čo je DAST
„DAST“ znamenať Dynamické testovanie bezpečnosti aplikácií . Toto je bezpečnostný nástroj, ktorý sa používa na skenovanie akýchkoľvek webových aplikácií s cieľom zistiť chyby zabezpečenia.
Tento nástroj sa používa na zisťovanie slabých miest vo webovej aplikácii, ktorá bola nasadená do výroby. DAST nástroje bude vždy posielať výstrahy bezpečnostnému tímu, ktorý je pridelený na okamžitú nápravu.
DAST je nástroj, ktorý je možné veľmi skoro integrovať do životného cyklu vývoja softvéru. Jeho zameraním je pomôcť organizáciám znižovať a chrániť pred rizikom, ktoré by mohli spôsobiť chyby zabezpečenia.
Tento nástroj sa veľmi líši od SAST, pretože DAST používa Metodika testovania čiernej skrinky , vykonáva hodnotenie zraniteľnosti zvonka, pretože nemá prístup k zdrojovému kódu aplikácie.
DAST sa používa počas testovacej a QA fázy SDLC.
Čo je IAST
„ IAST ” znamenať Interaktívne testovanie bezpečnosti aplikácií .
IAST je bezpečnostný nástroj aplikácie, ktorý bol navrhnutý pre webové aj mobilné aplikácie na zisťovanie a hlásenie problémov, aj keď je aplikácia spustená. Predtým, ako niekto dokáže úplne pochopiť porozumenie IAST, musí vedieť, čo vlastne SAST a DAST znamenajú.
IAST bol vyvinutý na zastavenie všetkých obmedzení, ktoré existujú v programoch SAST aj DAST. Používa Metodika testovania šedej skrinky .
Ako presne IAST funguje
Testovanie IAST sa vyskytuje v reálnom čase rovnako ako DAST, keď je aplikácia spustená v pracovnom prostredí. IAST dokáže identifikovať riadok kódu spôsobujúci problémy so zabezpečením a rýchlo informovať vývojára o okamžitej náprave.
IAST tiež kontroluje zdrojový kód rovnako ako SAST, ale toto je v štádiu po zostavení, na rozdiel od SAST, ku ktorému dochádza pri vytváraní kódu.
Agenti IAST sú zvyčajne nasadení na aplikačných serveroch a keď skener DAST vykoná prácu oznámením chyby, nasadený agent IAST teraz vráti číslo riadku problému zo zdrojového kódu.
Agenti IAST môžu byť nasadení na aplikačnom serveri a počas funkčného testovania vykonaného testerom QA agent študuje každý vzorec, ktorým sa riadi prenos dát v aplikácii, bez ohľadu na to, či je to nebezpečné alebo nie.
Napríklad , ak údaje prichádzajú od používateľa a používateľ chce v aplikácii vykonať príkaz SQL Injection pripojením dotazu SQL k žiadosti, potom bude žiadosť označená ako nebezpečná.
Čo je RASP
„ RASP ” znamenať Vlastná ochrana za behu aplikácie .
RASP je runtime aplikácia, ktorá je integrovaná do aplikácie na analýzu prichádzajúceho a odchádzajúceho prenosu a vzorcov správania koncových používateľov, aby sa zabránilo bezpečnostným útokom.
Tento nástroj sa líši od ostatných nástrojov, pretože RASP sa používa po vydaní produktu, čo z neho robí nástroj zameraný na zabezpečenie v porovnaní s ostatnými, ktoré sú známe na testovanie.
RASP sa nasadzuje na webový alebo aplikačný server, vďaka ktorému sa môže posúvať vedľa hlavnej aplikácie, keď je spustená, aby monitoroval a analyzoval správanie prichádzajúcej aj odchádzajúcej premávky.
Ihneď po zistení problému RASP odošle výstrahy bezpečnostnému tímu a okamžite zablokuje prístup k jednotlivým požiadavkám.
Keď nasadíte RASP, zabezpečí celú aplikáciu proti rôznym útokom, pretože nečaká iba na to, či sa bude spoliehať iba na konkrétne podpisy niektorých známych slabých miest.
RASP je kompletné riešenie, ktoré sleduje každý malý detail rôznych útokov na vašu aplikáciu a tiež pozná jej správanie.
Zistiť zraniteľné miesta skoro v SDLC
Jedným z dobrých spôsobov, ako zabrániť chybám a zraniteľnostiam vašej aplikácie, je zabudovať do aplikácie zabezpečenie od začiatku, t. J. Všetko cez zabezpečenie SDLC je prvoradé.
Nikdy neznemožňujte vývojárom implementáciu zabezpečeného kódovania, naučte ich, ako implementovať toto zabezpečenie od samého začiatku SDLC. Zabezpečenie aplikácií nie je určené len pre bezpečnostných technikov, je to aj všeobecné úsilie.
Jedna vec je vytvoriť aplikáciu, ktorá je veľmi funkčná, rýchla a funguje fantasticky dobre, a ďalšou vecou je zabezpečenie používania aplikácie. Pri uskutočňovaní stretnutí na preskúmanie návrhu architektúry zahrňte odborníkov na bezpečnosť, ktorí vám pomôžu vykonať analýzu rizík navrhovaného architektonického návrhu.
Tieto kontroly vždy identifikujú akékoľvek architektonické chyby na začiatku procesu vývoja, čo môže pomôcť zabrániť oneskorenému vydaniu a tiež ušetriť organizácii peniaze a čas pri hľadaní riešenia problému, ktorý by mohol neskôr prepuknúť.
SAST je veľmi dobrý bezpečnostný nástroj, ktorý môžu vývojári zahrnúť do svojho TU. Jedná sa o veľmi dobrý nástroj na statickú analýzu, ktorý vývojárom pomôže odhaliť slabé miesta ešte skôr, ako dôjde ku kompilácii kódu.
Predtým, ako vývojári zostavia svoj kód, je vždy užitočné uskutočniť a relácia kontroly zabezpečeného kódu . Relácie na kontrolu kódu, ako je táto, sú zvyčajne šetriacou milosťou a poskytujú prvú líniu obrany proti akýmkoľvek chybám implementácie, ktoré by mohli spôsobiť zraniteľnosť systému.
Keď získate prístup k zdrojovému kódu, použite nástroje na statickú analýzu, ako napríklad SAST na detekciu ďalších chýb implementácie, ktoré zmeškali reláciu manuálneho kontroly kódu.
Vyberte si medzi SAST vs DAST vs IAST vs RASP
Ak ma požiadajú, aby som sa rozhodol, pôjdem radšej za všetky. Môžete sa však opýtať, či to nie je kapitálovo náročné?
devops rozhovor otázky a odpovede pre skúsených
Bezpečnosť je každopádne drahá a mnoho organizácií sa jej vyhýba. Ospravedlňujú sa, že sú príliš drahé, aby im zabránili v zabezpečení ich aplikácií, čo by ich z dlhodobého hľadiska mohlo stáť viac pri riešení problému.
SAST , DAST a IAST sú vynikajúce nástroje, ktoré sa môžu bez problémov navzájom dopĺňať, iba ak máte finančnú chrbticu na ich nosenie. Bezpečnostní experti vždy podporujú použitie dvoch alebo viacerých z týchto nástrojov na zabezpečenie lepšieho pokrytia, čo následne zníži riziko zraniteľnosti pri výrobe.
Súhlasíte s tým, že SDLC si v priebehu rokov rýchlo osvojuje agilný prístup a obvyklé tradičné testovacie metódy nedokážu držať krok s vývojovým tempom.
Prijatie používania automatizovaných testovacích nástrojov v počiatočných fázach SDLC môže výrazne zlepšiť zabezpečenie aplikácií s minimálnymi nákladmi a časom.
Upozorňujeme však, že tieto nástroje nemajú byť náhradou za všetky ostatné bezpečné kódovacie postupy, ale skôr sú súčasťou úsilia o vytvorenie komunity bezpečných aplikácií.
Pozrime sa na niektoré spôsoby, kde sa tieto nástroje navzájom líšia.
SAST Vs DAST
SAST | DAST |
---|---|
Toto je testovanie v bielom poli, kde máte prístup k aplikačnému rámcu, dizajnu a implementácii zdrojového kódu. Celá aplikácia sa testuje zvnútra. Tento typ testovania sa často nazýva vývojársky prístup. | Toto je testovanie čiernej skrinky, pri ktorom nemáte prístup k internému rámcu, ktorý tvoril aplikáciu, zdrojový kód a dizajn. Testovanie aplikácií je zvonka. Tento typ testovania sa často nazýva hackerský prístup. |
Aplikáciu SAST nie je potrebné inštalovať, je potrebné vykonať zdrojový kód. Spravidla analyzuje zdrojový kód priamo bez vykonania akejkoľvek aplikácie. | Program DAST musí byť nasadený na aplikačnom serveri a pred vykonaním akcie nemusí mať prístup k zdrojovému kódu. Je to iba nástroj, ktorý je potrebné vykonať na skenovanie aplikácie. |
Toto je jeden nástroj, ktorý sa používa na vyhľadanie slabých miest v SDLC veľmi skoro. Implementuje sa okamžite po napísaní kódu. Poukazuje na zraniteľnosť v integrovanom vývojovom prostredí. | Používa sa až po kompilácii kódu a na skenovanie celej chyby zabezpečenia v celej aplikácii. |
Tento nástroj nie je drahý, pretože chyby zabezpečenia sú v SDLC zvyčajne veľmi skoro, čo urýchľuje ich nápravu a pred uvedením kódu do pohybu. | Tento nástroj je drahý z dôvodu skutočnosti, že chyby zabezpečenia sa zvyčajne objavia ku koncu SDLC. Sanácie sa zvyčajne nerobia v reálnom čase, okrem núdzových prípadov. |
Tento nástroj skenuje iba statický kód, čo sťažuje odhaľovanie zraniteľností za behu. | Tento nástroj skenuje aplikáciu pomocou dynamickej analýzy na nájdenie zraniteľností za behu. |
Toto podporuje všetky aplikácie. | Toto prehľadá iba aplikáciu ako webovú aplikáciu, ktorá nefunguje s iným softvérom. |
IAST vs. RASP
IAST | RASP |
---|---|
Väčšinou sa používa ako nástroj na testovanie bezpečnosti. hľadá bezpečnostné zraniteľnosti | Používa sa nielen ako nástroj na testovanie zabezpečenia, ale slúži aj na ochranu celej aplikácie, ktorá beží popri nej. Toto monitoruje aplikáciu pred akýmikoľvek útokmi. |
To podporuje presnosť programu SAST pomocou výsledkov analýzy chodu programu SAST. | Toto je nástroj, ktorý identifikuje a blokuje hrozby v reálnom čase. Táto aktivita nevyžaduje ani žiadny ľudský zásah, pretože nástroj žije v hlavnej aplikácii a chráni ju. |
Postupne sa prijíma a vyžaduje nasadenie agenta. | Zatiaľ to nie je akceptované a vyžaduje nasadenie agenta. |
Jazyková podpora je obmedzená. | Nie je to závislé od jazyka alebo platformy. |
Tento nástroj je veľmi ľahké integrovať na analýzu zdrojového kódu, riadenie behu programu a všetkých rámcov, ktoré aplikáciu tvorili. | Tento nástroj sa bezproblémovo integruje do aplikácie a nie je závislý od žiadnej ochrany na úrovni siete, ako je WAF. |
Tento nástroj prináša to najlepšie z kombinácie funkcií SAST a DAST, čo mu rovnako pomáha odhaliť zraniteľné miesta v širšom meradle. | Pokrýva široké spektrum zraniteľností |
Napriek niektorým obmedzeniam, ktoré môžete pozorovať v technológiách ako SAST , DAST , IAST, a RASP , použitie týchto automatizovaných bezpečnostných nástrojov vždy zaručí bezpečnejší softvér a ušetrí vám vysoké náklady na opravu zraniteľnosti, ktoré sa objavia neskôr.
(obrázok zdroj )
Potrebujete integrovať bezpečnostné nástroje do DevOps
Keď skombinujete vývoj, prevádzku a bezpečnosť dohromady a prinútite ich spolupracovať, máte v podstate nastavenie DevSecOps.
S DevSecOps ste schopní integrovať zabezpečenie do celého procesu vývoja aplikácie, čo pomôže chrániť vašu aplikáciu pred akýmkoľvek útokom alebo hrozbou.
DevSecOps rýchlosť, s akou teraz mnoho organizácií vydáva aplikácie, je alarmujúca. Nemožno im to vyčítať, pretože zo strany zákazníkov je vysoký dopyt. Automatizácia je teraz podstatným aspektom DevOps a pri integrácii bezpečnostných nástrojov do rovnakého procesu nie je žiadny rozdiel.
Rovnako ako každý manuálny proces je teraz nahradený príkazom devops, to isté platí pre testovanie zabezpečenia, ktoré bolo nahradené nástrojmi ako SAST , DAST , IAST , RASP .
Každý bezpečnostný nástroj, ktorý je teraz súčasťou každého Devops by mali byť schopní vykonávať bezpečnosť na veľmi vysokej úrovni a dosahovať nepretržitú integráciu a nepretržité poskytovanie.
SAST , DAST , IAST, a RASP boli testované bezpečnostnými architektmi a v súčasnosti si zakladajú na vysokých základoch v prostredí DevOps. Dôvodom je ľahké použitie a schopnosť rýchleho nasadenia týchto nástrojov do stále svižného sveta.
Či už sa tento nástroj použije na vykonanie analýzy zloženia softvéru pre zraniteľné miesta, alebo na vykonanie automatickej kontroly kódu, testy by mali byť rýchle a presné a správa by mala byť okamžite k dispozícii vývojovému tímu, aby ho bolo možné spotrebovať.
často kladené otázky
Otázka 1) Aký je rozdiel medzi SAST a DAST?
Odpoveď: SAST znamená Statické testovanie bezpečnosti aplikácií, ktoré je a testovanie bielej skrinky a priamo analyzovať zdrojový kód. Medzitým DAST znamená Dynamické testovanie zabezpečenia aplikácií, ktoré je testovanie čiernej skrinky metóda, ktorá zisťuje slabé miesta za behu.
Otázka 2) Čo je testovanie IAST?
Odpoveď: IAST znamená interaktívne testovanie bezpečnosti aplikácií, ktoré analyzuje kód na chyby zabezpečenia počas behu aplikácie. Spravidla sa nasadzuje vedľa seba s hlavnou aplikáciou na aplikačnom serveri.
Otázka 3) Aká je úplná forma SAST?
Odpoveď: SAST znamená Statické testovanie bezpečnosti aplikácií
Otázka č. 4) Aký je najlepší prístup alebo bezpečnostný nástroj z týchto štyroch?
Odpoveď: Najlepším prístupom je zvyčajne mať všetky tieto nástroje implementované, ak to vaša finančná sila dokáže uniesť. Implementáciou všetkých týchto nástrojov zaistíte, aby bol váš softvér stabilný a bez zraniteľností.
Záver
Teraz vidíme, že rýchle tempo nášho agilného prostredia teraz prinieslo potrebu automatizovať náš bezpečnostný proces. Bezpečnosť nie je lacná a zároveň je dôležitá aj bezpečnosť.
Nikdy by sme nemali odhadovať použitie bezpečnostných nástrojov v našom každodennom vývoji, pretože vždy zabránia každému výskytu útoku do aplikácie. Pokúste sa čo najviac zaviesť túto technológiu včas do SDLC, čo je vždy najlepší prístup k väčšiemu zabezpečeniu vášho softvéru.
Rozhodovanie o správnom riešení AST teda zahŕňa nájdenie správnej rovnováhy medzi rýchlosťou, presnosťou, pokrytím a nákladmi.
Odporúčané čítanie
- Jenkins Security: Povolenie zabezpečenia a matice zabezpečenia projektu
- Testovanie zabezpečenia siete a najlepšie nástroje zabezpečenia siete
- Kľúčové rozdiely medzi testovaním čiernej skrinky a testovaním bielej skrinky
- 10 najlepších bezpečnostných služieb EDR v roku 2021 pre Endpoint Protection
- 10 najlepších nástrojov na testovanie bezpečnosti mobilných aplikácií v roku 2021
- 10 NAJLEPŠÍM softvérom na zabezpečenie siete (LEN 2021 NAJLEPŠÍ VÝBER)
- 19 výkonných nástrojov na testovanie prieniku, ktoré profesionáli používali v roku 2021
- Pokyny na testovanie zabezpečenia mobilných aplikácií