Definiți GHAS și importanța caracteristicilor sale integrale

Finalizat

În această unitate vom acoperi:

  • Scanare secretă
  • Scanarea codului
  • Dependabot
  • Crearea unui ciclu de viață de dezvoltare software mai sigur cu caracteristici cheie

Să începem cu o revizuire rapidă a GHAS.

Ce este GHAS?

O diagramă conceptuală a diferitelor etape ale ciclului de viață al dezvoltării software-ului cu GitHub Advanced Security.

GitHub Advanced Security (sau GHAS) este o soluție de securitate a aplicațiilor care ajută dezvoltatorii să-și securizeze codul și să gestioneze riscurile fără a-și întrerupe fluxul de lucru.

GHAS include capabilități oferite acum ca două produse distincte: GitHub Secret Protection și GitHub Code Security. Această separare permite organizațiilor să activeze caracteristicile care se potrivesc cel mai bine cu prioritățile lor de securitate și licențiere.

Securitate avansată este încorporată direct în fluxul de lucru, pentru a preveni vulnerabilitățile și scurgerile de acreditări fără a încetini dezvoltarea. GitHub Advanced Security este ca faptul că consultantul dvs. personal de securitate revizuiește fiecare linie de cod cu detalii de la experții de securitate din întreaga lume.

Asigurarea securității aplicațiilor și a lanțului de aprovizionare a software-ului nu a fost niciodată mai importantă. Gartner estimează că 45% organizațiilor globale vor fi afectate de un atac lanțului de aprovizionare până în 2025. Conform Raportului de investigare a încălcării datelor din 2022, aplicațiile continuă să fie un vector de atac de top și se află în centrul a peste 40% tuturor încălcărilor datelor.

Încorporarea securității în procesul dvs. de dezvoltare software poate părea ca un proces de descurajare, așa că să trecem peste 3 caracteristici cheie ale GHAS și cum vă ajută echipa să rămână la curent cu cele mai recente amenințări de securitate: scanarea secretă, scanarea codului și Dependabot.

Scanare secretă

Imaginea unui lacăt cu octocat GitHub în mijlocul acesteia reprezentând Scanarea de securitate.

Scanarea secretă este o caracteristică critică de securitate GitHub care identifică și ajută la prevenirea expunerii accidentale a informațiilor sensibile, cum ar fi cheile API și tokenurile, în codul sursă. Scanarea secretă este disponibilă gratuit pentru toate depozitele publice și poate fi activată și pentru depozitele private cu o licență GitHub Advanced Security (GHAS).

Acest lucru ajută la prevenirea accesului neautorizat și protejează datele confidențiale. Scanarea secretă operează prin căutarea modelelor predefinite și a semnăturilor orientative ale informațiilor sensibile, asigurându-vă că riscurile potențiale de securitate sunt rezolvate cu promptitudine. În mod implicit, scanarea secretă caută modele extrem de precise care au fost furnizate de un partener GitHub. Cu toate acestea, modele personalizate pot fi create pentru alte cazuri de utilizare.

Scanarea secretă include:

  • Protecția push împiedică proactiv scurgerile secrete prin scanarea codului la comitere și blocarea unui push dacă este prezent un secret.
  • Capacitatea de a vizualiza cu ușurință avertizările și de a le remedia fără a fi nevoie să ieșiți din GitHub.

Într-un ciclu de viață securizat de dezvoltare software, scanarea secretă detectează secretele expuse, permițând echipelor să le revoce sau să le rotească cât mai devreme posibil, adesea înainte ca acestea să poată fi utilizate în scopuri rău intenționate, reducând riscul de încălcare a datelor și păstrând confidențialitatea pe tot parcursul dezvoltării.

În continuare, să revizuim scanarea codului.

Scanarea codului

Imaginea unei chei cu octocat GitHub în mijlocul acesteia reprezentând scanarea codului.

Scanarea codului este o caracteristică integrală a GHAS care analizează codul sursă pentru vulnerabilitățile de securitate și erorile de codificare. Utilizează tehnici de analiză statică pentru a identifica problemele potențiale, cum ar fi injectarea SQL, scriptarea încrucișată a site-ului și depășirile tampon. Furnizând feedback automat direct în fluxul de lucru cu solicitări de extragere, scanarea codului permite dezvoltatorilor să abordeze vulnerabilitățile la începutul procesului de dezvoltare.

Scanarea codului îmbunătățește calitatea codului și ajută la minimizarea amenințărilor de securitate prin identificarea și abordarea problemelor la începutul ciclului de viață al dezvoltării. Deoarece regulile de scanare sunt actualizate continuu, scanarea codului poate detecta și vulnerabilități care pot exista deja în producție.

Dependabot

Imaginea unui robot cu capul pătrat cu marcaje de selectare ca ochi menite să reprezinte Dependabot.

Dependabot este un instrument automatizat de gestionare a dependențelor, responsabil pentru păstrarea dependențelor de proiect up-to-date. Acesta caută periodic actualizări ale bibliotecilor și cadrelor utilizate într-un proiect și deschide automat solicitări de tragere pentru a actualiza dependențele la cele mai recente versiuni securizate.

Dependabot include:

  • Alerte pentru vulnerabilități cunoscute
  • Actualizări de securitate pentru pachetele vulnerabile
  • Actualizări de versiune pentru a menține dependențele actualizate

Dependabot lucrează îndeaproape cu Dependency Graph pentru a determina ce dependențe sunt utilizate și pentru a le face referințe încrucișate cu GitHub Advisory Database pentru a detecta vulnerabilitățile.

Cu GitHub Advanced Security, capacitățile Dependabot sunt îmbunătățite de Dependency Review, permițându-vă să previzualizați orice pachete vulnerabile introduse într-o solicitare de extragere și să preveniți adăugarea de dependențe nesigure înainte de fuziune.

Unde se activează scanarea secretă, scanarea codului și avertizările Dependentabot

Pentru a activa oricare dintre avertizările de la un nivel depozit, navigați mai întâi la fila de securitate a depozitului.

Imaginea filei de securitate în caseta cu roșu evidențiată în bara de navigare GitHub.

În continuare, activați avertizările în Prezentarea generală a securității.

Imaginea paginii filei de securitate cu scanarea secretă activată, scanarea codului și avertizările Dependentabot activate.

Acum că am revizuit și am activat toate cele 3 caracteristici integrale ale GHAS, să vorbim despre cum să le implementăm pe toate pentru a crea un ciclu de viață de dezvoltare software mai sigur.

Crearea unui ciclu de viață de dezvoltare software mai sigur cu toate cele 3 caracteristici

Scanarea secretă, scanarea codului și Dependențabot contribuie colectiv la crearea unui ciclu de viață de dezvoltare software mai sigur. Scanarea secretă împiedică expunerea accidentală a informațiilor sensibile. Scanarea codului identifică și tratează vulnerabilitățile de securitate din codul de bază. Și Dependabot automatizează gestionarea dependenței.

Prin integrarea acestor caracteristici, echipele de dezvoltare pot aborda proactiv problemele de securitate în fiecare etapă a ciclului de viață al dezvoltării. Această abordare proactivă reduce la minimum probabilitatea ca incidentele de securitate să ajungă la producție, având ca rezultat un proces de dezvoltare software mai rezistent, mai sigur și mai eficient.

Impactul combinat al acestor caracteristici integrale asigură că securitatea nu este o atenție independentă, ci o parte integrantă a întregului flux de lucru de dezvoltare.

Caracteristici de securitate pentru proiectele open source

Proiectele publice de pe GitHub beneficiază de anumite caracteristici de securitate implicite, cum ar fi graficele de scanare secretă și dependență. GitHub scanează automat depozitele publice pentru modelele partenerilor și furnizează avertizări administratorilor depozitului. Proiectele publice pot alege, de asemenea, să activeze scanarea codului, Dependențabot și Revizuirea dependenței fără o licență GitHub Advanced Security.

Cu toate acestea, aceste caracteristici sunt fundamentale și nu pot oferi profunzimea protecției necesare pentru proiecte mai complexe sau medii de întreprindere.

Atunci când GitHub Advanced Security (GHAS) este asociat cu GitHub Enterprise Cloud (GHEC), setul cuprinzător de caracteristici de securitate devine disponibil și pentru proiectele interne și private:

  • Scanarea codului - căutați vulnerabilități de securitate potențiale și erori de codificare în cod.
  • Scanare secretă - detectați secretele, de exemplu, cheile și simbolurile, care au fost verificate în depozite private. Avertizările de scanare secretă pentru utilizatori și parteneri sunt disponibile gratuit pentru depozitele publice de pe GitHub.com. Dacă este activată protecția prin împingere, detectează, de asemenea, secrete atunci când acestea sunt împinse la depozitul dvs.
  • Revizuire dependență - afișați impactul complet al modificărilor asupra dependențelor și vedeți detaliile oricăror versiuni vulnerabile înainte de a îmbina o solicitare de tragere.

Tabelul de mai jos rezumă disponibilitatea caracteristicilor de securitate avansată GitHub pentru depozitele publice și private.

Caracteristică Depozit public Depozit privat fără Securitate avansată Depozit privat cu Securitate avansată
Scanarea codului
Scanare secretă
Revizuire dependență