User Tools

Site Tools


secure-low-level-programming:capitole:09-utilitare-de-analiza-cod

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:09-utilitare-de-analiza-cod [2018/12/20 17:06]
razvan [Auditare cod]
secure-low-level-programming:capitole:09-utilitare-de-analiza-cod [2018/12/21 14:14] (current)
razvan [Symbolic Execution]
Line 33: Line 33:
 sudo apt install clang cppcheck splint valgrind sudo apt install clang cppcheck splint valgrind
 </​code>​ </​code>​
 +
 ==== Auditare cod ==== ==== Auditare cod ====
  
Line 47: Line 48:
 scan-build make scan-build make
 </​code>​ </​code>​
 +
 +<note tip>
 +Ignorați erori legate de fișiere incluse în rezultatul rulării comenzii ''​cppcheck''​.
 +</​note>​
  
 Foarte probabil veți vedea că utilitarele nu depistează multe erori. Multe erori nu pot fi depistate cu utilitare de analiză, ci mai degrabă de un observator uman. Foarte probabil veți vedea că utilitarele nu depistează multe erori. Multe erori nu pot fi depistate cu utilitare de analiză, ci mai degrabă de un observator uman.
Line 86: Line 91:
  
 Urmăriți indicațiile de [[https://​github.com/​angr/​angr-doc/​blob/​master/​INSTALL.md#​installing-angr|aici]] pentru instalarea Angr. Urmăriți indicațiile de [[https://​github.com/​angr/​angr-doc/​blob/​master/​INSTALL.md#​installing-angr|aici]] pentru instalarea Angr.
 +
 +<note important>​
 +Pe versiunea de Ubuntu din sistemele din sala PR708 nu funcționează comanda ''​mkvirtualenv''​. Folosiți următoarele două comenzi pentru a crea un mediu virtual în care să instalați și rulați ''​angr'':​
 +<​code>​
 +virtualenv angr
 +cd angr
 +source ./​bin/​activate
 +</​code>​
 +
 +Acum puteți install ''​angr''​ folosind comanda ''​pip''​ așa cum e indicat în [[https://​github.com/​angr/​angr-doc/​blob/​master/​INSTALL.md#​installing-angr|documentație]].
 +
 +Dacă doriți să părăsiți mediul virtualenv folosiți comanda
 +<​code>​
 +deactivate
 +</​code>​
 +</​note>​
  
 Clonați repository-ul de exemple Angr de [[https://​github.com/​angr/​angr-doc|aici]] folosind coamnda Clonați repository-ul de exemple Angr de [[https://​github.com/​angr/​angr-doc|aici]] folosind coamnda
Line 91: Line 112:
 git clone https://​github.com/​angr/​angr-doc git clone https://​github.com/​angr/​angr-doc
 </​code>​ </​code>​
 +În urma comenzii de mai sus se creează directorul ''​angr-doc/''​.
 +
 +Testați exemplul din ''​angr-doc/​examples/​strcpy_find''​ din exemplu descris și [[https://​docs.angr.io/​examples#​beginner-vulnerability-discovery-example-strcpy_find|aici]] prin rularea comenzii:
 +<​code>​
 +python solve.py
 +</​code>​
 +Scriptul Python va "​exploata"​ executabilul ''​strcpy_find''​ folosind execuție simbolică și va obține parola cerută. Parcurgeți scriptul ''​solve.py''​ pentru o primă perspectivă asupra Angr. Nu e nevoie să înțelegeți,​ doar să știți că există.
  
-Testați exemplul din ''​examples/​strcpy_find''​ din repository-ul clonat, exemplu descris și [[https://​docs.angr.io/​examples#​beginner-vulnerability-discovery-example-strcpy_find|aici]]. 
secure-low-level-programming/capitole/09-utilitare-de-analiza-cod.1545318377.txt.gz · Last modified: 2018/12/20 17:06 by razvan