Fortify Static Code Analyzer (SCA) efectuează o analiză a codului sursă, identificând originea vulnerabilităților de securitate.
O examinare cu Fortify stabilește o ierarhie a problemelor critice și îndrumă dezvoltatorii în procesul de remediere.
Fortify Static Code Analyzer
Fortify Static Code Analyzer integrează multiple analizoare de vulnerabilități, cum ar fi Buffer, Content, Control Flow, Dataflow, Semantic, Configuration și Structural. Fiecare dintre aceste analizoare utilizează un set specific de reguli, create pentru a oferi informații adecvate tipului de analiză efectuat.
Fortify Static Code Analyzer cuprinde următoarele componente:
- Fortify Scan Wizard: Un instrument care oferă opțiuni pentru a lansa scripturi înainte sau după procesul de analiză.
- Banc de lucru pentru audit: O aplicație cu interfață grafică, destinată organizării și gestionării rezultatelor analizei.
- Editor de reguli personalizate: Un utilitar care permite dezvoltatorilor să creeze și să modifice reguli specifice pentru analiză.
- Plugin pentru IntelliJ și Android Studio: Un plugin care oferă rezultatele analizei direct în mediul IDE.
- Plugin pentru Eclipse: Un instrument integrat cu Eclipse, care afișează rezultatele în IDE.
- Plugin Bamboo: Un plugin care colectează rezultatele analizei din cadrul sarcinilor Bamboo.
- Plugin Jenkins: Un plugin care centralizează rezultatele analizelor executate de Jenkins.
Funcționalitățile Fortify SCA
#1. Compatibilitate cu diverse limbaje de programare
Fortify SCA este compatibil cu diverse limbaje de programare, printre care: ABAP/BSP, ActionScript, ASP (cu VBScript), COBOL, ColdFusion, Apex, ASP.NET, C# (.NET), C/C++, Classic, VB.NET, VBScript, CFML, Go, HTML, Java (inclusiv Android), JavaScript/AJAX, JSP, Kotlin, Visual Basic, MXML (Flex), Objective C/C++, PHP, PL/SQL, Python, Ruby, Swift, T-SQL și XML.
#2. Opțiuni flexibile de implementare
- Fortify On-Prem: Permite organizației un control total asupra tuturor aspectelor Fortify SCA.
- Fortify On Demand: Permite dezvoltatorilor să lucreze într-un mediu Software as a Service.
- Fortify Hosted: Oferă o combinație între cele două, printr-un mediu virtual izolat, cu control complet asupra datelor.
#3. Integrare simplă cu instrumentele CI/CD
- Fortify SCA se integrează cu ușurință cu IDE-uri populare, precum Visual Studio și Eclipse.
- Instrumentul se conectează cu diverse instrumente open-source, cum ar fi Sonatype, WhiteSource, Snyk și BlackDuck, oferind control asupra diferitelor acțiuni.
- De asemenea, Fortify SCA se poate integra cu depozite de cod la distanță, precum Bitbucket și GitHub, scanând codul și generând rapoarte pentru eventualele vulnerabilități.
#4. Alerte în timp real
Fortify SCA oferă actualizări în timp real, pe măsură ce codul este scris, eliminând necesitatea de a aștepta finalizarea codării pentru a începe testarea. Instrumentul, prin configurațiile și analizoarele sale structurale, contribuie la crearea de aplicații sigure.
#5. Asistent de audit bazat pe învățare automată
Asistentul de audit, utilizând algoritmi de învățare automată, accelerează procesul de auditare a sistemului, identificând vulnerabilitățile și prioritizându-le în funcție de nivelul de încredere. Instrumentul ajută organizațiile să reducă costurile de audit, prin generarea automată de rapoarte.
#6. Flexibilitate
Utilizatorii pot alege tipul de scanare în funcție de necesități, optând pentru scanări precise și detaliate, sau pentru scanări rapide, destinate detectării amenințărilor majore.
Care este rolul Fortify SCA?

Fortify SCA are diverse roluri într-un mediu de dezvoltare tipic. Câteva dintre acestea includ:
Testarea statică contribuie la crearea unui cod mai bun
Testarea de securitate statică a aplicațiilor (SAST) ajută la identificarea vulnerabilităților de securitate în etapele incipiente ale dezvoltării, când remedierea acestora este mai puțin costisitoare.
Această abordare reduce riscurile de securitate, oferind un feedback imediat cu privire la problemele introduse în cod.
Dezvoltatorii învață despre securitate prin testarea statică și pot începe să creeze software sigur.
Fortify SCA utilizează o bază vastă de reguli de codare sigură și algoritmi complecși, pentru a analiza codul sursă al unei aplicații software, căutând vulnerabilități de securitate. Analiza se concentrează pe toate căile posibile prin care datele și execuția pot progresa, identificând vulnerabilitățile și sugerând remedii.
Depistează problemele de securitate în stadiu incipient
Fortify SCA funcționează similar unui compilator. În urma scanării, instrumentul convertește codul sursă într-o structură intermediară, îmbunătățită pentru analiza de securitate.
Toate vulnerabilitățile sunt ușor de identificat în acest format intermediar. Instrumentul include un motor de analiză format din analizoare specializate, care folosesc reguli de codare sigură pentru a verifica dacă codul încalcă practicile recomandate.
Fortify SCA include și un generator de reguli, dacă doriți să extindeți capabilitățile analizei statice și să includeți reguli personalizate. Rezultatele pot fi vizualizate în diverse formate, în funcție de sarcină și public.
Fortify Software Security Center (SSC) facilitează gestionarea rezultatelor
Fortify Software Security Center (SSC) este un depozit centralizat, care oferă o imagine clară asupra programului de securitate al unei organizații. Prin SSC, utilizatorii pot audita, revizui, prioritiza și gestiona eforturile de remediere a vulnerabilităților.
Fortify SSC oferă o evaluare precisă a poziției de securitate a aplicației. SSC, situat pe un server central, primește rezultate din diverse activități de testare a securității aplicațiilor, de la analiza în timp real, dinamică, până la analiza statică.
Ce tip de analiză de cod efectuează Fortify SCA?

O scanare fortificată utilizează un model de analiză inspirat din arhitectura atacurilor. Tipurile de analiză efectuate de Fortify SCA includ:
- Validarea și reprezentarea intrărilor: problemele generate de validarea și reprezentarea intrărilor sunt legate de codificări alternative, reprezentări numerice și metacaractere. Printre exemple se numără „Buffer Overflows”, atacurile „Cross-Site Scripting” și „SQL Injection”, care apar atunci când se acordă încredere nejustificată intrărilor utilizatorilor.
- Abuz API: apelarea inadecvată a unui API este un tip comun de abuz.
- Caracteristici de securitate: analiza se concentrează pe diferența dintre securitatea software și software-ul de securitate. Evaluarea se axează pe autentificare, gestionarea privilegiilor, controlul accesului, confidențialitate și criptare.
- Timpul și starea: calculatoarele pot comuta rapid între diferite sarcini. Analiza timpului și a stării identifică defecte care apar din interacțiunile neașteptate dintre fire, informații, procese și timp.
- Erori: Fortify SCA verifică dacă erorile oferă prea multe informații potențialilor atacatori.
- Calitatea codului: codul de calitate slabă conduce la un comportament imprevizibil, oferind atacatorilor ocazia de a manipula aplicația în avantajul lor.
- Încapsulare: este procesul de delimitare a granițelor. Analiza poate include diferențierea dintre datele validate și cele nevalidate.
Descărcarea și instalarea Fortify SCA
Înainte de a începe instalarea, trebuie să:
- Verificați cerințele de sistem în documentația oficială.
- Obțineți fișierul de licență Fortify din pagina de descărcări Microfocus. Căutați Fortify Static Code Analyzer, creați-vă un cont și descărcați fișierul de licență.

- Asigurați-vă că aveți instalat Visual Studio Code sau un alt editor de cod compatibil.
Cum se instalează pe Windows
Fortify_SCA_and_Apps_<version>_windows_x64.exe
Notă: <versiunea> reprezintă versiunea specifică a software-ului.
- Acceptați acordul de licență și dați clic pe „Următorul”.
- Alegeți locația de instalare pentru Fortify Static Code Analyzer și dați clic pe „Următorul”.
- Selectați componentele pe care doriți să le instalați și dați clic pe „Următorul”.
- Specificați utilizatorii, dacă instalați o extensie pentru Visual Studio 2015 sau 2017.
- Specificați locația fișierului fortify.license și dați clic pe „Următorul”.
- Configurați actualizările de conținut de securitate, specificând adresa URL https://update.fortify.com pentru serverul de actualizare Fortify Rulepack și dați clic pe „Următorul”.
- Specificați dacă doriți să instalați un exemplu de cod sursă și dați clic pe „Următorul”.
- Dați clic pe „Următorul” pentru a instala Fortify SCA și aplicațiile.
- Dați clic pe „Actualizare conținut de securitate după instalare” și apoi pe „Terminare” după finalizarea instalării.
Cum se instalează pe Linux
Puteți urma aceiași pași ca pentru instalarea pe Windows, cu diferența că, la primul pas, se va utiliza fișierul de instalare:
Fortify_SCA_and_Apps__linux_x64.run
Alternativ, puteți instala Fortify SCA utilizând linia de comandă.
Deschideți terminalul și rulați comanda:
./Fortify_SCA_and_Apps__linux_x64.run --mode text
Urmați instrucțiunile afișate în linia de comandă până la finalizarea instalării.
Cum se rulează o scanare Fortify

După instalare, este momentul să configurați instrumentul pentru analiza de securitate.
- Navigați în directorul de instalare, apoi în folderul „bin”, folosind promptul de comandă.
- Introduceți „scapostinstall”. Apoi, introduceți „s” pentru a afișa setările.
- Configurați localitatea folosind următoarele comenzi:
Introduceți „2” pentru a selecta „Setări”.
Introduceți „1” pentru a selecta „General”.
Introduceți „1” pentru a selecta „Localitate”.
Pentru limbă, introduceți „engleză: en” pentru a seta limba engleză.
- Configurați actualizările conținutului de securitate. Introduceți „2” pentru a selecta „Setări” și apoi din nou „2” pentru a selecta „Fortificare actualizare”. Puteți utiliza serverul de actualizare Fortify Rulepack, specificând adresa URL https://update.fortify.com.
- Introduceți „sourceanalyzer” pentru a verifica dacă instrumentul este instalat corect.
Fortify SCA va rula în fundal, verificând întregul cod pentru vulnerabilități de securitate.
Concluzie
În era internetului, cazurile de piratare a sistemelor și de compromitere a datelor au devenit tot mai frecvente. Din fericire, avem acum la dispoziție instrumente precum Fortify Static Code Analyzer, care pot detecta amenințările de securitate în timpul scrierii codului, oferind alerte și recomandări pentru gestionarea acestora. Fortify SCA poate spori productivitatea și poate reduce costurile operaționale atunci când este folosit alături de alte instrumente.
De asemenea, puteți explora analiza compoziției software (SCA) pentru a îmbunătăți securitatea aplicației dumneavoastră.