User Tools

Site Tools


secure-low-level-programming:capitole:10-controlul-accesului

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:10-controlul-accesului [2018/12/20 22:07]
razvan
secure-low-level-programming:capitole:10-controlul-accesului [2018/12/21 16:38] (current)
razvan [setuid]
Line 36: Line 36:
 </​code>​ </​code>​
  
-Acum rulați din nou programul și observați că reușește deschiderea unui fișier, câtă vreme //effective user id-ul// (''​euid''​) este ''​1000''​.+Acum rulați din nou programul și observați că reușește deschiderea unui fișier, câtă vreme //effective user id-ul// (''​euid''​) este ''​0''​. În momentul în care //effective user id-ul// (''​euid''​) este ''​1000''​, operația eșuează.
  
 ==== cap ==== ==== cap ====
Line 42: Line 42:
 Accesăm directorul ''​cap/''​ din arhiva de suport. Accesăm directorul ''​cap/''​ din arhiva de suport.
  
-Urmăriți conținutul fișierului ''​prog.c''​ și rulați executabilul ''​prog''​. Programul încearcă deschiderea a două fișiere privilegiate. În primă instanța va eșua. +<​note ​important
- +Va trebui să instalați pachetul ''​libcap-dev''​ folosind comanda
-<​note ​tip+
-Dacă doriți să recompilați programul ''​prog.c''​ în fișierul executabil ''​prog''​ va trebui să instalați pachetul ''​libcap-dev''​ folosind comanda+
 <​code>​ <​code>​
 sudo apt install libcap-dev sudo apt install libcap-dev
 </​code>​ </​code>​
 </​note>​ </​note>​
 +
 +Urmăriți conținutul fișierului ''​prog.c''​ și rulați executabilul ''​prog''​. Programul încearcă deschiderea a două fișiere privilegiate. În primă instanța va eșua.
  
 Apoi oferiți executabilului ''​prog''​ capabilitatea ''​CAP_DAC_READ_SEARCH''​ folosind comanda: Apoi oferiți executabilului ''​prog''​ capabilitatea ''​CAP_DAC_READ_SEARCH''​ folosind comanda:
Line 67: Line 67:
 sudo setcap cap_dac_read_search-ep ./prog sudo setcap cap_dac_read_search-ep ./prog
 </​code>​ </​code>​
 +</​note>​
 ==== seccomp ==== ==== seccomp ====
  
 Accesăm directorul ''​seccomp/''​ din arhiva de suport. Accesăm directorul ''​seccomp/''​ din arhiva de suport.
  
-Urmăriți conținutul fișierului ''​prog.c''​ și rulați executabilul ''​prog''​. Programul încearcă deschiderea a două fișiere privilegiate. ​În primă instanța ​va eșua.+<note important>​ 
 +Va trebui să instalați pachetul ''​libseccomp-dev''​ folosind comanda 
 +<​code>​ 
 +sudo apt install libseccomp-dev 
 +</​code>​ 
 +</​note>​ 
 + 
 +Urmăriți conținutul fișierului ''​prog.c''​ și rulați executabilul ''​prog''​. Programul încearcă deschiderea a două fișiere privilegiate. ​Deschiderea primului fișier va reuși, în vreme ce deschiderea celui de-al doilea fișier ​va eșua dată fiind folosirea sandboxing-ului cu ajutorul ''​seccomp''​.
secure-low-level-programming/capitole/10-controlul-accesului.1545336444.txt.gz · Last modified: 2018/12/20 22:07 by razvan