Agenție de software din Cluj-Napoca
Echipe care livrează pentru mai mulți clienți vor același set de verificări în toate proiectele, cu raport per client la finalul sprintului.
Securitatea codului generat de AI e mai ales o problemă de volum: asistenții scriu mult, repede și plauzibil, iar erorile ajung în producție cu aspect de cod bun. Punem gate-uri în CI/CD pe proiectele găzduite la noi: SAST cu triaj, scanare de secrete, SBOM și dependențe verificate, imagini semnate. Ce nu trece nu ajunge pe server.
Lanțul are patru puncte de control. În cod: SAST pe reguli Semgrep, cu atenție la validarea intrărilor, la interogări construite prin concatenare și la autorizarea lipsă pe rute. În dependențe: SBOM generat la fiecare build și comparat cu bazele de vulnerabilități. În imagini: scanare de straturi, utilizator non-root, semnătură cu cosign. În infrastructura ca cod: reguli checkov pentru stocare publică, porturi deschise și drepturi prea largi. Peste tot, scanare de secrete, inclusiv în istoricul repository-ului.
Modelele produc cod care compilează și pare corect, dar repetă tipare nesigure din datele pe care au învățat: concatenare în interogări, validare absentă, criptografie aleasă prost, secrete puse direct în fișier, dependențe inventate care apoi sunt înregistrate de altcineva cu același nume. Problema reală e viteza: se scrie mai mult cod pe unitate de timp, deci mai multă suprafață. Aceleași modele ajută însă la apărare: triaj al rezultatelor SAST, explicarea unei constatări în contextul funcției, propunerea de corectură. Verificarea rămâne deterministă, iar decizia de merge la un om.
Un gate care blochează totul e dezactivat în două săptămâni. Îl calibrăm: eșec doar pe severitate mare și pe secrete, avertisment pe restul, plus o listă de excepții cu termen și proprietar. Rulăm scanările în paralel cu testele, ca timpul de build să nu crească simțitor, și păstrăm în cache bazele de vulnerabilități. Pe pull request comentăm doar ce e nou față de ramura de bază, ca dezvoltatorul să vadă ce a introdus el, nu datoria istorică a proiectului.
Configurăm pipeline-ul pe GitHub Actions, GitLab CI sau pe un runner propriu, pe VPS-ul tău din Frankfurt, dacă vrei ca sursele să nu iasă din infrastructura ta. Lucrarea se cere din panoul de client, la „Servicii DevOps”. Din orele lunare (una la cPanel de la Advanced, una până la opt la VPS, zece la dedicate și GPU) ținem regulile actualizate, revizuim excepțiile expirate și adăugăm verificări la proiectele noi. Un refactor mare al pipeline-ului depășește cota și se facturează separat, la oră.
Fiecare abonament include lunar ore de DevOps, CyberSecurity și Programare: 1 h de la planul cPanel Advanced în sus, 1–8 h pe VPS și 5–10 h pe serverele dedicate, în funcție de plan, și 10 h pe GPU. Orele se cer din panoul de client, nu se reportează în luna următoare, iar ce depășește cota se acceptă și se facturează separat. Cu abonamentele care includ minimum 2 ore lunare îți construim un site de prezentare, iar cu cele care includ minimum 5 ore, un magazin online — din orele deja plătite în abonament.
Ceri securizarea pipeline-ului din „Servicii DevOps”, ne spui unde stă codul, cum faci deploy și ce praguri poți accepta la început.
Rulăm o primă trecere: SAST, secrete în istoric, dependențe, imagini, IaC. Îți arătăm ce ar bloca un gate pus astăzi și ce se repară rapid.
Adăugăm pașii în CI, calibrăm severitățile, rotim cheile expuse și semnăm imaginile. Trecem gradual de la avertisment la blocare.
Predăm configurația, lista de excepții cu termene și documentația. Revizuim regulile periodic, din orele incluse în abonament.
Echipe care livrează pentru mai mulți clienți vor același set de verificări în toate proiectele, cu raport per client la finalul sprintului.
O echipă care folosește asistenți de cod adaugă gate-uri pe pull request, ca volumul mare de cod nou să nu intre neverificat în producție.
O firmă din București trebuie să prezinte SBOM și dovezi de scanare pentru fiecare versiune livrată partenerului bancar.
Nu implicit. Compilează și arată bine, dar repetă tipare nesigure: validare lipsă, interogări construite prin concatenare, secrete în fișiere, dependențe care nu există. Tratează-l ca pe cod scris de un coleg nou: util și rapid, dar trecut prin aceleași verificări automate și prin recenzie umană.
Termenul folosit pentru scrierea de aplicații prin conversație cu un model, fără să citești atent ce iese. Riscul nu e sintaxa, ci ce nu se vede: autorizare absentă, date expuse, dependențe necunoscute. Un gate în CI îl transformă din pariu în proces repetabil.
Lista completă a componentelor din care e făcut software-ul tău: biblioteci, versiuni, licențe. O generăm la fiecare build cu Syft și o verificăm cu Grype, ca la apariția unui CVE nou să știi în câteva minute dacă te afectează și în ce versiune livrată.
SAST citește codul și prinde clase de erori înainte de deploy, pe fiecare pull request. DAST atacă aplicația pornită și prinde ce apare doar la rulare: configurare, sesiuni, integrări. Le folosim împreună, SAST în CI și DAST pe mediul de test înainte de lansare.
Cu scanare la commit prin pre-commit și gitleaks, plus o trecere pe tot istoricul, pentru că un secret vechi rămâne valabil. Cheile găsite se rotesc, nu doar se șterg din cod. Secretele stau în variabile de mediu, în SOPS sau într-un seif, nu în fișiere versionate.
La fiecare build: SBOM, comparație cu bazele de vulnerabilități și prioritizare pe expunere reală. Adăugăm verificarea numelor, ca să nu instalezi un pachet inventat de un model și înregistrat de altcineva, și blocăm actualizările automate netestate în producție.
Cere securizarea pipeline-ului din panoul de client: SAST, secrete, SBOM, imagini semnate și gate-uri calibrate pe ritmul echipei tale.