User Tools

Site Tools


secure-low-level-programming:capitole:11-programare-sigura

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
secure-low-level-programming:capitole:11-programare-sigura [2018/12/20 20:06]
razvan [Exercițiu 2]
secure-low-level-programming:capitole:11-programare-sigura [2018/12/21 10:44] (current)
razvan
Line 28: Line 28:
  
 ===== Exerciții ===== ===== Exerciții =====
 +
 +/*
  
 Arhiva de suport pentru exerciții se găsește [[http://​koala.cs.pub.ro/​training/​res/​secure-low-level-programming/​arc/​11-programare-sigura-skel.zip|aici]]. ​ Descărcați arhiva și apoi decomprimați-o folosind comenzile:<​code>​ Arhiva de suport pentru exerciții se găsește [[http://​koala.cs.pub.ro/​training/​res/​secure-low-level-programming/​arc/​11-programare-sigura-skel.zip|aici]]. ​ Descărcați arhiva și apoi decomprimați-o folosind comenzile:<​code>​
Line 34: Line 36:
 cd 11-programare-sigura-skel/​ cd 11-programare-sigura-skel/​
 </​code>​ </​code>​
 +
 +*/
  
 ==== Reguli Secure Coding ==== ==== Reguli Secure Coding ====
Line 46: Line 50:
  
 Apoi accesați subdirectorul ''​vulnerable/''​ din repository și parcurgeți fișierele cod sursă C sau C++ de acolo. Apoi accesați subdirectorul ''​vulnerable/''​ din repository și parcurgeți fișierele cod sursă C sau C++ de acolo.
-==== Exercițiu 3 ====+==== Alte exemple nesigure ​====
  
-Accesăm directorul ''​lalala/''​ din arhiva ​de suport.+Parcurgeți exemplele ​de cod nesigure din [[https://​github.com/​deadbits/​InsecureProgramming|acest repository]]. Pentru a clona repository-ul folosiți comanda 
 +<​code>​ 
 +git clone https://​github.com/​deadbits/​InsecureProgramming 
 +</​code>​
  
-TODO+Parcurgeți **toate** fișierele cod sursă C din rădăcina repository-ului și identificați,​ rapid, bug-ul/​vulnerabilitatea și ce problemă cauzează (și, dacă e cazul, cum poate fi exploatată).
  
 +==== Bad vs. Good ====
  
 +Accesați [[https://​samate.nist.gov/​SRD/​testsuite.php|NIST Software Assurance Reference Dataset Project]].
 +
 +Descărcați:​
 +  * suita //C Test Suite for Source Code Analyzer v2 - Vulnerable//​ (Test Suite ID 100)
 +  * suita //C Test Suite for Source Code Analyzer v2 - Secure// (Test Suite ID 101)
 +
 +Alegeți cel puțin 5 exemple din suita vulnerabilă și identificați vulnerabilitatea. Gândiți soluția pentru acea vulnerabilitate și vedeți dacă este similară celei din suita sigură. În suita sigură identificatorul exemplului este mai mare cu 1 față de cel din suita vulnerabilă. De exemplu pentru exemplul ''​043''​ din suita vulnerabilă,​ identificatorul este ''​044''​ ca mai jos:
 +<​code>​
 +cat 100/​000/​149/​043/​Format_string_problem-bad.c
 +cat 101/​000/​149/​044/​Format_string_problem-good.c
 +</​code>​
secure-low-level-programming/capitole/11-programare-sigura.1545329218.txt.gz · Last modified: 2018/12/20 20:06 by razvan