Cursul 11 - Elemente de...

11
Cursul 11 Elemente de securitate Utilizarea Sistemelor de Operare (USO) 11 decembrie 2017 Departamentul de Calculatoare CSE Dep Cursul 11, Elemente de securitate 1/48 Moto The only truly secure system is one that is powered off, cast in a block of concrete and sealed in a lead-lined room with armed guards - and even then I have my doubts. Eugene H. Spafford CSE Dep Cursul 11, Elemente de securitate 2/48 Shell Scripting ltre de text comenzi parametrizate operatorul | (pipe) expandare: $(...) cat, tac, rev, head, tail, nl cut, tr, grep, sort, uniq paste, join, fmt, column sed, awk zip, tar touch, mkdir, rm, cp, mv gcc, apt-get install le, stat one liners shell scripts CSE Dep Cursul 11, Elemente de securitate 3/48 Shell scripting (2) http://fynnexp.com/13249-funny-cmd-scripts.html CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes Notes

Transcript of Cursul 11 - Elemente de...

Page 1: Cursul 11 - Elemente de securitateelf.cs.pub.ro/uso/res/cursuri/curs-11/curs-11-handout-4on1-notes.pdf · CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes ... set

Cursul 11Elemente de securitate

Utilizarea Sistemelor de Operare (USO)11 decembrie 2017

Departamentul de Calculatoare

CSE Dep Cursul 11, Elemente de securitate 1/48

Moto

The only truly secure system is one that is powered off, cast in ablock of concrete and sealed in a lead-lined room with armed

guards - and even then I have my doubts.

Eugene H. Spafford

CSE Dep Cursul 11, Elemente de securitate 2/48

Shell Scripting

filtre de text comenzi parametrizateoperatorul | (pipe) expandare: $(...)

cat, tac, rev, head, tail, nl

cut, tr, grep, sort, uniq

paste, join, fmt, column

sed, awk

zip, tar

touch, mkdir, rm, cp, mv

gcc, apt-get install

file, stat

one liners

shell scripts

CSE Dep Cursul 11, Elemente de securitate 3/48

Shell scripting (2)

http://fynnexp.com/13249-funny-cmd-scripts.html

CSE Dep Cursul 11, Elemente de securitate 4/48

Notes

Notes

Notes

Notes

Page 2: Cursul 11 - Elemente de securitateelf.cs.pub.ro/uso/res/cursuri/curs-11/curs-11-handout-4on1-notes.pdf · CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes ... set

Suport curs

I Suport (Introducere ın sisteme de operare)I Capitolul 10 – Elemente de securitate

CSE Dep Cursul 11, Elemente de securitate 5/48

In aceasta saptamana la USO

I laboratorul 11 (,,Considerente hardware”) are loc ın aceastasaptamana

I tema 4 (suplimentara) va fi anunt, ata ın aceasta saptamanaI ıntrebat, i, ıntrebat, i, ıntrebat, iI folosit, i forumulI ajutat, i colegii pe forumI https://ocw.cs.pub.ro/courses/uso/regulament

I sect, iunea ,,Recomandari de comunicare electronica”I sect, iunea ,,Realizarea temelor”

I slide-urile cursului 12: ,,Considerente Hardware” vor fipublicate dupa 3 ianuarie 2018

I Quest-ul final WoUSO ıncepe sambata, 16 decembrie 2017I mas, ina virtualaI 33 de niveluri hands-on

I Vacant, a placuta!

CSE Dep Cursul 11, Elemente de securitate 6/48

Cateva ıntamplari

I 6.46 million LinkedIn passwords leaked online (June 2012)I http://www.zdnet.com/article/6-46-million-linkedin-passwords-leaked-online/

I $12,000 computer (Project Erebus v2.5), 8 AMD Radeon HD7970 GPU cards

(August 2012)I are nevoie de 12 ore pentru a folosi brute force pe ıntreg spat,iul de parole de 8 caractere printabileI http://arstechnica.com/security/2012/08/passwords-under-assault/

I NSA infiltrates links to Yahoo, Google data centers worldwide, Snowden

documents say (October 2013)I http://www.washingtonpost.com/world/national-security/

nsa-infiltrates-links-to-yahoo-google-data-centers-worldwide-snowden-documents-say/

2013/10/30/e51d661e-4166-11e3-8b74-d89d714ca4dd_story.html

I The Heartbleed Bug (April 2014)I vulnerabilitate ın biblioteca OpenSSL, cea mai raspandita pentru comunicare criptateI http://heartbleed.com/

I Celebrity photo leak (September 2014)I ,,Security researcher reported brute force attacks were possible in March.”I http://arstechnica.com/security/2014/09/

apple-knew-of-icloud-api-weakness-months-before-celeb-photo-leak-broke/

CSE Dep Cursul 11, Elemente de securitate 8/48

S, i alte ıntamplari

I Los Angeles Hospital Hit (February 2016)I rascumparare platita pentru recuperarea conturilor de email s, i a informat,iilor pacient,ilorI https://www.theguardian.com/technology/2016/feb/17/

los-angeles-hospital-hacked-ransom-bitcoin-hollywood-presbyterian-medical-center

I IRS Security Breach (February 2016)I accesarea datelor personale a peste 700 000 de americaniI http://www.usatoday.com/story/money/2016/02/26/

cyber-hack-gained-access-more-than-700000-irs-accounts/80992822/

I Mossack Fonseca Leak (May 2016)I publicarea a 2.6 TB de documente privateI http://www.bbc.com/news/world-latin-america-36232142

I Banner Health (August 2016)I pierderea datelor personale a 3.7 milioane de pacient,iI http://www.securityweek.com/37-million-exposed-banner-health-breach

I Bitfinex Heist (August 2016)I furtul a echivalentului de 72 milioane USDI http://www.reuters.com/article/us-bitfinex-hacked-hongkong-idUSKCN10E0KP

I suma medie cererilor de rascumparare: 679$ (fat, a de 342$ ın 2015)

CSE Dep Cursul 11, Elemente de securitate 9/48

Notes

Notes

Notes

Notes

Page 3: Cursul 11 - Elemente de securitateelf.cs.pub.ro/uso/res/cursuri/curs-11/curs-11-handout-4on1-notes.pdf · CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes ... set

Problematica securitat, ii

I protect, ia informat, iilor pret, ioase (companii, institut, ii) sauprivate (persoane)

I Ce este un sistem sigur?I resursele sale sunt utilizate s, i accesate ın orice ımprejurare as, a

cum se dores, te

I Se poate obt, ine un sistem sigur?I Da. Complet izolat de lumea exterioara.I nu este util, nici flexibil

I Ce ınseamna securizarea unui sistem de calcul?I folosirea de metode de protect, ie suficient de puterniceI un potent, ial atacator va fi descurajatI compromiterea sistemului este greu de realizat

I Securitatea este un proces nu o finalitate

CSE Dep Cursul 11, Elemente de securitate 10/48

Cerint, ele pentru securitate (IT)

I IT security, information security

I confident, ialitate

I protejarea resurselor

I auditiarea activitat, ilor (monitorizare)

I integritate

I autenticitate

I disponibilitate

I rulare conform as, teptarilor/standardelor (compliance)

I minimizarea riscurilor

CSE Dep Cursul 11, Elemente de securitate 11/48

Roluri s, i privilegii

I agent, ii sunt entitat, ile active ıntr-un sistem: persoane, procese,departamente

I obiectele sunt resursele

I agent, ii au roluri, fiecare rol are anumite privilegii

I funct, ie de roluri, un agent poate executa anumite act, iuni s, ipoate avea anumite forme de acces la obiecte

CSE Dep Cursul 11, Elemente de securitate 12/48

Principii ın securitate

I principiul celui mai mic privilegiu (least privilege)

I principiul separarii privilegiilor (privilege separation)

I security through obscurity vs. security by design

I cea mai slaba verigaI simplitate (feature creep)

I Bruce Schneier: Complexity is the worst enemy of security.

I defense in depth

I securitate vs. utilizabilitate

CSE Dep Cursul 11, Elemente de securitate 13/48

Notes

Notes

Notes

Notes

Page 4: Cursul 11 - Elemente de securitateelf.cs.pub.ro/uso/res/cursuri/curs-11/curs-11-handout-4on1-notes.pdf · CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes ... set

Niveluri de securitate

I la nivel de persoanaI utilizatorii sunt ales, i cu grijaI educarea utilizatorilor

I la nivel fizicI protect, ia ıncaperilor ce cont, in sistemele de calcul

I la nivelul sistemului de operareI securizarea accesului (parole)I protect, ia resurselor SO (memorie, fis, iere)

I la nivelul aplicat, ieiI autentificarea ın cadrul aplicat, ieiI stabilirea rolurilorI criptarea datelorI politici de acces la resursele aplicat, iei

I la nivelul ret, eleiI securizarea accesului de la distant, aI filtrarea pachetelor de compromitere a ret, elei

CSE Dep Cursul 11, Elemente de securitate 14/48

Resurse utile pentru securitate aplicata

I OWASP (Open Web Application Security Project):https://www.owasp.org/index.php/Main_Page

I wargames and challenge sitesI http://www.wechall.net/I http://overthewire.org/wargames/I http://captf.com/practice-ctf/I https://w3challs.com/

I CTF (Capture the Flag) security contestsI https://ctftime.org/

I Stack ExchangeI http://security.stackexchange.com/I http://crypto.stackexchange.com/I http://reverseengineering.stackexchange.com/

CSE Dep Cursul 11, Elemente de securitate 15/48

Securitatea sistemului de operare

I sistem de operare sigur: resursele acestuia sunt accesate ınmod valid

I securitatea memoriei s, i a aplicat, iilorI fiecare proces este izolat, nu poate scrie ın memoria altui

procesI fluxul de lucru al aplicat, iei nu este deturnat

I securitatea accesuluiI gestiunea parolelorI privilegii pentru utilizatoriI autentificare, autorizare, controlul accesuluiI limitari: cate accese simultane, cate procese pornite, cat spat, iu

pe disc ocupat

I securitatea sistemului de fis, iereI permisiuni de acces la fis, iereI izolarea accesului doar la anumite part, i din sistemul de fis, iere

CSE Dep Cursul 11, Elemente de securitate 17/48

Securitatea sistemului de fis, iere

I aspecte importanteI directorul home al fiecarui utilizator

I drepturi deplineI utilizatorul poate sau nu permite accesul altor utilizator

I doar utilizatorul privilegiat are acces la anumite intrariI fis, iere de configurare, programe executabile

I Cum se implementeaza securitatea fis, ierelor?I permisiuni de acces (sau liste de acces)

I pentru fiecare intrare se precizeaza drepturile utilizatorilorI forma redusa pe Unix (user, group, others)

CSE Dep Cursul 11, Elemente de securitate 18/48

Notes

Notes

Notes

Notes

Page 5: Cursul 11 - Elemente de securitateelf.cs.pub.ro/uso/res/cursuri/curs-11/curs-11-handout-4on1-notes.pdf · CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes ... set

umask

I restrict, ia drepturilor de creare a intrarilor ın sistemul de fis, iere

I valori tipice pentru umask: 022, 027, 077I drepturi de creare implicite

I 666 pentru fis, ierI 777 pentru director

I drepturi de creare efectiveI S, I logic ıntre permisiunile implicite s, i masca inversata

CSE Dep Cursul 11, Elemente de securitate 19/48

Securitatea accesului

I autentificareI permiterea accesului unui utilizator (numit s, i agent sau

subiect) la sistem

I Cand este un utilizator autentic?I poseda o unitate de identificare (cheie, card)I poseda un nume de utilizator s, i o parolaI poseda un atribut de utilizator (amprenta, retina, semnatura)

CSE Dep Cursul 11, Elemente de securitate 20/48

Contul privilegiat

I controlul absolut al sistemuluiI obt, inerea contului de superuser ınseamna spargerea sistemului

I trebuie folosit numai atunci cand este nevoieI pentru operat, ii obis, nuite, folosit, i contul neprivilegiatI o buna parte din atacurile pe Windows se bazeaza pe faptul ca

utilizatorii folosesc numai contul Administrator

I sudoI permite unui utilizator obis, nuit (dar de ıncredere) rularea unui

set restrans de comenzi cu privilegii de rootI o forma de privilege separation

CSE Dep Cursul 11, Elemente de securitate 21/48

Autentificare, autorizare, controlul accesului

I autentificare (authentication)I permiterea utilizatorului ın sistem pe baza credent, ialelor

(parola, semnatura biometrica, certificat digital etc.)

I autorizare (authorization)I acordarea de drepturi de acces la resurse pentru utilizator

I controlul accesului (access control)I verificarea drepturilor de acces la resurse; se permite sau nu se

permite accesul

CSE Dep Cursul 11, Elemente de securitate 22/48

Notes

Notes

Notes

Notes

Page 6: Cursul 11 - Elemente de securitateelf.cs.pub.ro/uso/res/cursuri/curs-11/curs-11-handout-4on1-notes.pdf · CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes ... set

Parole

I forma de autentificare (username + password)I se compara parola introdusa cu cea stocata de sistemI daca cele doua coincid se permite accesul

I modul echo off sau ,,cu stelut, e”I ımpiedicarea shoulder surfing

I neajunsurile folosirii parolelorI pastrarea secreta a parolei

I sticky-note care este lipit pe monitorI stocata ın telefonul mobil

I spargerea paroleiI transferul parolei de la un utilizator autorizat la unul

neautorizat

CSE Dep Cursul 11, Elemente de securitate 24/48

Password Cracking

http://arstechnica.com/security/2012/08/passwords-under-assault/

I Project Erebus v2.5

I AMD Radeon HD7970: 8.2 billion password combinations each second

I 8xAMD Radeon HD7970: 12 hours to brute force entire keyspace for anyeight-character passwords (upper- or lower-case letter, digits or symbols)

CSE Dep Cursul 11, Elemente de securitate 25/48

Spargerea unei parole

I guessing

I brute force

I dictionary attack

I hybrid attack : dict, ionar s, i modificari uzuale (a devine 4 etc.)

I social engineeringI John the Ripper – http://openwall.com/john/

I dict, ionare (wordlist)

CSE Dep Cursul 11, Elemente de securitate 26/48

Protect, ie la spargerea parolelor

I politica de alegere a parolelorI minim 10 caractere, atat lower case cat s, i upper caseI cel put, in un caracter special sau numericI nu trebuie sa fie nume de persoane sau cuvinte din dict, ionar

usor de ret, inut

I utilizarea parolelor generate aleator de sistemI pwgen

I verificarea periodica a parolelor utilizatorilor

I password aging : schimbarea parolei dupa o anumita perioada

I folosirea de passphrase-uri: stong bitter whiteboard mule

I passphrase nepotrivit: One does not simply walk into Mordor– fraza celebra, us, or de ghicit

CSE Dep Cursul 11, Elemente de securitate 27/48

Notes

Notes

Notes

Notes

Page 7: Cursul 11 - Elemente de securitateelf.cs.pub.ro/uso/res/cursuri/curs-11/curs-11-handout-4on1-notes.pdf · CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes ... set

Passwords vs. Passphrases

http://xkcd.com/936/

CSE Dep Cursul 11, Elemente de securitate 28/48

Parole ın Unix

I la ınceput parolele se pastrau criptat ın /etc/passwd

I fis, ierul /etc/passwd cont, ine s, i alte informat, iiI numele utilizatorilorI directorul homeI shell-ul folosit

I multe programe au nevoie de informat, iile de mai susI fis, ierul /etc/passwd este citibil de tot, i utilizatorii

Drepturi de acces pe /etc/passwd

razvan@anaconda:~/junk$ ls -l /etc/passwd

-rw-r--r-- 1 root root 2147 Nov 4 15:35 /etc/passwd

I parola criptata este vizibilaI potent, ial risc de spargere prin ıncercari (brute force)

CSE Dep Cursul 11, Elemente de securitate 29/48

Parole ın Unix (cont.)

I fis, ierul /etc/shadow – accesibil numai de rootI parola ar putea fi sparta prin ıncercari de login repetate

I timeout ıntre ıncercarile de autentificare

/etc/passwd

razvan@anaconda:~/junk$ cat /etc/passwd | grep guest

guest:x:1001:1001:Guest,EF 303,,,Test:/home/guest:/bin/bash

/etc/shadow

razvan@anaconda:~/junk$ cat /etc/shadow | grep guest

cat: /etc/shadow: Permission denied

anaconda:/home/razvan/junk# cat /etc/shadow | grep guest

guest:$1$jv4hP2au$BSrUDS0J7LhJv8PrCFltU/:13124:0:99999:7:::

CSE Dep Cursul 11, Elemente de securitate 30/48

Validarea autentificarii ın Unix

1. se introduce username-ul

2. se introduce parola

3. se localizeaza username-ul ın sistem; daca nu exista, eroare

4. se aplica algoritmul de criptare peste parola introdusaI este un algoritm one-way: doar criptare, nu poate fi decriptatI pentru brute force, se genereaza parole s, i se cripteaza

5. se verifica s, irul criptat obt, inut mai sus cu parola criptata dinfis, ierul /etc/shadow

6. daca cele doua s, iruri (criptate) corespund, utilizatorul esteadmis ın sistem; altfel, eroare

CSE Dep Cursul 11, Elemente de securitate 31/48

Notes

Notes

Notes

Notes

Page 8: Cursul 11 - Elemente de securitateelf.cs.pub.ro/uso/res/cursuri/curs-11/curs-11-handout-4on1-notes.pdf · CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes ... set

Alternative la parole

I biometrice (amprenta, retina)

I authentication tokens (precum cele folosita la online banking)

I two-factor : parola + SMS, parola + token

I OAuth: folosirea contului de Google, Facebook, Twitter pealte site-uri fara ca parola sa fie transmisa

CSE Dep Cursul 11, Elemente de securitate 32/48

Criptografie

I studiul comunicarii sigure

I criptare, hashing, criptanaliza

I utilizare: criptare (comunicare sigura), autentificare,semnaturi digitale

CSE Dep Cursul 11, Elemente de securitate 34/48

Criptare s, i decriptare

I criptarea este procesul de transformare a unui text clar (plaintext) ıntr-un text cifrat (ciphertext)

I decriptarea este procesul inversI criptarea/decriptarea necesita

I un algoritmI o cheieI date/mesaj

I Ce criptam?I date de orice felI trafic de ret, eaI sisteme de fis, iere/partit, ii

CSE Dep Cursul 11, Elemente de securitate 35/48

Criptare s, i decriptare (2)

CSE Dep Cursul 11, Elemente de securitate 36/48

Notes

Notes

Notes

Notes

Page 9: Cursul 11 - Elemente de securitateelf.cs.pub.ro/uso/res/cursuri/curs-11/curs-11-handout-4on1-notes.pdf · CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes ... set

Criptografie cu chei simetrice

I symmetric-key cryptography

I transmit, atorul s, i receptorul au aceeas, i cheie

I de avut ın vedere unde se stocheaza cheia

I rapida, implementare ın hardware

I standardul de criptare cu chei simetrice este algoritmul AES(Advanced Encryption Standard)

CSE Dep Cursul 11, Elemente de securitate 37/48

Criptare s, i decriptare cu chei simetrice

CSE Dep Cursul 11, Elemente de securitate 38/48

Criptografie cu chei asimetrice

I public-key cryptography

I o cheie este privata (secreta) s, i alta cheie este publica

I cele doua cheie sunt legate matematicI criptare cu cheia publica (orice poate cripta); decriptare cu

cheia privata (doar det, inatorul poate decripta)I ınceataI folosita doar ın fazele de init, iere a unei conexiuni pentru

stabilirea unei chei simetriceI folosita pentru autentificare: cine are cheia privata poate

decripta mesajul s, i garanta ca este utilizatorul ın cauza

I semnaturi digitaleI mesajul este trimis ın clar dar are atas, at o semnatura digitalaI doar cheia privata poate semna (doar det, inatorul)I cheia publica poate verifia semnatura (oricine)

I RSA, curbe eliptice

CSE Dep Cursul 11, Elemente de securitate 39/48

Criptare s, i decriptare cu chei publice

CSE Dep Cursul 11, Elemente de securitate 40/48

Notes

Notes

Notes

Notes

Page 10: Cursul 11 - Elemente de securitateelf.cs.pub.ro/uso/res/cursuri/curs-11/curs-11-handout-4on1-notes.pdf · CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes ... set

Semnare s, i verificare cu chei publice

CSE Dep Cursul 11, Elemente de securitate 41/48

Security Engineering

I Ross Anderson

I 2nd Edition, 2010

I prima edit, ie poate fi descarcata gratis

I o privire ın ansamblu a securitat, ii sistemelor s, i ret, elelor

I atacuri s, i aparare

I bogata ın povestiri reale

I us, or de citit

I cont, ine formalisme, dar insista pe aspecte practice

CSE Dep Cursul 11, Elemente de securitate 43/48

Bruce Schneier

http://en.wikipedia.org/wiki/File:Bruce_Schneier_1.jpg

I autorul mai multor cart, i de securitateI algoritmi de criptografieI Bruce Schneier on security (blog)

(http://www.schneier.com)I Bruce Schneier Facts

CSE Dep Cursul 11, Elemente de securitate 44/48

RSA

I numele de la fondatorii: Ron Rivest, Adi Shamir, Led Adleman

I infiint, ata ın 1982

I algoritmul de criptare cu chei publice RSA

I token-uri de autentificare (RSA SecurID security tokens)

I RSA Factoring Challenge

CSE Dep Cursul 11, Elemente de securitate 45/48

Notes

Notes

Notes

Notes

Page 11: Cursul 11 - Elemente de securitateelf.cs.pub.ro/uso/res/cursuri/curs-11/curs-11-handout-4on1-notes.pdf · CSE Dep Cursul 11, Elemente de securitate 4/48 Notes Notes Notes ... set

AES

I Advanced Encryption Standard

I adoptat de guvernul US ca standard de criptare ın noiembrie2001

I init, ial denumit Rijndael dupa numele unuia dintre inventatori

I ınlocuies, te algoritmul DES (Data Encryption Standard) din1977

I procesul de alegere a avut loc ıntre 1997 s, i 2000 – destinatcomunitat, ii criptografice

I init, ial ales, i 15 algoritmi, apoi 5 finalis, ti, apoi doar 1 (Rijndael)

CSE Dep Cursul 11, Elemente de securitate 46/48

Cuvinte cheie

I securitate

I privilegii

I principii de securitate

I agent, i, obiecte

I umask

I autentificare

I autorizare

I controlul accesului

I root

I sudo

I parole

I password cracking

I passphrase

I /etc/passwd

I /etc/shadow

I criptografie

I criptare, decriptare

I plain text, ciphertext

I chei simetrice

I chei asimetrice

I semnatura digitala

I semnare, verificare

CSE Dep Cursul 11, Elemente de securitate 47/48

Resurse utile

I http://www.unixtools.com/security.html

I http://insecure.org/

I http://www.linuxsecurity.com/

I http://www.schneierfacts.com/

CSE Dep Cursul 11, Elemente de securitate 48/48

Notes

Notes

Notes

Notes