This is an old revision of the document!
Atunci când scriem programe, ținând cont de problemele care pot să apară, folosim tehnici de programare sigură (secure programming) sau programare defensivă (defensive programming). Aceasta înseamnă să evităm apariția de bug-uri și vulnerabilități prin folosirea corespunzătoare a tipurilor de date, a apelurilor de funcții și prin verificarea atentă a intrării într-un program. Dezvoltatorul va trata intrarea, codul refolosit, bibliotecile ca fiind nesigure și surse de bug-uri și atacuri și va scrie cod în mod corespunzător.
Arhiva de suport pentru exerciții se găsește aici. Descărcați arhiva și apoi decomprimați-o folosind comenzile:
wget http://koala.cs.pub.ro/training/res/secure-low-level-programming/arc/11-programare-sigura-skel.zip unzip 11-programare-sigura-skel.zip cd 11-programare-sigura-skel/
Parcurgem două reguli din SEI CERT C Coding Standard și două reguli din SEI CERT C++ Coding Standard. Identificați problemele pe care le rezolvă și indicațiile de rezolvare a acestora.
Parcurgeți exemplele de cod nesigure din subdirectorul vulnerable/
din acest repository. Pentru a clona repository-ul folosiți comanda
git clone https://github.com/patricia-gallardo/insecure-coding-examples
Apoi accesați subdirectorul vulnerable/
din repository și parcurgeți fișierele cod sursă C sau C++ de acolo.
Accesăm directorul lalala/
din arhiva de suport.
TODO