Checkmarx Open Source Analysis (OSA)

Odprta koda je lahko fantastičen pripomoček za razvoj aplikacij, pravzaprav je v večini projektov že praktično neizogibna, vsaj v manjši meri. Ponuja nam že spisane algoritme, ter funkcije in procedure in kar celotne knjižnice za kompletna področja problemov in nalog v aplikacijah. Zakaj bi odkrivali toplo vodo, če je pred vrati na voljo polna cisterna… Obstajajo celotne skupnosti, ki razvijajo in preizkušajo in v praksi uporabljajo knjižnice in projekte, to je dokajšnje zagotovilo za kvaliteto. Z vgradnjo odprtokodnih rešitev v aplikacijo lahko precej skrajšamo razvojni cikel in hkrati še dodatno zmanjšamo stroške razvoja, saj je odprta koda brezplačna; vsaj za mnoge primere uporabe, seveda pa se je treba v to vnaprej prepričati, da ne bo kakih nepotrebnih komplikacij.

Vendar – ne smemo se prenagliti in računati, da je odprta koda perfektna. Tudi z varnostnega gledišča ne, v kar smo se v zadnjih letih lahko tudi v praksi prepričali. KAj pa vanrotna analiza? Našo lastno, novo ali spremenjeno kodo dandanes redno varnostno preverjamo z rešitvami kot je Checkmarx, odprta koda pa… običajno ji kar zaupamo, čeprav, več, kot je imamo, bolj smo dovzetni na pripetljaje, na katere ne moremo vplivati. In to ni OK.

Checkmarx OSA načeloma ne uporabljamo na način, kot ‘običajni Checkmarx, kot orodje za varnostno analizo same kode, temveč kot pripomoček za spremljanje in upravljanje rabe odprtokodnih elementov v naših projektih. Je pripomoček, s katerim sicer med programskimi vrsticami ne bomo iskali ranljivosti tipa Heartbleed, bo pa nas definitivno opozoril, da uporabljamo verzijo odprtokodne knjižnice, ki je znana po tem, da je ranljiva na Heartbleed ali Shellshock.

  • INVENTAR: Checkmarx OSA vodi evidenco in nam kaže ‘zemljevid’ vseh naših aplikacij in razvojnih projektov in seveda v povezavi s tem predvsem pogled na odprtokodne knjižnice in posamezne različice le-teh, ki jih uporabljamo za razvoj naših aplikacij.
  • VARNOST IN ZANESLJIVOST: Odprtokodne knjižnice imajo hrošče in varnostne ranljivosti prav tako kot druga programska koda. Checkmarx OSA pozna te pomanjkljivosti za veliko množico odprtokodnih projektov, zato nam lahko, glede na to katere knjižnice uporabljamo, nazorno pokaže koliko so naše aplikacije ranljive ali hroščate, na katere ranljivosti, kje v kodi, zaradi katerih knjižnic, ter svetuje s katerimi različicami knjižnic se lahko tega znebimo.
  • ZAKONSKI POGLED: Checkmarx OSA vodi pregled vseh vrst licenciranja in medsebojnih odvisnosti odprtokodnih knjižnic v naših projektih, in posledic, ki jih imajo zanje. Omogoča nam lažje razumevanje zakonskih tveganj ter implikacij in uspešno ohranjanje skladnosti z zahtevami, ki jih prinaša vgradnja odprte kode.
  • POSODABLJANJE: Checkmarx OSA vodi podatke o različicah posameznih odprtokodnih knjižnic in nam sporoča ali je obstoječo različico treba zamenjati z novejšo.
  • VARNOSTNO SKENIRANJE STATIČNE KODE: Integracija Checkmarx OSA in Checkmarx CxSAST nam omogoča sprotni varnostni pregled domače in hkrati odprte kode iz enega mesta in s tem tudi takojšnje odkrivanje pomanjkljivosti v manj popularnih knjižnicah, ki morebiti še niso vključene v bazo Checkmarx OSA.
  • PRILAGODLJIVOST: administrator lahko po potrebi sam spremeni status določene odprtokodne ranljivosti in dodaja komentarje.
  • POKRITOST: Checkmarx OSA pozna Java, NuGet, Python, JavaScript, C#, Scala, Groovy, Go, .Net, Roby, C++, Perl, PHP, Clojure, iOS, ActionScript.

Domača stran: https://www.checkmarx.com/Open-Source-Analysis