O DevOps v prihodnje, Checkmarx pa še posebej o stalni varnosti novih različic poslovne programske opreme

Nekaj misli o pomembnih rečeh, ki jih pričakujemo glede aplikacijsko-storitvene razvojne filozofije DevOps v tekočem letu, s poudarkom na varnostni problematiki programske opreme.

DevOps je pristop k agilnemu, hitremu in učinkovitemu razvoju novih poslovnih programskih storitev s poudarkom na kulturi in odnosih, torej predvsem na komunikaciji in sodelovanju med inženirji – razvijalci programske opreme in preostankom IT ekipe, kakor tudi na spoštovanju in večjem upoštevanju odziva poslovnih uporabnikov. Cilj DevOps je bolj tekoče, hitrejše in predvsem potrebam primerno uvajanje novih različic poslovnih aplikacij, infrastrukturnih sprememb ter poslovnih storitev, za katere so odgovorni notranji razvijalci v sodelovanju z IT ekipo. Hitro, redno in zanesljivo razvijanje, testiranje in uvajanje programske opreme v delovno okolje nam omogoča hitrejše doseganje poslovnih ciljev in s tem tudi večjo splošno produktivnost. Eden od pomembnih aspektov programskega razvoja in seveda tudi DevOps so varnostni popravki in odpravljanje programskih napak in pomanjkljivosti. To je področje, za katerega je specializirano podjetje Checkmarx, s čigar rešitvami bi naj v DevOps omogočili, da je čim več novih različic predstavljenih zato, ker uvajajo predvsem poslovne novosti, ne zaradi varnostnih popravkov, to dosegamo s sprotnim, hitrim in učinkovitim varnostnim testiranjem znotraj razvojnega cikla. Koncem lanskega leta je bilo objavljenih veliko mnenj o tem, kaj se bo dogajalo letos, med drugim se je v javnosti s svojimi izjavami večkrat pojavil direktor produktnega trženja v Checkmarx Amit Ashbel, ki je hkrati tudi zelo aktiven promotor učinkovite kibernetske varnosti.

Amit Ashbel, Checkmarx, promotor učinkovite kibernetske varnosti

Amit Ashbel (original): »In 2018 one major change we will see as it relates to Application Security (AppSec) is that there will be a reduction of organizations running their own dynamic application security testing (DAST). Many organizations will begin to leverage interactive application security testing (IAST), validating the results by running DAST-as-a-Service. Looking past 2018, the application security testing portfolio will continue to grow with an increase of statistic application security testing (SAST) as part of the development environment. There will also be a stronger emphasis of security (Sec) into DevOps and will allow developers to take a more active role and ownership in identifying and remediating code vulnerabilities. The DevOps world will be the first to adapt IAST solutions that are able to leverage automation tests to deliver security analysis in real time.«

Amit Ashbel (v ‘prostem’ prevodu): »V letu 2018 pričakujemo manj težnje na varnostnih testiranjih in rešitvah tipa DAST. Mnoge organizacije bodo uvajale in uvidele prednosti rešitev tipa IAST, te imajo namreč boljši vpogled v varnostno stanje celotne aplikacije in so hkrati manj obremenjujoče za razvojno / IT ekipo, DAST pa bodo uporabljale bolj kot storitev po naročilu za preverjane učinkovitosti nove IAST rešitve. Varnostno testiranje aplikacij bo postajalo vse bolj uveljavljen del DevOps kulture, vključujoč SAST, najbrž bodo sami razvijalci programske opreme postali bolj aktivni pri odkrivanju in prevzemanju odgovornosti za odpravljanje varnostnih lukenj. DevOps okolja bodo vodila uvajanje IAST rešitev zaradi avtomatizacije varnostnih testiranj, sprotne varnostne analitike se bodo izkazale za zelo pomembne v DevOps filozofijah.«

DAST, SAST, IAST

Dinamično varnostno preverjanje aplikacije – DAST – teče na delujoči aplikaciji v testnem ali produkcijskem okolju. V okviru SAST analiziramo izvorno kodo, v okviru DAST pa analiziramo aplikacijo kot neko črno škatlo ‘black box’, v katero se vnaša informacije in daje rezultate (input-output). DAST je že uveljavljena tehnologija, ki preverja uspešnost različnih napadalnih tehnik z vnašanjem zlonamernih podatkov v aplikacijo, recimo tehnik s področja SQL injection.

SAST in DAST sta dandanes označeni kot »stari« tehnologiji, nekateri trdijo, da nista več dovolj za razvoj dovolj varnih aplikacij za moderne potrebe. Brez SAST najbrž še vedno ne gre, pa čeprav šepa na primer ko uporabljamo zunanje programske knjižnice. Problem DAST rešitev sta predvsem čas in strokovno znanje potrebna za dobro analizo obratujoče aplikacije. To je kritično predvsem v DevOps okoljih, kjer mora ves razvojni cikel teči hitro in gladko kot dobro naoljen stroj.

IAST ali Interactive Application Security Testing oz. interaktivno varnostno preverjanje aplikacij, je odziv na pomanjkljivosti SAST in DAST. IAST analiza ni interaktivna na enak način kot DAST saj temelji bolj na podlagi v samo aplikacijo vgrajenega agenta. Le-ta ima boljši vpogled tako v trenutne podrobnosti obratujoče aplikacije, kot tudi dostop do oz. povezljivost z izvorno kodo. Zato lahko preveri več komponent ter bolj natančno odkriva več različnih vrst pomanjkljivosti kot klasične tehnike.

Še več o DevOps in 2018

Amit Ashbel ni osamljen v tem mnenju. Na http://www.devopsdigest.com lahko vidimo mnenja mnogih strokovnjakov s tega področja in veliko od njih daje večji pomen na varnostnih testiranjih v DevOps. Doslej je bila namreč varnost nekoliko bolj samostojna, izločena iz DevOps kulture. Uveljavljala se je predvsem kot implementacija boljše avtentikacije, šifriranja in kvalitetnih revizijskih sledi, a ugotavljamo, da to ni dovolj. Doslej so breme ali krivdo varnostnih napadov preko poslovnih aplikacij nosili predvsem za varnost odgovorni deli same operativne ekipe, developerji so bili čaščeni kot nezmotljivi, vsaj dokler je poslovna aplikacija delala tisto, kar mora. To pa ni v redu, ugotavljamo da je sedaj bistveno predvsem varnostno preverjanje aplikacij zgodaj znotraj razvojnega cikla. Zato se sedaj pogosto omenja metamorfoza DevOps v DevSecOps – DEVelopment-and-SECurity-OPerationS. Checkmarx pokriva vse aktualne težnje promotorjev DevOps filozofije – preoblikovanje kulture, vključevanje varnosti, pomik varnostnih testiranj čim bolj na začetek razvojnega cikla, vgradnjo varnosti kot osnovno lastnost poslovnih rešitev, interaktivno varnostno testiranje aplikacij ter pravilno zoperstavljanje varnostnim tveganjem v zunanjih programskih knjižnicah API.

Leave a Reply

Your email address will not be published. Required fields are marked *