Istoricul mecanismelor Microsoft Windows [303451]

Introducere

Deoarece securitatea unui sistem/[anonimizat]-o rețea, inclusiv al celor de tip workstation (client) numite în literatura de specialitate ”endpoints” [anonimizat]. Chiar și rețelele izolate sunt la fel de sigure ca și cel mai puțin securizat sistem/echipament din compunere.

[anonimizat] (breșele de securitate raportate) din ultimii ani au avut loc asupra unor endpoints (stații de lucru) configurate necorespunzător sau implicit și cu utilizatori fără pregătire pe linia securității cibernetice. [anonimizat], a fost de ajuns un click pe un link credibil sau către un subiect de interes (de fapt către un server cu Exploit Kits) [anonimizat] (malvertising), pentru ca sistemul să fie compromis.

[anonimizat], [anonimizat], astfel, un mare interval de timp favorabil atacatorilor pentru a le exploata.

Aplicațiile care provoacă cea mai mare ”durere de cap” pentru IT ( și în acest an) sunt Adobe Shockwave (flash player) urmat de Oracle Java și apoi de browsere (IE, Chrome). Instalarea lor in sistem mărește “suprafata de atac” a [anonimizat], poate fi exploatat din această direcție. Sistemul de operare Windows a [anonimizat] a făcut chiar o schimbare în strategia de implementare a [anonimizat], după modelul Apple.

Problemele pe linia securizării sistemelor informatice nu mai au o rezolvare permanentă ci rezolvarea este de scurtă durată. [anonimizat], capabile chiar să folosească inteligența artificială pentru a putea detecta în timp ”aproape real” un atac. [anonimizat]-[anonimizat] (EDR), [anonimizat], un analist specialist în selectarea evenimentelor ”true positives” să alerteze și să ia măsuri. Dacă lăsăm un echipament să facă această operațiune (IPS) acesta fie va opri tot traficul recunoscut prin prisma definițiilor ca și malițios perturbând comunicații benigne fie nu va vedea nimic suspicios. Malware-ul actual cu capabilități de decodare și asamblare pe gazdă (”on host”) și care își criptează apoi traficul și-l [anonimizat] ”normal” al aplicațiilor. Majoritatea soluțiilor de tip Security information and event management/[anonimizat] /IR, [anonimizat]-a șters și urmele.

Armarea mecanismelor de securitate implicite ale sistemului (și nu numai) pot contribui în mică sau mare măsură la eșecul unui atac cibernetic. La fel cum alarma sperie un hoț, așa și mecanismele de securitate implementate local îl vor face pe atacator deja infiltrat într-o rețea, să facă mai multă ”gălăgie” în log-urile echipamentelor și mecanismelor, care asigură securitatea rețelei pe modelul foilor de ceapă, îl vor face să greșească și să poată fi detectat, din dorința de a cartografia rețeaua sau a ataca și alte sisteme.

Capitolul 1 Istoricul implementării mecanismelor de securitate în sistemele de operare Windows

Istoricul mecanismelor Microsoft Windows

Microsoft Windows este numele unei serii de sisteme de operare care au fost introduse pe piață începând cu 20 noiembrie 1985, în forma versiunii 1.0, ca supliment la sistemul de operare MS-DOS, deoarece interfețele grafice erau din ce în ce mai apreciate de utilizatori.

Din cauză că a fost adoptat ca principal sistem de operare pe majoritatea calculatoarelor din lumea întreagă, acest sistem de operare a suferit și suferă atacuri cibernetice, lupta dintre dezvoltatorii de la Microsoft și atacatorii care încearcă (și uneori chiar reușesc) să-i găsească și să-i exploateze vulnerabilitățile, fiind aprigă. Ambele părți au fost foarte active în ultimii 15-20 de ani.

Figura 1.1 Istoricul versiunilor Windows

În trecut securitatea sistemelor nu a fost o problemă importantă, calculatoarele fiind operate, fie independent, fie ca parte dintr-o rețea locală închisă.

La sfârșitul anilor '90, lucrurile au început să se schimbe. Internetul a evoluat de la un domeniu relativ exclusiv, populat în mare parte de către un grup de elită format din angajații guvernamentali și mediul academic, la un domeniu global folosit, în prezent, pentru toate aspectele vieții cotidiene.

La începutul noului mileniu, Microsoft domina piața sistemelor de operare pentru computerele personale, dar a început să se confrunte cu o concurență de la Linux, care a fost considerat mai puțin ”prietenos”, dar mai sigur. Brusc toată lumea a vrut o ”plimbare” pe “Autostrada Informațiilor”; acest lucru a creat un teren propice (Wild Wild West), foarte atractiv pentru infractorii pricepuți din punct de vedere tehnic, precum și pentru hacker-ii adolescenți ”răutăcioși”, astfel încât au început să apară tot mai multe amenințări cibernetice sub formă de programe malițioase (viruși și viermi).

Standardizarea protocoalelor de comunicații și publicarea acestora către public a oferit o ”armă” celor pricepuți, ajutându-i să descopere slăbiciunile acestor protocoale.

Securitatea sitemelor de operare, inițial neimportantă, a devenit peste noapte o problemă foarte mare. Odată cu apariția Windows XP, Microsoft a devenit un furnizor de sistem de operare agreat, din punct de vedere al securității, și de către entitățile guvernamentale.

Implementarea de sisteme de operare care respectă standarde de securitate bine definite a ajutat instituțiile guvernamentale, corporațiile și utilizatorii să-și protejeze datele proprietare și personale stocate în sistemele informatice. Standardul actual de evaluare al sistemelor de operare, din punctul de vedere al securitatii furnizate, utilizat de către Statele Unite și multe alte țări, este Common Criteria (CC).

Conform ratingurilor de securitate implementate inițial de National Computer Security Center (NCSC) componentă a DoD, sistemele Microsoft Windows au obținut începând cu anul 1995 nivelul C2 (Controlled Access Protection – protecție prin acces controlat) care permite identificarea unică a utilizatorilor, accesul discreționar la resurse și auditare de securitate. Sistemele de operare Microsoft Windows îndeplinesc prin intermediul subsistemului de securitate și al componentelor aferente și două cerințe de nivel superior (B), obținut prin implementarea SAS (secure attention sequence) și cunoscut, in limbajul uzual, ca Ctrl+Alt+Delete, care nu permite unei aplicații malițioase să fure credențialele introduse de utilizatori și care prin managementul funcționalității rolurilor de utilizatori, separă atribuțiile administratorilor de cele ale operatorilor de backup/salvări de siguranță, sau de cel al utilizatorilor simpli.

Windows XP este, în prezent, unul dintre cele mai slabe sisteme de operare disponibil astăzi, din punctul de vedere al securității implicite. Folosirea în prezent în rețelele militare se poate face atât în rețele izolate fizic (air-gapped-networks) INTRANET, cât și în cele conectate la Internet doar după implementarea măsurilor de securitate în adâncime (SECURITY IN DEPTH) -politici de securitate stricte și mecanisme de protectie multinivel -toate actualizările de securitate până în 04.2014, antivirus, firewall, HIDS/Host Intrusion Prevention, NIDS/ Network Intrusion Prevention, proxy- care asigura atenuarea și eliminarea în proporție de 99% a vulnerabilitătilor implicite ale acestui SO.

Deoarece acest sistem de operare nu a mai primit actualizări de securitate din aprilie 2014 (end-of-lifetime-support) folosirea în continuare a acestui tip de SO în rețelele conectate la Internet și pe calculatoarele personale conectate la Internet este foarte riscantă, mai ales în combinație cu aplicațiile din topul vulnerabilităților – Flash shockwave și Java!

In lipsa unei configurații hardware minime și a unei licențe valide pentru upgrade-ul la o variantă superioară de SO (Windows 7 sau mai noi), este recomandată utilizarea unei distributii/versiuni de Linux pentru navigarea pe Internet!

Windows 7 a reprezentat versiunea perfecționată a SO Vista (criticat încă de la apariție de întreaga comunitate IT) și a reușit să păstreze o parte din facilitățile de securitate ale acestuia (de exemplu UAC – User Account Control– de fapt una din functionalitățile “deranjante” pentru utilizator, care aduce un plus valoare pe linia securității) dar și să aducă facilități noi .

Deasemenea Windows 7 conține și un instrument nou util pentru disaster recovery (Windows backup – instrument care fost ”reînviat” și pe Windows 10 prin care se pot efectua salvări de siguranță, foarte importante pentru utilizator, în contextul noilor amenințări la integritatea datelor utilizatorilor (Crypto-malware).

Ceea ce lipsește din punct de vedere al securității din Windows 7 este o soluție eficientă antimalware. Există, însă, o soluție antispyware integrată – Windows Defender- care devine soluție antimalware începând cu Windows 8.

În prezent, deoarece este cel mai răspândit sistem de operare de la Microsoft, atacatorii au dezvoltat/dezvoltă cele mai multe coduri malițioase/exploit pentru acest tip de sistem de operare.

Windows 8/8.1 este mai puțin predispus la infecții cu malware și alte amenințări de securitate, în sistemul de operare Windows 8/8.1 (mai ales versiunea pe 64 de biți) eliminându-se riscurile de exploatare a vulnerabilităților cunoscute și făcându-se dificilă dezvoltarea de noi forme de atac asupra acestui sistem de operare.

Sistemele Windows 8 și versiunile mai noi au implementate mecanisme superioare de protecție și detecție împotriva rootkits și bootkits (care vor fi prezentate succint în secțiunea următoare).

Pentru criptarea datelor confidențiale a fost dezvoltată și patentată încă de la Vista o tehnologie bazată pe criptarea asimetrică -BitLocker, în versiunile superioare (Windows 7,8). Acest mecanism de criptare bazat pe hardware (TPM) permite compatibilitatea si managementul dispozitivelor de stocare de mai multe tipuri și de diferite tehnologii, inclusiv al dispozitivelor pe USB (BitLockerToGo).

Cu Windows 10, Microsoft și-a dorit implementarea unui sistem care, pe lângă faptul că este versatil, putând fi utilizat pe mai multe platforme (inclusiv dispozitive mobile) are integrate mecanisme de securitate de ultimă generație.

Începând cu Windows 10 însă, administratorul pierde complet controlul de administrare asupra sistemului, cel puțin din punctul de vedere al managementului securității sistemului, actualizările de securitate efectuându-se forțat, pe modelul Apple. Chiar dacă administratorul reușește (intenționat sau neintenționat) să modifice securitatea sistemului, noile actualizări și mecanismele interne de scanare îl readuc în starea ”sigură”, din punctul de vedere al Microsoft.

Ce ar fi de reproșat acestui sistem este invadarea intimității utilizatorului, Microsoft colectând date cu caracter personal (prin Cortana, Bing, Live Tiles, varianta Preview avea chiar keylogger!), fără ca utilizatorul să-și dea acordul – de fapt acesta și-a dat acordul când a instalat sistemul de operare oferit gratuit de Microsoft (*).

Actualizările de securitate

Deoarece sistemele de operare ale calculatoarelor și programele de aplicații sunt atât de mari (din punct de vedere al liniilor de cod) acestea conțin, încă de la lansare în mod inevitabil, erori. Unele dintre aceste erori pot compromite securitatea sistemului informatic, de aceea Microsoft utilizează metoda numită patching prin care se corecteaza vulnerabilități minore/majore ale sistemului de operare.

Cele mai periculoase vulnerabilități sunt cele prin intermediul cărora poate fi rulat cod malițios, fără acordul utilizatorilor și care dă posibilitatea unui atacator informatic să poată prelua controlul asupra sistemului informatic (de exeplu Microsoft Server Service Relative Path Stack Corruption Vulnerability – smb_ms08_067_netapi, vulnerabilitate critică a Windows XP fără actualizari de securitate instalate!)

In mod implicit, sistemele de operare Windows execută procesul de actualizare software și de securitate, prin căutarea automată a actualizărilor folosind serviciul Windows Update, determinând utilizatorul să le instaleze (în Windows 10 controlul utilizatorului asupra deciziei de a instala sau nu o actualizare este limitat – actualizările sunt instalate implicit forțat pe sistemele utilizatorilor; excepție face varianta Enterprise care nu este gratuită -LTSB.). Distribuția actualizărilor de securitate mai poartă numele de “Patch Tuesday” (ele sunt diseminate a doua și eventual a patra marți din fiecare lună). Din perspectiva specialiștilor în securitate, procesul de creare și distribuție a actualizărilor care să acopere breșele de securitate ar trebui să țină pasul cu descoperirea și publicarea vulnerabilităților, nu cu o zi anume/cu o perioada. Cu toate acestea, atunci când sunt descoperite vulnerabilități critice exploatate activ pe internet -“in the wild”, Microsoft nu respectă regula de Marțea Actualizărilor și eliberează actualizări (dacă este posibil) în afara acestei reguli.

Vulnerabilitățile sistemelor de operare Windows sunt acoperite prin actualizări de securitate care au formatul MS(anul)-nr. Intern al actualizării de securitate din anul respectiv (ex. MS16-001 este primul patch de securitate din anul 2016).

Fiecare din aceste actualizări este specifică pentru acoperirea vulnerabilităților unui anumit tip de sistem de operare Microsoft, client sau server, sau unei aplicații proprietare (ex. suita OFFICE sau IE) și este sub forma unui pachet Windows(versiune SO)-KBxxxxxxx-x(64 sau 32).msu (XXXXXX – număr intern).

De exemplu, WindowsXP-KB958644-x86-ENU (MD5 hash B19776B2CAB9B09B8F037935AEA56F01) reprezintă patch-ul pentru ms08_067 pentru Windows XP SP3, aceeași vulnerabilitate fiind acoperită pe varianta de server 2003 SP2 cu WindowsServer2003-KB958644-x86-ENU ( MD5 hash 147A05A5F06B71FD41B6A08119E1FD6F).

In anul 2015 produsele Microsoft au avut un număr de 135 de actualizări de securitate, număr ușor în creștere față de anii anteriori (83 în 2012, 106 în 2013, 85 în 2014), în special datorită integrării Flash player în IE 10 începând cu Windows 8.

Microsoft a împărțit actualizările în două tipuri: de sistem și de securitate. Problema majoră o reprezintă actualizările de securitate, care deși acoperă eventualele vulnerabilități descoperite, au creeat deseori probleme din punct de vedere al funcționalității, uneori ducând chiar la probleme majore în funcționarea normală a sistemului, putând chiar provoca pagube financiare afacerilor. De aceea administratorii de sistem întârzie intenționat aplicarea lor generalizată pe toate sistemele, fiind indicată o testare prealabilă pentru a nu provoca eventuale disfuncționalități.

Incepând cu Windows 10, actualizările pot fi descărcate și de pe alte mașini cu Windows 10 (p2p networking).

Atacatorii sunt și ei la curent cu actualizările Microsoft din Marțea Actualizărilor – Patch Tuesday și folosesc tehnica ingineriei inverse (reverse engineering) pentru a dezvolta coduri malițioase pentru acele vulnerabilități pentru care sunt actualizările. Uneori acestea pot apărea în ziua următoare și poartă denumirea de “Exploit Wednesday” și pot deveni chiar vulnerabilități critice pentru utilizatorii care nu au ținut pasul cu actualizările. In perioada dintre testarea și aplicarea patch-urilor, sistemele Windows sunt vulnerabile la “Exploit Wednesday”, dar și la vulnerabilitățile (0 DAY VULNERABILITIES) pentru care nu există patch.

Există o perioadă de timp între lansarea unei noi variante de malware/codul malițios ”into the wild” și momentul în care semnătura poate fi integrată într-un pachet de actualizare sau un produs antivirus. Această perioada poartă denumirea de “0 day vulnerability”.

În această perioadă, malware-ul (codul malițios) se poate propaga și ataca sistemele neprotejate, exploatând vulnerabilitățile existente până când sistemele sunt stabilizate și semnăturile antivirus actualizate. Incepând cu Windows 8.1, odată cu integrarea în sistemul propriu a soluției proprietare antimalware – Windows Defender, odată cu Patch Tuesday, sunt oferite și actualizările pentru aceasta.

Pentru a verifica dacă avem actualizările de securitate la zi pe un sistem informatic putem folosi Microsoft Baseline Security Analyser .

Dacă se dorește actualizarea manuală a sistemelor, trebuie accesat Microsoft Security TechCenter și descărcate actualizările pentru fiecare tip de sistem și tip de aplicație software. La momentul actual nu mai există actualizari decât pentru versiunile de sisteme de operare client de la Windows Vista în sus iar pentru servere de la Windows server 2008 mai sus.

O situație din 2014 cu numărul de vulnerabilități ale principalelor sisteme de operare moderne raport arată implicarea echipei de securizare a Windows din ultimii ani (Security TechCenter – Microsoft Security Response Center) care în ultimii ani reușind să coboare în ierarhia celor mai vulnerabile sisteme sub sisteme consacrate din punct de vedere al securității (OS X, Linux kernel). MSRC publică semestrial ”Security Intelligence Report”/SIR propriu care conține “exploitation trends”. In raportul MICROSOFT SIR 19, o atenție deosebită este dată APT (atacurilor persistente) specifice campaniei definită de MPC – STRONTIUM (APT28, Sofacy) care a avut ca obiective inclusiv ținte guvernamentale din Romania.

In figura de mai jos pot fi observate vulnerabilitățile exploatate de atacatorii cibernetici în 2015 pentru a obține accesul la sistemele Windows. Așa cum observăm din acest raport, cele mai multe sunt exploatări de vulnerabilități de la alte entități (Java, Flash), dar și de pachete software uzuale (Office – Word), IE sau Mozilla Firefox ( de exemplu CVE-2015-1641/ MS15-033 constă într-un atac cu .rtf cu cod malițios sau CVE-2015-2424/MS15-7 constă în atac cu .doc și .ppt/.pps cu cod malițios).

Figura 1.2 Vulnerabilități exploatate în 2015

Ce care nu au aplicat actualizările din aceste buletine de securitate sunt posibile ținte! Se observă astfel tendința de a exploata vulnerabilitățile în general ”third party” ale Java, Flash sau Internet Explorer, în unui atac de tip ”inginerie sociala” cu descărcare atomată –drive-by-download – în urma unui click pe un link din browser către un site care conține cod malițios, sistemul informatic care nu are actualizările de securitate ”la zi” neavând nici o șansă. Instrumentele de livrare ale codurilor malițioase pentru browsere au fost automatizate, actorii rău intenționați folosind Exploit Kitt-uri (uneori puse la dispoziție contra cost –”malware-as-a-service”) care scanează automat și implementează atacul corespunzător broserului sau suplimentului vulnerabil activat (de ex. Flash Player).

Capitolul 2 – Tehnologii de securitate implementate pe sistemele informatice

Tehnologii hardware implementate pe sistemele Windows moderne cu implicații în securizarea sistemelor locale

UEFI (Unified Extensible Firmware Interface) este o interfață firmware standard pentru PC-uri, proiectată pentru a înlocui BIOS-ul (sistem de bază de ieșire – intrare). Acest standard a fost creat de către peste 140 de companii de tehnologie, ca parte a consorțiului UEFI, inclusiv Microsoft. El a fost comercializat ca un înlocuitor pentru sistemul de bază Input-Output (BIOS), tehnologie dezvoltată pentru prima dată de IBM PC pentru a îmbunătăți interoperabilitatea și limitarea adresărilor acestuia. Programul a fost conceput pentru a depăși unele dintre punctele slabe ale BIOS, cum ar fi viteza și hardware limitate.

UEFI nu înlocuiește total BIOS-ul. În realitate și plăcile de baza cu UEFI și cele mai vechi/legacy au chipsetul și BIOS ROM care conține firmware care efectuează pornirea inițială a sistemului. Diferențele dintre firmware-ul BIOS și UEFI BIOS constau în modul cum găsesc codul de pornire al sistemului și cum pregătesc sistemul înainte de pornire.

BIOS-ul ( Basic Input Output System ) este un firmware care a fost scris în limbaj de asamblare. BIOS-ul este unul dintre cele mai vechi vestigii ale originalului IBM® PC și limitările în designul său de bază au fost cele care au ținut PC-urile mai lente decât ar avea potențial, cu întârzieri de până la 30 de secunde sau mai mult, înainte de a încărca un sistem de operare. De asemenea, BIOS-ul a fost conceput pentru procesoare pe 16 biți, iar în prezent în majoritatea calculatoarelor moderne se regăsesc procesoare 32 sau 64 de biți.

Pe măsură ce tehnologia calculatoarelor a avansat, BIOS-ul a fost nevoit să se ocupe de noi componente, chipset-uri mai mari și mai complexe, carduri și alte îmbunătățiri. Aceasta extindere a făcut BIOS-ul din ce în ce complicat. Cei mai mulți utilizatori de calculatoare, au observat că, indiferent cât de repede ar lucra microcipurile din interiorul sistemelor, practic toate PC-urile au o întârziere între momentul în care butonul de alimentare este apăsat și până când sistemul de operare este operațional. În această perioadă, software-ul specializat comunică cu firmware-ul găsit în dispozitivele hardware. Software-ul caută noi componente hardware, inspectează și pregătește componentele existente pentru a porni un sistem de operare, apoi selectează o locație de rețea sau unitate la care să boot-eze.

Dezvoltarea Unified Extensible Firmware Interface ( UEFI ) este soluția la limitările BIOS. UEFI este un set de interfețe modulare care înlocuiește setul de interfețe tradiționale BIOS între sistemul de operare și platforma firmware.

UEFI a fost conceput să fie independent de platformă, ceea ce înseamnă că nu este blocat într-o arhitectura de calculator specifică și poate fi folosit pe alte tipuri de hardware, cum ar fi tabletele.

Timpul de pornire a putut fi redus la doar câteva secunde, și aplicațiile și driverele pot fi chiar create pentru a rula în mediu înainte de încărcarea sistemului de operare. Dimensiunea maximă a unui hard disk care poate fi folosit pentru a porni, de asemenea, a crescut de la aproximativ 2 terabytes (TB) în BIOS la 9,4 zettabytes (ZB).

UEFI va încărca firmware-ul de pe partiția EFI (ESP) care conține programele de încărcare/bootloader-ele pentru toate sistemele de operare instalate, fișierele driver-elor dispozitivelor hardware prezente în calculator și utilizate de firmware la boot și programele utilitare de sistem care sunt destinate a fi rulate înainte de pornirea sistemului de operare.

Problema majoră a BIOS-ului din punct de vedere al securității este faptul că actualizările acestuia semnate digital, sunt rare și permit infectarea sa și a MBR cu boot-kits.

Deasemenea MBR nu verifică niciodată semnătura încărcătorului de sistem de operare/bootloader.

În calculatoarele actuale, etapa încărcării sistemului de operare este vulnerabilă la atacuri care pot redirecta bootloader-ul către încărcători de sistem malițioși.

Atunci când un PC echipat cu UEFI pornește, dacă Boot Secure este activată , firmware-ul analizează semnătura digitală a încărcătorului de sistem (bootloader) pentru a verifica dacă acesta nu a fost modificat.

În cazul în care bootloader-ul este intact , firmware-ul începe bootloader-ul doar dacă una dintre următoarele condiții este adevărată:

Bootloader a fost semnat cu ajutorul unui certificat de încredere – în cazul PC-urilor certificate pentru Windows 8.1 , certificatul Microsoft este de încredere;

Utilizatorul a aprobat manual semnătura digitală a bootloader-ului. Acest lucru permite utilizatorului să încarce sistemele de operare non-Microsoft.

Figura 2.1 Procesul de boot

Pentru a rula sistemele de operare non-Microsoft pe un sistem certificat Microsoft trebuie efectuate manual modificări din interfața grafică UEFI, un pachet software nelegitim (încărcător de sistem nelegitim) neavând privilegiile să modifice bootloader-ul/încărcătorul de sistem.

TPM (Trusted Platform Module) este un procesor care oferă funcții de securitate de bază, în primul rând legate de crearea sau depozitarea în siguranță a măsurătorilor platformă, certificate digitale și chei de criptare. OEM TPM se poate instala pe o placă de bază într-un calculator ca o componentă discretă, sau poate fi pus în aplicare ca o soluție pe bază de firmware pe dispozitivele care includ Trusted Zone ARM sau Platforma Trust tehnologia Intel (ASV).

Acesta permite computerului să beneficieze de caracteristicile complexe de securitate, cum ar fi criptare cu BitLocker. Datele criptate folosind TPM nu pot fi decriptate decât folosind cipul TPM de pe aceeași platformă.

Un computer cu chip TPM poate crea chei de criptare care pot fi decriptate de același TPM. TPM „ascunde” cheile de criptare cu propria cheie stocată în TPM. Plasarea cheii de stocare în microcipul TPM (nu pe hard disk) oferă o protecție mai bună împotriva atacurilor în scopul dezvăluirii cheilor de criptare.

Fiecare TPM are o cheie master, numită Cheie de stocare principală/Root Key (SRK), care este plasata în interiorul TPM. Perechea privată a unei chei create într-un TPM nu este expusă nici unei alte componente hardware, software, proces sau o persoană.

Procesele care necesită securizare bazate pe semnătură digitală și schimb de chei sunt protejate. Sistemele cu TPM oferă securitate îmbunătățită pe bază de hardware în numeroase aplicații cum ar fi criptarea fișierelor și folderelor, managementul local al parolelor, e-mail, VPN, PKI sau autentificare wireless 802.1x.

TPM are, deasemenea, rolul de a stoca o sumă de control pentru firmware, pentru bootloader, driver-e de boot și toate procesele care vor fi încărcate /pornite înainte de aplicația anti-malware.

Acesta poate fi folosit împreună cu un server de certificare a integrității sistemului, TPM semnând digital jurnalul activităților de boot-are(pe care sistemul de operare îl va trimite pentru validarea suplimentară a securității), jurnal care va fi comparat cu un jurnal anterior, scris pe server, procesul fiind numit și Boot Măsurat (Measured Boot) .

Secure boot reprezintă mecanismul prin care sistemul de operare și firmware-ul realizează transferul de sarcini securizat. Această nouă caracteristică de securitate este integrată în procesul de pornire (împreună cu celelalte noi caracteristici de securitate –Trusted Boot, Measured Boot, ELAM) în Windows 8.1 și ajută la prevenirea manipulării frauduloase a procesului de pornire (boot OS) de către software-ul rău-intenționat.

Pe un PC cu un BIOS convențional, oricine poate prelua controlul asupra procesului de boot, poate executa secvența boot folosind o facilitate a sistemului de operare și totodată accesul la resursele din sistem. Când Secure Boot este activat, secvența de boot pornește doar dacă se folosește un OS loader care utilizează un certificat de securitate stocat în firmware-ul UEFI care este verificat și validat/semnat digital (ca parte a politicii sale de securitate).

Windows 8.1/10 va funcționa fără UEFI sau TPM. Cu toate acestea, UEFI 2.3.1 este necesar pentru Secure Boot. În cazul în care UEFI lipsește, Secure Boot nu va fi disponibil.

Toate sistemele cu certificarea pentru Windows 8.1 trebuie să folosească UEFI și TPM pentru a proteja firmware-ul și încărcătorul de sistem de operare de manipulare. Secure Boot poate preveni sistemul la pornire, în cazul în care apar modificări neautorizate , sau chiar a reîmprospăta unele componente de boot, cum ar fi firmware UEFI, la o stare cunoscută ca fiind “sigură”.

Secure boot este o facilitate de securitate de nivel Kernel, nu are legătură cu modul utilizator. Secure Boot poate proteja (dacă este activat) sistemul la pornire în cazul în care apar modificări neautorizate de firmware, DLL sau de către software-ul malițios și chiar reface integritatea sistemului prin modificarea componentelor de boot la o stare cunoscută ca fiind “sigură”.

Se poate verifica dacă Secure Boot a avut loc, verificându-se registrul HKLM\SYSTEM\CurrentControlSet\Control\SecureBoot\State\UEFISecureBootEnabled, care trebuie să fie 1(indică de asemenea că nu au fost întâmpinate erori la boot-are). Dacă apar erori și are loc procesul de remediere, acesta este înregistrat în logurile de System.

Dacă un DLL, firmware sau încărcător de OS neautorizat încearcă să modifice bootloaderul, sistemul va boot-a în Windows Recovery Environment (WinRE) și va înlocui binarul corupt cu unul din “windows component store” (\Windows\WinSxS). Dacă și binarul din magazie este corupt, va porni procesul de Inbox Corruption Repair. Inbox Corruption Repair va afișa linia de comanda și va permite folosirea facilităților SFC/ System File Checker, sau dacă acesta este corupt a facilității Deployment Imaging and Servicing Management (DISM).

Atunci când Secure Boot își termină sarcina, procesul de verificare a integrității procesului de boot-are este preluat de Trusted Boot.

Figura 2.2 Secure Boot, Trusted Boot și Measured Boot

Trusted Boot asigură protecța împotriva rootkit-urilor – un tip sofisticat și periculos de malware care compromit kernel-ul – utilizând aceleași privilegii ca și sistemul de operare. Deoarece rootkit-urile au aceleași drepturi ca sistemul de operare, ele se pot ascunde complet de alte aplicații antimalware, fiind considerate procese legitime.

Probabilitatea ca securitatea sistemului informatic să fie compromisă prin rootkit-uri și bootkit-uri a fost prezentă încă de la începuturile calculatorului personal. Pe măsură ce alte căi de atac au fost limitate, odată ce tehnologia firmware a devenit mai flexibilă și robustă, momentul pre-boot a devenit o țintă a atacatorilor care voiau să rămână nedetectați într-un sistem informatic compromis (menținerea accesului). Rolul Trusted boot este de a verifica integritatea tuturor componentelor sistemului înainte de a lansa încărcarea sistemului de operare.

Trusted Boot nu poate preveni toate infecțiile malware, protejând doar momentul de boot, asigurându-se că doar componentele autorizate Windows pornesc și prevenind compromiterea software-ului anti-malware.

Când rulăm Windows 8/10 pe un PC certificat cel puțin Windows 8.1 sau orice PC care acceptă Unified Extensible Firmware Interface (UEFI), Trusted Boot și Secure Boot protejează PC-ul împotriva malware de la momentul în care PC-ul este alimentat până când pornește aplicația anti-malware. În cazul nefericit în care PC-ul este infectat cu un malware, acest lucru este puțin probabil să poată rămâne ascuns și nedetectat; Trusted Boot poate măsura integritatea sistemului într-un mod în care malware-ul nu se poate ascunde.

Trusted Boot împreună cu Secure boot fac parte din tehnologia Measured Boot.

Dacă Secure Boot este posibil numai pe calculatoare cu UEFI 2.3.1 și cip TPM, Trusted boot nu depinde de acest suport hardware.

Trusted Boot este o facilitate Windows 8.1 care poate proteja procesul de boot Windows și soluția anti-malware (corect proiectate și compatibil ELAM/Early Launch Anti Malware)de manipularea de către malware.

Procesul de Trusted Boot pentru a putea fi compatibil cu software-ul antimalware/AM și pentru ca acesta din urmă (AM) să facă parte din etapele Trusted Boot, antimalware-ul trebuie semnat de Microsoft. Soluția software Windows Defender proprietară va funcționa foarte bine în acest caz, pornind înaintea eventualelor root-kit-uri, fiind capabilă să detecteze și să împiedice un eventual proces nelegitim să pornească.

Dacă soluția antimalware nu este actualizată, are loc un atac de tip necunoscut (0 day exploit- pentru care nu există definiții AM) sau rootkit-ul a fost semnat cu un certificat Microsoft furat ceea ce va face ca Trusted Boot să dea greș în etapa ELAM – Early Launch AntiMalware.

ELAM – Early LaunchAnti-Malware

Pe masură ce software-rul antimalware (AM) a devenit mai performant în detectarea malware-ului la rulare(protectie in timp real), atacatorii au reușit să ocolească AM prin crearea de rootkit-uri, care se pot ascunde la detectare. Detectarea malware încă de la începutul ciclului de boot este o provocare pe care majoritatea vânzătorilor de antimalware au abordat-o, însă, de obicei, aceștia au creat soluții care nu sunt acceptate de sistemul de operare gazdă și pot duce la plasarea computerul într-o stare instabilă. Până de curând, Windows nu a oferit o modalitate suficient de bună pentru ca AM să poată detecta și rezolva aceste amenințări de boot timpurii. Incepând cu Windows 8, cei de la Windows au venit cu Early Launch Anti-malware (ELAM) driver, care rezolvă această problemă. ELAM continuă lanțul de încredere (chain of trust) definit prin Secure Boot și Trusted Boot și are rolul de încărca un driver anti-malware Microsoft sau non-Microsoft, înaintea tuturor driver-elor non-Microsoft de boot și aplicațiilor. Windows Defender, inclus în Windows 8.1 și System Center 2012 Endpoint Protection SP1 includ ELAM cu capabilități antimalware, care sunt certificate pentru Trusted Boot. Microsoft lucrează cu parteneri interni si externi pentru a asigura că soluțiile ELAM suplimentare sunt disponibile pentru clienți.

Figura 2.3 Rolul ELAM în protecția împotriva rootkits și bootkits

Astfel Driver-ul (ELAM) va porni înaintea tuturor driver-elor din faza de boot și permite kernel-ului Windows să evalueze și să decidă dacă acestea ar trebui să fie inițializate.

Deoarece sistemul de operare nu a pornit și pentru a nu întârzia foarte mult procesul de boot, ELAM are o sarcină simplă: examinează fiecare driver de boot și stabilește dacă acesta este sau nu pe lista de driver-elor sau aplicațiilor de încredere. În cazul în care driver-ul examinat nu este de încredere, sistemul nu va încărca acel driver/aplicație.

Această caracteristică permite programelor antimalware certificate Microsoft compatibile ELAM să-și încarce propriile lor driver-e înainte de toate driver-ele de boot Windows.

Nu toate progamele antimalware, de la alți producători (diferiți de Microsoft) reușesc să implementeze ELAM (nu au suport ELAM).

În cazul unui eșec la încărcare sau a coruperii sistemului de fișiere, WinRE ava căuta și va încărca din această locație copia de rezervă a driver-ului.

Un test independent efectuat în 2014 a dovedit că foarte puțini producători antimalware au implementat ELAM* (AVG, Bitdefender, Karspersky, McAffe, Norton Security și Trend Micro), restul, chiar dacă puteau implementa ELAM, neavând semnate de Microsoft soluțiile.

Measured boot/Boot Măsurat a fost introdus începând cu Windows 8 și permite crearea unui jurnal al activităților de inițializare a sistemului de operare.

Cu Measured Boot Windows 8 introduce o caracteristică care oferă software-ului anti-malware posibilitatea de a avea un istoric al tuturor componentelor care s-au inițializat înainte de pornirea AM.

Acest istoric poate ajuta pentru a determina dacă există componente compromise, care au pornit înainte de AM. Software-ul antimalware non –Microsoft, care are suport, are capacitatea de a trimite un jurnal al acestor activități către un server la distanță, astfel încât mașina este în măsură să dovedească dacă este (sau nu) într-o stare de încredere (trust).

În timp ce Secure Boot este o formă proactivă, Measured Boot este o formă reactivă de protecție a secvenței de boot-are.

Measured Boot este o caracteristică de 8.1 Windows care completează Trusted Boot.

Measured Boot ia măsurători la fiecare aspect al hardware-ului și procesului de boot al Windows, apoi semnează digital și stochează sigur aceste măsurători cu TPM.

Pentru a utiliza Measured Boot, PC-urile trebuie să fie echipate cu TPM versiunea 1.2, 2.0, sau mai mare, UEFI fiind opțional.

În funcție de punerea în aplicare și configurație, serverul poate stabili acum dacă clientul este ”sănătos”/de incredere și să ofere acces complet în rețea, iar dacă clientul nu prezintă siguranță, să acorde accesul clientului la o rețea de carantină cu acces limitat.

Pentru a pune în aplicare un client atestare la distanță și serverul atestare de încredere este nevoie de instrumente de bază neintegrate în SO (non-Microsoft) pentru a profita de ea (ex. Crypto-Provider Toolkit de la Microsoft Research sau Measured Boot Tool).

Figura 2.4 Boot măsurat

Device Guard și Credential Guard sunt disponibile doar pe Windows 10 Enterprise pentru dispozitive conforme cu acest sistem de operare și utilizează noul model de securitate, bazat pe virtualizare pentru a izola serviciul Codului de Integritate de kernel-ul Microsoft Windows, într-un container virtualizat, lăsând acestui serviciu doar semnăturile de servicii și aplicații definite de politica de organizație, pentru a stabili care aplicații sunt de încredere. Astfel nici o aplicație malițioasă nu va putea rula dacă nu are semnătura aprobată (model trust-nothing). Organizațiile au la dispoziție instrumente prin care pot semna aplicațiile proprietatea lor, pentru ca acestea să poată funcționa în noul context.

Serviciul de integritate a codului (Credential Guard) este componenta sistemului de operare Windows care face verificarea codului aplicațiilor care rulează pe Windows stabilind daca este de încredere și daca se execută în condiții de siguranță. Acesta conține, două componente principale: modulul de integritate a codului nucleului SO –kernel (KCI) și modulul de integritate a codului de utilizator (UMCI). KCI a fost utilizat în versiunile recente ale sistemului de operare Windows pentru a proteja modul nucleu, însă utilizarea UMCI(dedicată până în prezent doar dispozitivelor mobile Windows Mobile și Windows RT) a fost extinsă asupra versiunii Enterprise de Windows 10.

Prin controlul standardelor KCI și UMCI, de către organizație, care asigură controlul asupra aplicațiilor ce pot rula de la nivel de producător până la nivel de hash, se asigură o protecție atât împotriva driver-elor nesemnate (ce pot conține malware) cât și asupra tuturor aplicațiilor care nu sunt de încredere.

De asemenea, Credential Guard are la bază tot aceleași cerințe hardware (UEFI,TPM, BIOS lockdown,x64, suport de virtualizare, Win10 Enterprise) și vine în completarea noilor tehnologii de securitate bazate pe tehnologia cu suport Hyper-V (bazată pe virtualizare – IUM Isolated User Mode) prin care Microsoft, în noul său SO, vine să facă față provocărilor de furt de credențiale din memorie (prin injectare în LSA /Local Security Authority- LSASS.EXE de tipul mimikatz), furt care permitea apoi atacurile de tip deplasare laterala, prin folosirea hash-urilor de credențiale compromise (Pass-the-Hash).

Prin folosirea IUM datele de acreditare (credentials) vor fi într-un container virtualizat ,criptate, la care atacatorul nu poate avea acces. Tehnologia aceasta nu este nici ea lipsită de limitări, deoarece nu poate proteja împotriva keylogger-elor(programelor) care salvează datele de acreditare, sau atacurilor asupra Credential Manager.

Tehnologii folosite pentru securizarea împotriva atacurilor la memoria (RAM) a sistemelor informatice

ASLR /Distribuirea aleatoare a spațiului de adrese de memorie/Address space layout randomization

Ce este, de fapt, ASLR? Când porniți computerul, codul sistemului de operare Windows este încărcat în diferite locații din memorie. Una dintre cele mai comune tehnici utilizate pentru a obține acces la un sistem informatic este de a găsi și exploata o vulnerabilitate într-o aplicație și apoi de a suprascrie cod malițios în locații de memorie ale unor procese de sistem care sunt deja în execuție.

ASLR modifică la fiecare pornire aceste entry-points (adresele locațiilor de memorie unde începe încărcarea librăriilor de sistem și a funcțiilor de sistem), astfel încât acestea sunt imprevizibile, neputând fi referențiate dintr-un cod malițios.

Distribuirea aleatoare în spațiul de adrese de memorie/Address space layout randomization (ASLR), face ca acest tip de atac să fie mult mai greu de realizat prin încărcarea aleatoare, în locații de memorie, a datelor aplicațiilor.

Datorită faptului că locațiile de memorie alocate proceselor de sistem sunt aleatoare (cu o anumită marjă de entropie) este mult mai dificil pentru un cod malițios să găsească locația specifică de care are nevoie pentru a ataca.

Așa cum se observă în figura alăturată, pe un calculator cu sistem de operare Vista, sau mai nou, la fiecare inițializare a sistemului de operare are loc modificarea adreselor de memorie inițiale – entry point – ale funcțiilor și bibliotecilor de sistem, cu o entropie care a fost mărită la sistemele pe 64 de biți High Entropy Address Space Layout Randomization (HEASLR). Astfel suprafața de atac a fost micșorată esențial, mai ales asupra aplicațiilor proprietate Microsoft.

Figura 2.5 Implementarea ASLR

ALSR se ocupă de alocarea aleatoare cu entropie de 256 biți (x86) a spațiului de adrese de memorie al utilizatorului care conține executabile și DLL-uri, memorie alocată dinamic (heap), stive de memorie pentru procesele în execuție și fire de execuție.

Dacă vorbim despre sistemele x64, pentru a depăși ASLR, un atacator va trebui să atace în orb (brute force), având o foarte mică șansă să nimerească adresa de JMP corectă pentru a rula codul propriu.

Toate procesele care au suport ASLR (trebuie specificat ca sunt și procese de sistem care nu au suport ASLR pentru compatibilitate) vor fi încărcate diferit la fiecare repornire a calculatorului, Windows 8 implementând chiar forțarea ASLR pentru procesele NON-ASLR injectate în procesele de sistem (ex. Un program care adaugă un meniu context la explorer.exe fără suport ASLR va fi randomizat forțat).

ASLR implementează o soluție de protecție împotriva atacurilor care au avut foarte mare eficiență pe Windows XP ”return-to-libc”.

Buffer overflow , sau buffer overrun, este o anomalie care presupune situația în care un program, în timp ce scrie date într-o zonă din memoria tampon alocată, depășește această limită și suprascrie locații de memorie adiacente încălcând zona sigură a memoriei, de obicei alocată proceselor privilegiate – de sistem.

“Return-to-libc" este un atac informatic care începe de obicei cu un ”buffer overflow” care are adresa de întoarcere RETURN ADDRESS de pe stiva de memorie modificată într-o adresă de JUMP (jmp ESP) către o adresă a unei subrutine controlate de atacator care este deja încărcată în memorie – în execuție, ocolind bitul NX –Noexec (dacă există) și permite atacatorului să injecteze propriul lor cod.

O exploatare efectivă a unui astfel de atac necesită cunoștințe avansate de limbaj de asamblare. Descoperirea acestui tip de vulnerabilitate într-un program implică o vulnerabilitate a acelui sistem care trebuie securizată –patched – cât mai repede, deoarece dă posibilitatea de rulare de cod malițios care poate implementa funcții de tipul Download & Execute -care permite descărcarea și executarea unui EXE, Bind TCP – care deschide un port și permite executarea de comenzi. Cel mai des utilizat de către atacatori este reverse-shell sau Calc.exe/MessageBox- care deschide calc.exe sau afișează un mesaj (pentru teste).

Ocolirea ASLR nu reprezintă o vulnerabilitate deoarece aceasta trebuie să fie combinată cu o vulnerabilitate de corupere a memoriei reale în scopul de a permite atacatorilor exploatarea unui sistem informatic.

În Windows XP deoarece nu are ASLR toate librăriile se vor încărca întotdeauna la aceleași adrese! (Ex. Kernel32.dll – la 0x7C800000)

Figura 2.6 Boot Windows XP fără ASLR

DEP – Deep Execution prevention este un alt mecanism create special pentru a proteja aplicațiile împotriva buffer overflow cum ar fi DEP – Deep Execution Prevention.

Valoarea unui soft malițios depinde de capacitatea sa de a încărca codul în memorie în ideea că va fi executat mai târziu. E necesar a se ține cont că ASLR va face ca acest lucru să fie mult mai dificil.

DEP/NX este un sistem de protecție care necesită sprijin din partea procesorului sistemului (compatibil NX). Acesta permite ca adresele de memorie sa fie marcate ca non – executabile prin manipularea unui bit. Astfel, chiar dacă un creator de soft rău intenționat este în măsură să exploateze codul său, DEP/NX nu va permite ca acest cod să fie executat în spațiul de memorie marcat NX.

DEP folosește No eXecute (NX) bit pe procesoare moderne pentru a marca blocuri de memorie ca date care nu ar trebui să fie executate ca un cod. Prin urmare, chiar dacă un atacator reușește încărcarea codului malware in memorie, el nu va putea să-l execute.

Pe un sistem compatibil hardware NX, facilitatea DEP poate fi depășită doar prin ”return-to-Libc” descrisă anterior, iar dacă ASLR lucrează în conjucție cu DEP, atacatorii pot penetra sistemul mult mai greu.

Datorită importanței DEP, Windows 8 este prima versiune de Windows care necesită un procesor care include suport DEP hardware. Utilizatorii nu pot instala Windows 8 pe un calculator care nu are DEP activat. Din fericire, cele mai multe procesoare lansate la mijlocul anilor 2000 suportă DEP.

Windows SEHOP / Structured Exception Handler (SEH) overwrite protection/ Tehnica de protecție la suprascriere a funcției de tratare a erorilor asigură protecția împotriva vulnerabilității software prin care se poate executa cod arbitrar pentru a abuza de facilitatea oferită de Windows de afișare a excepțiilor de eroare (32 de biți). La nivel funcțional, o suprascriere SEH este, în general, realizată prin utilizarea unui buffer overflow pe stiva de memorie pentru a suprascrie locația unde este înregistrată excepția, aflată deja pe stivă. În acest contex, o înregistrare de excepție este compusă din două câmpuri: un pointer către următoarea adresă de memorie și adresa pointerului către indicatorul de tratare a excepției. Funcția care generează o excepție este apelată de dispecerul general al excepțiilor din Windows atunci când se produce o excepție. De obicei pentru a exploata SEHOP, un atacator va alege să suprascrie pointerul către funcția de tratare a excepției cu o adresă care conține instrucțiuni de excepții controlate de acesta (malițioase).

La nivel înalt, SEHOP împiedică atacatorii de a utiliza tehnica de suprascriere, SEH verificând dacă locația cu pointerul către dispecerul de excepții al sistemului este intactă, înainte de a permite apelarea oricărei excepții din listă.

Protecția HEAP

Windows 8 rezolvă și cunoscutele atacuri heap care ar putea fi folosite pentru a compromite un PC care rulează Windows Vista sau Windows 7 și îmbunătățește proiectarea heap prin reducerea riscului de exploit heap care ar putea fi utilizat ca parte a unui atac de succes pe un Windows 7 compromis.

Heap este un spațiu delimitat de adrese de memorie (dacă am avea un singur proces/fir de execuție cu alocare contiguă – max. 2^32 bytes= 4 GB pe pe un sistem x86 și 2^64 bytes=16 hexabytes pe un sistem x64) pe care Windows îl utilizează pentru a stoca dinamic datele aplicației. Acest tip de memorie alocat dinamic unei aplicații, prin heap, va rămâne nealocabil altor aplicații, de obicei până la închiderea programului pentru care a fost alocat.

Stiva de memorie nu este același lucru cu heap. Dacă în cazul stivei memoria este alocată și eliberată într-o ordine foarte definită (din vârful stivei), elementele de date individuale alocate pe heap sunt de obicei alocate/dealocate în mod aleator (se genereaza fragmentarea memoriei).

Windows 8 are mai multe îmbunătățiri importante pentru Heap:

Structurile de date interne utilizate de heap sunt mai bine protejate împotriva corupției memoriei;

Alocări de memorie Heap sunt distribuite dinamic și au dimensiuni diferite, ceea ce face mai dificil pentru un atacator să prezică locații de memorie, critice la suprascriere. Mai exact, Windows 8 adaugă un offset de compensare la adresa unui nou Heap alocat, ceea ce face alocarea mult mai puțin previzibilă;

Windows 8 adaugă de asemenea "pagini de pază/gardă" înainte și după blocurile de memorie. În cazul în care un atacator încearcă să scrie dincolo de un bloc de memorie (o tehnica buffer overflow), atacatorul va trebui să suprascrie o pagină de gardă. Orice încercare de a modifica o pagină de gardă este considerată o corupție de memorie, și Windows 8 răspunde prin închiderea imediata a aplicației – windows error handler.

Incepând cu Windows 8, Microsoft recomadă, pentru a extinde mecanismele de protecție a memoriei ASLR, DEP, SEHOP și HEAP pentru aplicațiile proprietare și asupra aplicațiilor neproprietare, instalarea unui utilitar gratuit – Enhanced Mitigation Experience Toolkit (EMET), folosirea acestui utilitar fiind prezentată în partea practică a lucrării.

Extensia protecției execuției neautorizate în memoria RAM a codurilor malițioase și pentru programe non- Microsoft se poate face folosind Enhanced Mitigation Experience Toolkit (EMET).

Acesta este recomadat a se instala pe toate sistemele, începând cu Windows 7 și mai noi, pentru a extinde protecția împotriva atacurilor asupra memoriei, mai ales la aplicațiile de la alți producatori (ex. Adobe Flash, Java).

Prin implementarea acestor mecanisme de protecție a memoriei, Microsoft a făcut din Windows un sistem de operare foarte greu de atacat, oferind administratorului de sistem posibilitatea extinderii protecției prin mecanismele intrinsece și asupra aplicațiilor de la alți producători.

Mecanismul integrității fișierelor sistemului de operare

Mecanismul integrității fișierelor sistemului de operare a fost introdus încă de la Windows 2000 sub denumirea de Windows File Protection/WFP și are rolul de a proteja fișierele de sistem, de modificări (accidentale sau intenționate). În Windows XP avea rolul de a proteja peste 3000 de fișiere de sistem. Dacă o persoană neautorizată încercă să șteargă un fișier de sistem, acesta putea fi recuperat/reparat prin mecanismul de reparare al sistemului.

Incepând de la Vista, toți regiștrii, driverele și fișierele de sistem sunt securizate și nici măcar Administratorul sau System (contul de ”root” din Windows) nu mai pot face modificări asupra acestora.

Windows File Protection/WFP a fost redenumit începând cu Vista Windows Resource Protection/WRP.

Serviciul TrustedInstaller este singurul care are permisiuni depline asupra fișierelor critice de sistem. Trusted Installer este un serviciu de sistem responsabil pentru aplicarea actualizărilor de sistem. Este singurul serviciu care are permisiunea de a face modificări critice asupra sistemului de fișiere sau asupra cheilor de regiștrii. De fapt acesta este și proprietar (owner) asupra tuturor fișierelor de sistem, în mod implicit.

Un director care conține fișierele protejate WRP poate fi blocat la scriere, astfel încât numai Trusted Installer este capabil de a crea fișiere sau subdirectoare în directorul părinte.

Dacă o cheie de registru este protejată de WRP, toate subcheile și valorile sale pot fi protejate.

Windows Resource Protection (WRP) protejează fișierele de sistem prin detectarea încercărilor de a înlocui fișierele de sistem protejate.

Aplicațiile care încearcă să înlocuiască, să modifice sau să șteargă fișiere critice din Windows, sau chei de regiștrii, vor primi un mesaj de eroare prin care li se va atesta că accesul la resursă a fost refuzat. Aplicațiile care încearcă să adauge, să elimine subchei sau să modifice valorile cheilor registru protejate vor eșua și vor primi un mesaj prin care se va atesta că accesul la resursă a fost refuzat. Toate aplicațiile care-și bazează funcționarea prin scrierea de chei în regiștrii protejați nu vor funcționa corect.

WRP va copia fișierele care sunt necesare pentru a reporni Windows în directorul de rezervă/cache %Windir%\winSxS\backup de unde va putea restaura (la nevoie) varianta corecta a fișierului de sistem modificat.

Fișierele critice care nu sunt necesare pentru a reporni Windows nu sunt copiate în directorul de rezervă. După ce WRP primește o notificare de modificare director pentru un fișier într-un director protejat, aceasta va determina care fișier a fost modificat.

Dacă fișierul este protejat, WRP va verifica semnătura fișierului într-un fișier catalog pentru a determina dacă noul fișier este în versiunea corectă. Dacă versiunea fișierului nu este corectă, sistemul înlocuiește fișierul cu versiunea corectă, fie din directorul de rezervă/cache, fie de pe mediul de instalare al sistemului de operare, în funcție de fișier (dacă e critic pentru pornire se află în directorul cache). Înlocuirea fișierului deteriorat poate fi efectuată, în cazul în care TrustedInstaller eșuează și manual de către administrator, care va trebui inițial să ia dreptul de proprietate pe resursa care trebuie modificată.

Mandatory Integrity Control/MIC/Nivelele de Integritate Obligatorii

Fiecare proces rulează la un nivel de integritate specific și obiectele au un nivel de integritate specific înscris în descriptorii de securitate.

În funcție de nivelul de integritate se pot efectua sarcini specifice, cum ar fi, de exemplu, modificarea (scriere, ștergere) unui director sau fișier.

Nivelele de integritate nu înlocuiesc permisiunile NTFS, ci le suprascriu atunci când este cazul, ele fiind prioritare, diferența majoră fiind că permisiunile NTFS sunt permisiuni discreționare (pot fi modificate de utilizator) iar MIC sunt impuse de sistem ca fiind obligatorii .

Astfel, chiar dacă un utilizator sau un proces are permisiuni de Control total (Full Control) asupra unui obiect, dacă utilizatorul/procesul are un nivel de integritate mai mic decât obiectul pe care încearcă să-l modifice, permisiunile vor fi suprascrise și interacțiunea va fi respinsă. Chiar dacă nu sunt foarte mult luate în seamă aceste nivele de integritate, dacă există un director sau fișier pe care nu-l puteți modifica este bine să luați în calcul MIC.

Windows cuprinde 5 nivele de integritate:

Nu prezintă încredere / Untrusted – orice proces care se pornește de către un grup anonim. La acest nivel pur și simplu se blochează orice tentativă de scriere, nu contează directorul;

Scăzut/Low – Următorul nivel de integritate este scăzut. Internet Explorer funcționează în modul Protejat la acest nivel de integritate. Procesele cu acest nivel au accesul la scriere blocat pentru cele mai multe obiecte, cum ar fi directorul Windows, partiția de sistem, directorul System32 sau regiștrii locali ai mașinii –HKLM;

Mediu/medium- nivel de integritate folosit de aplicațiile uzuale în modul utilizator, cu UAC/User Account Control activat;

Înalt/High – este cel mai înalt nivel de integritate posibil, pentru o acțiune din partea utilizatorului. Acesta este utilizat pentru sarcini/aplicații cu privilegii administrative. Dacă se dezactivează controlul cont de utilizator, acesta este nivelul de integritate implicit, ceea ce prezintă clar un risc de securitate;

Sistem/System – În cele din urmă, avem un nivel de integritate cel mai înalt care este disponibil pentru servicii și aplicații pe care le controlează contul sistem/root, de exemplu Wininit.exe, Winlogon.exe, regiștrii SAM și System și așa mai departe.

Un utilizator simplu sau privilegiat (din grupul administratorilor, inclusiv administratorul implicit) care rulează cu UAC activat, operează la nivelul de integritate Mediu.

Administratorul și utilizatorii din grupul Administrators au cele mai mari privilegii pe care le poate avea un utilizator, aceștia funcționând standard cu nivelul MEDIU și ”în modul Administrator/Run As Administrator” cu nivelul de integritate Înalt.

Pe de alta parte, nucleul sistemului de operare și funcționalitatea de bază a acestuia (serviciile) primesc un nivel de integritate superior, de Sistem. Nivelul superior de integritate care corespunde contului System este similar contului ROOT din Linux. Acesta nu poate fi folosit pentru logare însă uneori putem să-l folosim pentru a efectua anumite sarcini administrative de securitate (ștergerea amprentelor din regiștrii ai dispozitivelor detașabile).

Pentru a rula cu privilegiile nivelului System este nevoie de aplicații non-integrate Microsoft (aceștia nu recomandă folosirea acestui cont decât în situații deosebite!) sau de modificare de regiștrii (registrii hack). Recomandarea pentru efectuarea unor operații cu contul de System este psexec.exe (psexec –sid regedit comanda pentru a putea avea acces la regiștrii protejați) de la SysInternals care este și semnată de Microsoft.

Comportamentul implicit al controlului de integritate este acela că procesele pot citi de la obiecte cu un nivel de integritate mai mare; procesele nu pot citi sau scrie în alte procese cu un nivel de integritate mai înalt și, în cele din urmă, procesele pot citi și scrie în alte procese și obiecte cu același nivel de integritate sau mai mici.

Din punctul de vedere al utilizatorului sunt vizibile doar 3 nivele de integritate: Înalt, Mediu și Minim atât pentru procese cât și pentru obiecte.

Figura 2.7 – UAC dezactivat, utilizatorul administrator are nivel de intergritate INALT (run as administrator)

Procesele pot citi și scrie în alte procese și obiecte cu nivel de intergritate de același rang(nivel) sau mai mici. Procesele pot citi de la obiecte de nivel de integritate mai mare. Procesele nu pot citi sau scrie alte procese cu un nivel mai ridicat de integritate.

Astfel, orice proces sau obiect cu un nivel ridicat, mediu și scăzut de integritate poate citi de la un proces cu nivel de integritate inalt. De asemenea, un proces de nivel înalt de integritate poate scrie în alte procese sau obiecte cu nivel înalt, mediu și scăzut de integritate. Se vede clar avantajul folosirii UAC, fapt ce va implica folosirea unui nivel mediu de integritate pentru toate procesele utilizatorului (inclusiv browser).

Figura 2.8 – UAC activat, utilizatorul are nivel de integritate MEDIU

În ceea ce privește impactul asupra securității Windows, aceste niveluri de integritate și MIC protejează obiectele împotriva modificării sau ștergerii, cu sau fără intenție, de procesele cu un nivel de integritate mai mic.

Prin stabilirea nivelului de integritate Mediu (ca mod implicit pentru utilizatorii standard și pentru toate obiectele non-sistem) Windows protejează majoritatea obiectelor sistemului de operare de pe calculator și împotriva majorității amenințărilor de pe Internet (atunci când se navighează cu Internet Explorer – care rulează implicit cu un nivel scăzut de integritate -LOW). Atunci când se accesează obiecte care conțin cod malițios de pe alte medii de stocare, acestea vor rula (în eventualitatea nedetectării de către antivirus) în contextul utilizatorului/administrator cu token neprivilegiat (Mediu) sau Înalt (când se rulează fără UAC).

Vestea bună este că dezactivarea UAC în Windows 8 nu mai este posibilă decât pentru administratorul built-in, acesta rămânând funcțional obligatoriu atât pentru utilizatorii standard cât și pentru cei din grupul Administrators.

Figura 2.2.9 UAC dezactivat – rulare cu contul built-în administrativ –nivel înalt de integritate – risc sporit!

Procesele vor rula în continuare la un nivel de integritate mediu iar dacă se vor folosi conturi de utilizatori administratori (non-built-in) sau utilizatori standard, modificările asupra sistemului vor fi controlate de UAC în continuare.

Figura 2.10 UAC dezactivat – rulare cu cont administrativ sau cont standard – nivel mediu de integritate

Comportamentul standard va fi blocarea rulării administrative pentru utilizatorii standard iar pentru administratori solicitând acceptul (cu excepția contului built-in de administrator).

Bitlocker și BitlockerToGo

Mecanismele de criptare a datelor integrate în sistemele Windows începând cu variantele superioare de 7 (Enterprise și Ultimate) permit protecția datelor sensibile (confidențialitatea) atunci când o soluție de prevenire a pierderilor de date cum ar fi ștergerea de la distanță a dispozitivelor (Device Wipe) nu este disponibilă.

Începând cu Windows 8.1 a fost integrat și un mecanism de criptare a dispozitivelor detașabile de stocare a datelor confidențiale.

Astfel chiar dacă sistemul criptat cu Bitlocker (sau doar mediul de stocare) sau un dispozitiv de stocare criptat cu BitlockerToGo s-a pierdut/a fost furat, accesarea datelor de pe acel mediu nu este posibilă prin rularea de software de atac (boot cu alt sistem de operare) și nici prin montarea hard-disk-ului pe alt hardware, asigurând astfel protecția datelor confidențiale.

Pentru protecția împotriva atacurilor asupra cheii de criptare BitLocker, Windows utilizează tehnologii hardware și software de protecție a atacurilor asupra secvenței de boot cum ar fi modulul Trusted Platform, UEFI, Boot Secure, Trusted Boot și ELAM.

Software-ul în sine nu este suficient pentru a proteja un sistem. După ce un atacator a compromis software-ul, software-ul ar putea fi în imposibilitatea de a detecta acest lucru. Prin urmare, un singur software compromis cu succes într-un sistem face ca acest sistem să nu mai prezintă încredere. Hardware-ul, în schimb, este mult mai dificil de modificat și compromis (doar prin modificări firmware).

Pe dispozitivele care rulează Windows 8 și mai noi, combinația dintre un TPM și UEFI Boot Secure oferă un mecanism de securitate pentru a asigura integritatea datelor sistemului.

Activarea BitLocker pentru unitatea sistemului de operare criptează toate fișierele de pe unitatea de sistem de operare, inclusiv fișierele swap și fișierele de hibernare.

BitLocker Drive Encryption folosește implicit tehnologia de criptare AES pe 128 bits. BitLocker utilizează modulul hardware TPM (Trusted Platform Module) din computer pentru a stoca cheile utilizate pentru deblocarea hard diskului criptat. Prin legarea cheii de criptare BitLocker de TPM și configurarea adecvată a dispozitivului, este aproape imposibil pentru un atacator să aibă acces la datele criptate cu BitLocker fără a obține acreditările unui utilizator autorizat.

Spre deosebire de Sistemul de criptare a fișierelor (EFS), care permite criptarea fișierelor individuale, BitLocker criptează întreaga unitate de sistem, inclusiv fișierele de sistem Windows, necesare pentru pornire și Log on. Când se adaugă fișiere noi pe o partiție protejată cu Bitlocker, acesta le va proteja și pe acestea.

Seviciul BitLocker se poate opri oricând, fie temporar, prin dezactivare, fie definitiv prin decriptarea unității.

Pentru a accesa un disk criptat cu Bitlocker To Go de pe Windows XP se va folosi Bitlocker To Go Reader. Computerele cu sistem de operare Windows XP sau Windows Vista nu recunosc în mod automat faptul că unitatea detașabilă este protejată de BitLocker. Cu BitLocker To Go Reader (KB970401 -actualizare pentru XP) utilizatorul poate debloca unitățile protejate cu BitLocker prin utilizarea unei parole sau a unei parole de recuperare ( de asemenea, cunoscut ca o cheie de recuperare ) și pentru a obține acces numai pentru citire la datele lor.

Tehnologia UAC – User Account Control

Windows a avut o lungă istorie de utilizatori care rulează implicit cu drepturi administrative. Aceștia, utilizând calculatorul pentru a naviga pe Internet, își expun sistemul unui mare risc, de compromitere a întregului sistem.

Prin implementarea UAC a fost implementat un principiu de bază al securitații – principiul privilegiului minim necesar – LEAST PRIVILEGE.

Când utilizatorii rulează cu drepturi de utilizator standard fără să aibă drepturi administrative, configurația de securitate a sistemului, inclusiv antivirus și firewall este protejată. De asemenea, conturile de utilizator standard asigură o mai bună securitate, oferind utilizatorului un ”container” (o zonă), care dacă este compromisă, ar putea să nu compromită tot sistemul, eventualul soft malițios rulând cu privilegiile acestuia. Spun ”ar putea” pentru că, un sistem odată compromis, pe un cont fie el de utilizator standard, aceasta permite unui atacator să încerce (și uneori să reușească!) să-și mărească privilegiile (escaladare de privilegii/privilege escalation), atacatorul putând deveni administrator, cu mai multă bătaie de cap, însă, decât în primul caz.

Astfel, începând cu Windows Vista toți utilizatorii au privilegii de utilizator și nu de administrator, privilegiile administrative putând fi folosite, la nevoie, de utilizatorii din grupul Administrators.

Încă de la apariția UAC, utilizatorii nu l-au agreat și chiar și în prezent vedem ”specialiști” care recomandă dezactivarea sa. Aceștia trebuie să înțeleagă că acestă facilitate de securitate oferă protecție complementară antivirusului împotriva software-ului cod dăunător/malware, avertizând utilizatorii despre faptul că un program încearcă să modifice sistemul!

Navigarea pe web și citirea poștei electronice reprezintă unele din activitățile cu potențialul cel mai mare de risc de securitate informatică pe care le putem efectua de pe calculatoare în ziua de astăzi. Utilizarea permisiunilor de administrare pentru a efectua oricare dintre aceste activități este un joc foarte periculos!

Prin urmare, UAC are rolul de a ne proteja sistemul de malware prin controlarea acțiunilor care pot avea impact asupra sistemului.

Microsoft, începând cu Windows 7 a reușit reducerea numărului de componente care necesită privilegii administrative, implementând auto-elevarea implicită pentru acestea în modalități mult mai ”transparente” utilizatorului.

Astfel, atunci când UAC este activat, privilegiile administrative sunt eliminate și pentru administratori și se vor creea pentru aceștia la inițializarea sistemului două jetoane/tokens de acces – unul de utilizator simplu și unul de administrator. Când un proces necesită acces administrativ, se vor solicita utilizatorului credențialele sau acceptul (în funcție de configurarea UAC) înainte de a acorda cererea.

Figura 2.11 Funcționarea UAC

Toate aplicațiile rulează în modul utilizator standard (neprivilegiat). Când un utilizator vrea să îndeplinească o sarcina administrativă, UAC va solicita acordul de a efectua sarcina. Culoarea antetului ferestrei UAC este importantă și trebuie luată în considerare, atunci când se ia o decizie asupra rulării unui pachet software descărcat de pe Internet. Culoarea albastru arată că aplicația este sigură, semnată de Microsoft sau de la un producător de încredere, iar pentru celelalte (roșu cu scut roșu și galben cu scut cu semnul exclamării) Microsoft nu garantează și chiar poate bloca aplicația Utilizatorul cu privilegii administrative poate fi liberul arbitru pentru acceptarea rulării aplicației pentru care Microsoft nu are informații că nu este malițioasă (dar care poate fi!).

Figura 2.12 Ferestrele UAC

Pentru a evita imitarea UAC de către aplicațiile cu cod malițios se poate folosi setarea de solicitare a acceptului/credențialelor în modul Desktop Secure (ecranul devine mai estompat, se întunecă, temporar se dezactivează Aero iar solicitarea apare într-o fereastră fără transparența). Secure Desktop, de fapt, face o poză ecranului (PrtScrn) apoi o estompează (întunecă) și pune peste ea fereastra UAC.

Windows Defender

Lansat inițial ca un program antispyware, este oferit ca download gratuit pentru Windows XP, livrat cu Windows Vista și Windows 7 ca antispyware, iar în prezent este distribuit cu capabilități antimalware (antivirus + antispyware) ca parte integrantă din Windows 8 și versiunile mai noi (8.1, 10) .

Windows Defender este o soluție proprietară care contribuie la protejarea computerului de programe malițioase/malware (software rău intenționat). Malware este un nume generic pentru viruși, spyware și alte tipuri de software potențial nedorit. Un program malware poate infecta PC-ul fără ca să ne dăm seama: se poate instala singur dintr-un mesaj de e-mail, când navigăm pe Internet, rula automat de pe un CD, un DVD sau alte tipuri de suporturi amovibile.

De asemenea, unele tipuri de malware pot fi programate să ruleze în momente neașteptate, nu doar atunci când sunt instalate.

Windows Defender blochează programele malware să infecteze PC-ul în două modalități:

Oferă protecție în timp real. Atunci când pe PC încearcă să se instaleze automat sau să ruleze un malware, Windows Defender ne anunță și îl blochează. De asemenea, ne anunță când aplicațiile încearcă să modifice setări importante.

Oferă opțiuni de scanare în orice moment. Periodic, automat sau manual, Windows Defender poate fi folosit pentru a scana PC-ul în scopul detectării de programe malware instalate, Windows Defender pune automat în carantină sau elimină orice element detectat în timpul unei scanări.

Când utilizăm Windows Defender, este important să avem definiții actualizate. Definițiile sunt fișiere care se comportă ca o enciclopedie care se mărește continuu cu potențialele amenințări. Windows Defender utilizează definiții pentru a detecta toate programele malware și pentru a ne notifica în legătură cu potențialele riscuri.

Înainte de a scana PC-ul, Windows Defender caută definiții actualizate online; pentru a descărca și a instala automat definițiile noi se poate folosi Windows Update.Începând cu Windows 8, actualizările pentru soluția antimalware integrată sunt difuzate ca parte a actualizărilor de sistem (actualizări importante), putând fi însă instalate și separat, din interfața GUI a Microsoft Defender.

Pentru ca PC-ul să funcționeze corect, este bine să instalăm doar o singură aplicație antimalware la un moment dat. Trebuie să ținem cont de faptul că nu toți producătorii de soluții antimalware dețin driver ELAM semnat de Microsoft care poate detecta infecțiile cu rootkits, de aceea, chiar dacă la testele efectuate și în clasamentele capabilităților, Defender nu ocupă un loc fruntaș, această capabilitate (detecție din faza de boot) nu trebuie ignorată atunci când optăm pentru o altă soluție de protecție a sistemului informatic împotriva codurilor malițioase (malware).

Filtrul Windows SmartScreen

Această facilitate a fost introdusă o dată cu Internet Explorer 8 pentru a îmbunătăți securitatea utilizatorilor. Atunci când utilizăm Internet Explorer 8 (sau versiuni mai noi) pentru navigarea pe Internet, putem întâlni mesaje de avertizare atunci când încercăm să accesăm un URL, să descărcăm sau să executăm anumite fișiere. Putem primi avertismente care spun că fișierul "nu este descărcat în mod uzual și poate afecta negativ computerul" sau că "executarea acestei aplicații poate pune PC-ul în pericol).

Începând cu Windows 8, această facilitate de securitate a fost extinsă și asupra browserelor de la alți producători.

Dacă un fișier nu a fost descărcat înainte de pe Internet și de alți utilizatori sau numărul de descărcări al acestuia este foarte mic, atunci veți fi avertizat că alegerea dumneavoastră prezintă un factor de nesiguranță.

Filtrul Windows SmartScreen verifică și înscrie site-urile într-o listă actualizată în permanență. În această listă sunt introduse site-uri de înșelăciune electronică (Web Forgery of a legitimate site -phishing), site-uri cu software rău intenționat sau cele raportate ca fiind folosite în atacuri cibernetice (Unwanted Software or as an Attack Site). Dacă găsește o potrivire între site-urile vizitate și cele din listă, afișează un avertisment/o notificare prin care ne anunță că site-ul a fost blocat pentru siguranța noastră.

Același lucru se întâmplă și cu fișierele rău intenționate descărcate de pe Internet. Acest lucru poate fi enervant atunci când vrem să descărcăm fișiere nu foarte populare, dar astfel putem fi în siguranță atunci când virușii sau alte forme de software rău intenționat încearcă să se ​​descarce în calculatorul nostru.

Deoarece Internet Explorer nu este singura poartă de acces pentru datele care provin de pe internet pe computer, începând cu Windows 8, filtrul SmartScreen a fost introdus ca parte a sistemului de operare. Acest lucru înseamnă că SmartScreen Filter va fi disponibil în sistemul de operare în sine și va proteja și utilizatorul care folosește alte browsere sau clienți de email.

Principiul ”reputației”, valabil pentru aplicații și URL va funcționa pentru a proteja utilizatorul care descarcă date de pe Internet, oricare ar fi browser-ul sau clientul de email folosit, fiind complementar mecanismelor intrinseci integrate în acestea (de exemplu Mozilla Firefox include și ea o lista de site-uri -Tools (Alt + T) > Options > Security – de pagini de “phishing”, cu software malițios sau cu potențial nedorit.

Figura 2.13 Setări de securitate la Firefox

Clientul va primi un rating de reputație alocat pe baza unor algoritmi specifici în Windows 8 care iau în considerare rezultatele AV/antivirus, istoricul de descărcare, sursa /adresa URL în sine și traficul de download generat. Reputația unui fișier este generată de două componente. Prima dintre ele este semnătura digitală în cazul în care un certificat digital a fost folosit pentru a semna aceste fișiere. Certificatele digitale permit să fie atribuite identități specifice, cu reputație locației/sursei din care urmează să fie descărcat un fișier. În cazul în care dezvoltatorul nu a semnat programul său, reputația se constituie din numărul de distribuții pentru acel software distribuit. Cea de a doua componentă vine de la hash-ul fișierului. Hash-ul unui fișier este un identificator unic pentru orice fișier (criptare într-un singur sens cu algoritmi de criptare (MD5, SHA1,SHA2)). Dacă se schimbă ceva într-o aplicație (fie și un bit) identificatorul/hash-ul se va modifica. O aplicație care este actualizată frecvent va avea hash-uri diferite, iar pentru aceasta va trebui construită reputația pentru fiecare versiune în parte.

SmartScreen adaugă de asemenea un marker (stream de date alternativ/ADS –facilitate NTFS) fișierelor care sunt descărcate de pe internet, în scopul de a executa o evaluare reputației, iar dacă nu există date despre aceasta, dacă există reguli mai stricte stabilite prin politica de securitate, utilizatorului nu i se va permite să ruleze acel fișier (decât după ce acesta îl deblochează manual) și nici să acceseze acel URL.

Dacă dorim totuși să rulăm un fișier care are un marker care îi indică ca sursă Internet-ul (ZoneID=3), acesta poate fi deblocat prin stergerea ADS din butonul Unblock (Proprietăți – tab-ul General).

Figura 2.14 Stream de date alternativ/ADS pentru macarea zonei de proveniență

Izolarea sesiunii 0

Izolarea sesiunii 0 are drept scop separarea sesiunii de utilizator de sesiunea în care se execută serviciile Windows. Deoarece serviciile Windows erau folosite ca mijloc de obținere de privilegii suplimentare (priviledge escalation/elevation) în urma injectării soft-urilor rău intenționate în acestea, acest factor de risc a fost limitat începând cu Windows Vista.

În Windows XP serviciile rulează cu privilegii ridicate în aceeași sesiune cu utilizatorul, unele servicii având chiar ferestre de dialog vizibile prin care utilizatorul sau orice alt proces ar putea interacționa, existând posibilitatea de injectare a codurilor malițioase în aceste servicii. Primul utilizator se va loga în sesiunea cu numărul 1 (ceilalți utilizatori care se vor loga pe sistem vor avea un număr de sesiune succesiv dacă Fast User Switching este activat).

Începând cu Windows Vista serviciile rulează în sesiunea 0, această sesiune nefiind interactivă, iar utilizatorul în sesiunea 1 (izolarea sesiunilor).

Numai procesele și serviciile pot rula în sesiunea 0. Daca utilizatorul va incerca sa ruleze procese proprii în sesiunea 0 (neinteractivă) acestea nu vor funcționa corect și vor genera mesaje de eroare (problema driverelor de dispozitive vechi care au fost configurate să ruleze în sesiunea 0, a serviciilor).

Figura 2.15 Vizualizarea sesiunilor cu Process Explorer

Facilități de salvare de siguranță și restaurare a datelor

File History

În mod normal o salvare de siguranță este folosită pentru a proteja un sistem informatic împotriva accesării sistemului din motive tehnice (HDD defectat) fizice (PC furat, pierdut) sau pentru protejarea datelor împotriva interzicerii accesului la acestea (cryptolocker).

Salvarea de siguranță a datelor trebuie să devină o activitate obișnuită a utilizatorului de sistem de operare Microsoft Windows.

Microsoft a venit în întâmpinarea acestei necesități cu soluții noi de back-up, transparente pentru utilizator și foarte ușor de configurat, astfel încât datele să poată fi recuperate în situația defectării fizice a mediului de stocare (HDD)sau furtului dispozitivului.

În contextul noilor amenințări cibernetice (Criptolocker), utilizatorul poate avea acces la o copie a datelor sale și acestea pot fi ușor de restaurat/recuperat.

În mod regretabil, studiile de telemetrie ale Microsoft au arătat că utilizatorii folosesc doar în proporție de 5% facilitățile de backup oferite de Windows Backup, deși în anumite situații, în care sistemul este compromis cu malware care criptează fișierele, soluția backup poate permite recuperarea datelor importante.

Cercetările Microsoft au mai arătat că foarte puțini utilizatori își fac griji în legătură cu pierderea sistemului de operare, a aplicațiilor sau a setărilor. Cei mai mulți sunt preocupați de pierderea fișierelor personale. De aceea, File History/Istoricul Fișierelor este o facilitate introdusă începând cu Windows 8 special în scopul protejării fișierelor personale.

Efectuarea de copii de rezervă a fișierelor critice este ceva ce cu toții ar trebui să facem și, începând cu Windows 8, a fost introdusă posibilitatea de a restaura o versiune anterioară a unui fișier critic chiar dacă acesta a fost editat/modificat pe parcursul unei zile de mai multe ori, nefiind pentru aceasta nevoie să restaurăm tot sistemul, așa cum exista această facilitate în Windows 7 (Windows Backup).

File History este o aplicație de backup care protejează în mod continuu fișierele personale stocate în directoarele Libraries, Desktop, Favorites, și Contacts.

Pentru a putea folosi File History avem nevoie de un sistem de operare cel puțin Windows 8 și de un mediu de stocare extern sau de posibilitatea accesării cu drept de scriere pe o resursă partajată (USB drive, NAS/Network Attached Storage sau share). Periodic (în mod implicit la fiecare oră) scanează sistemul de fișiere pentru schimbări și copiază fișierele modificate în altă locație. De fiecare dată când oricare dintre fișierele personale s-au schimbat, copia acestuia va fi stocată pe un dispozitiv extern de stocare, dedicat, preselectat anterior de utilizator.

Deoarece File History face salvarea de siguranță doar din locațiile menționate, este nevoie, dacă vrem să salveze și alte date la care lucrăm, să copiem aceste date manual în locațiile de unde se efectuează manual acest backup (Libraries, Desktop, Favorites și Contacts), pentru a beneficia de această facilitate de restaurare a versiunilor anterioare.

Pot fi de asemenea eliminate anumite directoare din locațiile menționate, considerate de utilizator nenecesare în salvarea de siguranță (exclude folders).

De fapt, File History este o implementare intuitivă a opțiunii ”versiuni anterioare”/previous versions, fiind însă mult mai ușor de folosit. Diferența față de previous versions, identificabilă de utilizator, este obligativitatea/necesitatea de a salva aceste copii de siguranță cu fișierele personale ale utilizatorului (cele mai valoroase în cazul în care apare un defect) pe un mediu de stocare extern sau într-o locație în rețea (file share) folosind de asemenea tehnologii diferite de implementare; dacă previous versions folosea Shadow copy și ținea o evidență la nivel de fișier, File History are la bază evidența modificărilor din jurnalul NTFS

Crearea unei imagini de sistem

În Windows 8 prin accesarea Windows 7 File Recovery avem acces la instrumentul de backup cu care putem să efectuăm o imagine de sistem/restaurăm o imagine de sistem. În Windows 8.1, la accesarea File History avem acces și la vechiul utilitar (System Image Backup) pentru crearea unei imagini de sistem de siguranță și pentru restaurarea unei astfel de imagini.

Copia de siguranță pentru sistem poate fi folosită pentru a restaura tot sistemul, nu doar fișiere particulare, operațiunea de salvare de siguranță suprascriind o imagine de sistem anterioară existentă în aceeași locație selectată (numai o copie per locație), locațiile putând fi o partiție locală (neindicat), DVD-uri sau o partajare din rețea.

Începând cu Windows 8, Microsoft a introdus noi instrumente în acest scop, intuitive, care permit restaurarea facilă a sistemului în întregime, în modul instalare ”curată” – fresh install sau instalare particularizată (Custom).

Instrumentele sunt accesibile din interfața Metro Settings și permit resetarea sistemului (reset=fresh install) sau restaurarea unei imagini particularizate (wim) de sistem (refresh=instalare custom).

Resetarea sistemului este echivalentă cu o nouă instalare a sistemului, fără însă a mai fi nevoie de interacțiunea utilizatorului. Această opțiune este echivalentul „reset to factory defaults” de la dispozitivele mobile.

În mod implicit, RESET PC și REFRESH PC restaurează Windows la starea inițială (fresh install).

Figura 2.16 Setările din interfața METRO pentru restaurarea sistemului

Se poate crea de asemenea o imagine particularizată a sistemului (.wim) care să conțină toate setările și aplicațiile instalate și apoi această imagine să poată fi folosită în procesul de REFRESH folosind recimg.exe.

Figura 2.17 Crearea unei imagini particularizate de system pentru Refresh

Salvarea datelor în cloud pe OneDrive

OneDrive (înlocuitorul Skydrive) este soluția cu care a venit Microsoft pentru a face față competitorilor săi Google (Alphabet) – Google Drive și Apple – ICloud care foloseau de mult aceste soluții pentru sincronizarea și salvarea datelor în cloud ca pe o alternativă la salvarea de siguranță.

Astfel, dacă utilizatorul folosește pentru a se loga pe PC un cont de Microsoft, acesta poate beneficia de facilitatea salvării în OneDrive a setărilor particularizate, aplicațiilor metro, pozelor și fișierelor importante ale acestuia, ele fiind disponibile de pe orice PC s-ar conecta după sincronizare(cu același cont de Microsoft).

OneDrive este accesibil din Setări PC și poate fi configurat să efectueze sincronizarea datelor folosind un spațiu de stocare (limitat) de pe serverele Microsoft. Extinderea acestui spațiu de stocare se poate face contra cost și de asemenea pot fi efectuate setări particularizate pentru această sincronizare, inclusiv se poate dezactiva sincronizarea în situația unei conexiuni de date tarifată pe trafic (modem GSM/3G/4G) – metered connection.

Capitolul 3 Autentificarea, autorizarea și auditarea

Autentificarea, autorizarea și auditarea (Authentication, authorization, and accounting) (AAA) asigură controlul inteligent al accesului la resursele unui sistem informatic, aplicarea politicilor și auditarea resuselor folosite.

Aceste trei procese combinate asigură managementul și securitatea sistemului informatic.

Autentificarea reprezintă procesul de identificare unică a unei persoane, de obicei, pe baza unui nume de utilizator și a unei parole. După ce un utilizator este autentificat el poate accesa resurse de rețea pe baza autorizarii acestuia.

Ce este de fapt un (cont de) utilizator?

Din perspectiva umană: Persoană care folosește un sistem de calcul.

Din perspectiva sistemului de operare: Cont pe un sistem informatic.

Utilizatorul poate fi și o entitate de tip agent/serviciu – care execută acțiuni în cadrul sistemului. Acesta are drept de acces și drepturi configurabile(limitări, privilegii); de asemenea acesta poate executa acțiuni și are drept de proprietate pe resursele sale (ownership).

Fiecare cont de utilizator este caracterizat prin următoarele atribute:

Nume (username) – Numele cu care ne putem loga pe sistem

Parola (password) – Șirul de caractere alfanumerice și simboluri pe care utilizatorul le tastează (atunci cand este configurată o parolă!) pentru ca acesta să poată accesa sistemul informatic

Numele+parola= CREDENȚIALE

Grup – se pot grupa utizatorii care vor primi prin prisma apartenenței la grup drepturi, privilegii și permisiuni specifice. Un utilizator trebuie să facă parte din cel puțin un grup

Tip – definește privilegiile pe care le are utilizatorul în sistem

Figura 3.1 Procesul de logare pe sistem

Tipurile principale de conturi de utilizator care exista pe sistemele Windows sunt:

Administrator – built-in (dezactivat implicit) sau utilizatorul face parte din grupul Administrators; acesta poate face modificări pe sistem, poate instala programe, dispozitive; are control “aproape” total asupra sistemului. Contul poate fi de tip local sau cont de Microsoft. Nivelul său de integritate (integrity level) implicit este mediu (cu UAC) însă își poate folosi privilegiile și își poate ridica nivelul de integritate până la Înalt (High).

Standard – tipul de utilizator care face parte numai din grupul Users; acesta poate folosi doar pachetele software deja instalate iar modificările pe care acesta le face asupra sistemului nu-i afectează pe ceilalți utilizatori. Contul poate fi de tip local sau cont de Microsoft. Nivelul său de integritate este mediu, orice încercare de ridicare de privilegii fiind monitorizată de UAC.

Oaspete – un tip special de cont (local) de utilizator al cărui nume este Guest și nu are configurată parolă, creat special pentru utilizatorii cu acces temporar la sistemul informatic. Acest tip de cont nu mai există în Windows 10.

După instalarea sistemului de operare primul cont care se va crea pe sistem va fi implicit de tip administrativ (va face parte și din grupul Administrators).

În Windows 10, Microsoft recomandă utilizarea conturilor de federație (Microsoft) pentru a avea acces implicit la toate serviciile și produsele Microsoft (Xbox,Store,Skype,OneDrive,Office, Outlook.com) acesta fiind un cont securizat implicit. Dacă se selectează opțiunea Sign in without Microsoft account se pot creea și conturi locale.

Adăugarea unui utilizator într-un grup reprezintă practica uzuală de administrare a privilegiilor/drepturilor pentru utilizatori. Privilegiile și drepturile se vor configura apoi pentru acele grupuri.

Mecanismele de autentificare ale utilizatorului într-un sistem informatic pot fi multiple, unele însă necesită echipamente hardware specializate (ex. token reader, cititor de amprente sau iris –biometrice), de aceea cel mai ieftin și facil instrument de autentificare, deja integrat, este autentificarea prin parole (ceea ce utilizatorul cunoaște). De aceea atacurile cibernetice cele mai frecvente asupra sistemelor informatice sunt atacuri la autentificare/credențiale. Prin integrarea mecanismului de autentificare cu parole în sistemul de operare, este minimizat costul de securitate.

Un utilizator se poate autentifica pe un sistem informatic folosind una sau mai multe dintre următoarele metode:

Cu ajutorul unei parole sau număr personal de identitate (PIN), ceea ce utilizatorul știe

Cu un pașaport, carte de identitate sau smart-card, ceea ce utilizatorul deține,

Cu ajutorul factorilor biometrici, pe baza amprentelor digitale, scanarea retinei, particularități voce sau alte forme ceea ce utilizatorul are.

Atunci când se folosesc smart-card-uri sau elemente biometrice există asociată o parolă pentru fiecare cont de utilizator și, chiar dacă pare mai sigur accesul, sistemele sunt supuse acelorași riscuri de atac la credențiale.

Credențialele utilizatorilor din sistemele informatice sunt salvate în SAM – SecurityAccountManager /%SystemRoot%\System32\config\SAM sub forma – nume utilizator –IN CLAR și parola criptată hash NTLM.

Locația este inaccesibilă direct din sistemul de bază (acces live) tuturor utilizatorilor (inclusiv celor cu privilegii administrative) deoarece are MIC de nivel System. Datele sunt totuși accesibile live din regiștrii de sistem (registryhives), sau offline –boot cu alt sistem de operare live.

NTLM este bazat pe algoritmul criptografic MD4 aplicat după ce caracterele parolei sunt convertite în Unicode generându-se șirul de caractere unic (hash-ul). Cea mai mare problemă a acestui algoritm pe Windows este faptul că nu folosește tehnica ”sărării” hash-urilor (o parolă generează întotdeauna același hash) – permitând astfel crearea de dictionare de hash-uri –RainbowTables.

După logarea pe sistemul informatic, la prima operațiune de acest tip pe acel sistem, utilizatorului i crează un profil (în directorul Users sau pe versiunile anterioare Windows Vista –Documents and settings).

Va avea loc procesul de autorizare prin care cestuia i se va permite (va fi autorizat) să desfășoare doar anumite activități, să folosească doar anumite resurse sau servicii. Un drept/privilegiu autorizează un utilizator să efectueze anumite acțiuni pe un SIC, cum ar fi conectarea la sistem interactiv sau copierea de rezervă a fișierelor și directoarelor de pe un sistem.

Pentru a ține evidența care utilizator poate accesa un obiect și ce poate face utilizatorul, fiecare obiect (fișier, director, resursă) are stocată o listă de control al accesului (ACL), care enumeră toți utilizatorii și grupurile care au acces la obiect. Pentru implementarea de ACL (permisiuni NTFS) partițiile de pe HDD trebuie obligatoriu formatate NTFS!

NTFS este sistemul de fișiere preferat să fie utilizat în sistemele de operare de astăzi, datorita facilităților suplimentare de securizare pe baza de ACL. Permisiunile NTFS ne permit să controlam utilizatorii și grupurile care pot avea acces la fișiere și directoare pe un volum formatat NTFS, de aceea putem spune că NTFS este orientat multiuser.

Un descriptor de securitate pentru un obiect (fișier/director) conține 2 liste de control a accesului /access control lists (ACLs) care sunt folosite pentru a atribui drepuri și a urmări accesul (monitorizare în log-uri) pe acel obiect:

lista de control a accesului discreționar (DACL);

lista de control a accesului de sistem (SACL).

Lista de control a accesului discreționar / Discretionary access control lists (DACLs) identifică utilizatorii și grupurile cărora le-a fost permis sau refuzat permisiunea de acces la un obiect. Dacă DACL nu specifică explicit un utilizator, sau un grup din care utilizatorul face parte, utilizatorului îi va fi refuzat accesul la acel obiect (deny prin omisiune). Implicit, DACL este controlat de un proprietar OWNER (de obicei persoana sau entitatea care a creat obiectul); de asemenea DACL conține access control entries (ACEs) care determină regulile de acces la obiect – permisiunile NTFS.

Ierarhia precedenței/priorității permisiunilor NTFS este cu prioritate descrescătoare pentru Deny explicit, Allow explicit, Deny moștenit, Allow moștenit. Permisiunile aplicate direct pe un obiect sunt numite permisiuni explicite și au prioritate în fața celor moștenite de pe directorul părinte. Astfel, deși permisiunile Deny în general au prioritate în fața celor de Allow, această regulă nu se aplică întotdeauna. O permisiune ALLOW explicită este prioritară unei permisiuni "deny" moștenite.

Dacă un utilizator face parte din mai multe grupuri, permisiunile sunt cumulative. Astfel daca un utilizator face parte din 2 grupuri, și un grup are READ și celălalt are și WRITE, utilizatorul va cumula permisiunile (bineînteles tinând cont și de regulile de mai sus).

Lista de control a accesului de sistem / System access control lists (SACLs) identifică utilizatorii și grupurile pe care vrem să le audităm atunci că aceștia au accesat cu succes sau nu au reușit să acceseze un obiect. Auditarea este folosită prin generarea de evenimente de securitate în log-ul Security, pentru a identifica și localiza breșele de securitate a accesului la resurse. Implicit,SACL este controlat de proprietarul obiectului sau persoana care a creeat acel obiect.

SACL conține și el access control entries (ACEs) prin care se stabiliște dacă și pe cine trebuie să monitorizeze sistemul pentru a putea genera evenimentele de încercare reușită sau nereușită de acces, efectuate de un utilizator care vrea să-și folosescă permisiunile de acces pe o resursă (director sau fișier).

Pentru a identifica utilizatorii în ACL sistemul de operare Windows nu folosește nume ci identificatori de securitate –SID -uri. SID –urile utilizatorilor derivă din SID –ul alocat pentru computer de Windows Setup –la instalare. Ultima parte a SID (32 biți) se numește RID –identificator relativ. Primul utilizator creat pe sistem are RID 1000 iar următorii primesc numerotare în continuare (1001,1002 ș.a.m.d). Administratorul are întotdeauna RID 500 iar Guest 501.

Facilitațile de Audit permit administratorului de sistem/securitate să urmărească evenimentele generate de sistem dar și utilizatorii care s-au autentificat/ sau încercările de autentificare nereușite; dacă sunt configurate pe fișiere/directoare liste de securitate a controlului/SACL în tabelul de audit al permisiunilor avansate NTFS și se activează auditul la accesarea obiectelor, se pot colecta și evenimente cu ceea ce utilizatorul a accesat sau a încercat să acceseze pe sistemul informatic.

Instrumentul implicit folosit pentru vizualizarea evenimentelor din jurnalul de auditare este Event Viewer (eventvwr.msc). Interpretarea codurilor evenimentelor este o sarcină complexă datorită numărului mare de log-uri create pe sistem, de aceea trebuie să știm dacă vrem să investigăm un sistem informatic asupra evenimentelor cu efect asupra securității codurile acestor evenimente. Codurile evenimentelor generate pe versiunile mai vechi (XP) diferă de codurile sistemelor actuale. Operații de interes pe linia securității pot fi logon cu succes(528), eroare la logare (527,537,539), delogare (538), acțiuni asupra conturilor de utilizatori prin crearea sau modificarea (624), activarea (626), dezactivarea (629) sau ștergerea conturilor (630), schimbarea parolei (627,628), servicii pornite/oprite/create, interzicerea accesului la un obiect (560/567).

Pentru a se genera evenimente de audit, este necesară activarea activității de auditare din politica de securitate (implicit anumite evenimente se auditează, cum ar logon-ul). În sistemele Windows 7 și mai noi, este recomandată activarea auditării granulare (Computer Configuration – Windows Settings – Local Policies – Security Options – Force audit policy subcategory settings (Windows Vista or later) to override audit policy category settings) din politica locală de grup și activarea/dezactivarea auditării din Auditarea Avansată a politicii locale, prin care se poate reduce semnificativ numărul de evenimente generate pe sistem.

Figura 3.2 Activare auditare granulată (avansată)

Prin configurarea conturilor de utilizatori nominale și implementarea unui mecanism de autentificare, autorizare și auditare /AAA se poate avea o evidență a acțiunilor utilizatorului și se pot configura drepturi și privilegii pe principiul LEAST PRIVILEGE pentru ca acesta să-și poată îndeplini atribuțiile în condiții de siguranță.

Capitolul 4 Politici locale

Gestionarea unitară a setărilor de securitate și configurare de pe un sistem informatic se poate face prin implementarea unui șablon de politică locală. Este deja un obicei să se confunde politica locală cu politica de securitate locală. Politica locală conține într-adevăr și setările de securitate locale, iar unele setări administrative pot avea efect asupra securității sistemului (de ex. Prevent instalation of removable drives).

Prin politica locală se pot configura unitar și menține setările/configurările de securitate și administrative locale numite și LGPO/politici de grup locale, care se pot aplica asupra calculatorului și utilizatorilor locali.

Principalele instrumente pentru managementul politicilor de locale sunt:

Snap-in-uL din MMC – Group Policy Object Editor – permite vizualizarea și editarea politicii locale LGPO.

Snap-in-uL din MMC – Resultant set of policy – nu se mai folosește local, în schimb se folosește gpresult.exe.

Snap-in-uL din MMC – Security Configuration and Analysis – poate fi folosit pentru a compara setările din Security Options al LGPO cu un șablon, pentru a identifica diferențele, iat pe Windows XP se folosește pentru a importa șabloane de securitate.

Snap-in-uL din MMC – Security template – caută în profilul utilizatorului în Documents/Security șabloane de securitate

Figura 4.1 Instrumente pentru administrarea politicii locale

Administrarea politicii locale pe sistemele Windows 7 (8,8.1,10) se face prin importul unui șablon (template) cu setări preconfigurate sau editarea setărilor din LGPO (local group policy object). Dacă vrem să administrăm centralizat mai multe calculatoare dintr-o rețea (Microsoft recomandă această abordare la mai mult de 10 sisteme informatice) va trebui implementată o politică de domeniu (se adaugă un server de autentificare centralizată/controler de domeniu iar calculatoarele vor fi adugate într-un domeniu Microsoft și configurate din consola de management a politicilor de domeniu din Active Directory -GPMC).

Fiecare obiect de politică locală conține setări care pot fi configurate pentru mașină (computer) și care se vor aplica tuturor utilizatorilor care se loghează pe acel SIC (se aplică la start-up, înainte de log-on-ul utilizatorului și setări pentru utilizator (care se vor aplica utilizatorilor după logare).

Figura 4.2 Procesarea politicii locale

Acestea pot să asigure securitatea sistemului informatic și administrarea unitară prin impunerea unor setări/configurări specifice tuturor utilizatorilor. Impunerea este vizibilă utilizatorilor prin dezactivarea (imposibilitatea de reconfigurare) a unor setări de sistem.

Începând cu Vista, există posibilitatea configurării mai multor politici de securitate locale doar pentru setările pentru utilizatori (MLGPO –multi local GPO) în funcție de privilegiile pe care aceștia le au pe sistem sau/și particular pentru fiecare utilizator în parte.

Instrumentul pe care îl putem folosi pentru a configura manual politica locală pe sistemele Windows va fi Group Policy Object Editor, afișat în mmc.exe ca Local Computer policy. Pe versiunile de sistem Windows Home Edition, acest instrument nu există. Shortcut-ul pentru această consolă MMC este gpedit.msc.

Acesta are două secțiuni – Computer Configuration și User Configuration.

Figura 4.3 LGPO

Fiecare componentă are trei parți cu denumiri identice dar care conțin setări diferite pentru calculator (mașină) și pentru utilizator. Software settings nu este folosită prin politica locală ci doar prin politica de domeniu, pentru a instala pe toate calculatoarele pachete software.

În partea de calculator la setările Windows/Windows Settings cea mai importantă componentă o constituie Security settings – setările de securitate locale accesibile și direct prin consola Local Security Policy din Control Panel (secpol.msc). Secpol.msc este o porțiune din politica locală (gpedit.msc).

Figura 4.4 Secpol.msc parte a LGPO

În partea de setări administrative se regăsesc foarte multe setări pentru configurarea Windows ( de ex. Pe un Windows 8.1 sunt ~2003 setări pentru partea de calculator și ~1564 pentru partea de utilizator). Acestea corespund setărilor din fișierele .admx aflate în %SystemRoot%\PolicyDefinitions.

Figura 4.5 Setări administrative pentru calculator și pentru utilizatori

Dacă vrem să configurăm manual setările, foarte utile sunt informațiile din help-ul fiecărei setări care poate fi configurată cu LGPO, deoarece unele setări pot avea implicit una din stările activă sau inactivă (enabled sau disabled), unele pot fi complementare altora, sau unele pot aplicabile decât anumitor versiuni de Windows. Este recomadat înainte de activarea unei setări să se citească aceste informații pentru a preveni și a putea depana o eventuală neaplicare a setărilor din politică.

Figura 4.6 Instrucțiuni de ajutor pentru setările de politică

Setările din LGPO pot avea valori numerice sau alfanumerice, valori boolean (enabled=true/disabled=false), configurări pentru Succes sau Failure (setări de audit) iar cele administrative pot fi neconfigurate, activate sau dezactivate. Câteva exemple de tipuri de setări sunt prezentate în figura de mai jos.

Figura 4.7 Exemple de variante de setări de politică

LGPO (GPEDIT.MSC) reprezintă în fapt o soluție de configurare grafică a regiștrilor sistemului informatic, orice modificare efectuată din Local Computer Policy având corespondent un registru cu o valoare (setare). Registrii sistemului sunt o bază de date centrală, ierarhizată, folosită de sistemele de operare Windows pentru stocarea informațiilor necesare pentru configurarea sistemului, a profilului utilizatorilor, a aplicațiilor și componentelor hardware.

Cheile de regiștri legate de politici sunt răspândite în multe locuri din regiștri. Locațiile în regiștri unde găsim setările de politică pe care le putem modifica cu ajutorul gpedit.msc sau secpol.msc sunt de obicei în HKEY_LOCAL_MACHINE\Software\

Microsoft\Windows\CurrentVersion\Policies\System și HKEY_LOCAL_MACHINE\

SOFTWARE\Microsoft\Windows NT\CurrentVersion, însă pot fi și în alte locații de regiștri.

Figura 4.8 Lgpo vs Registry

Dificultatea constă în faptul că, dacă vrem să facem direct o configurare din regiștri pentru o setare, trebuie pentru unele setări, să cunoaștem semnificația valorilor în hexazecimal pentru acea setare (dword). LGPO ne permite însă configurarea mai facilă asociind text explicativ pentru fiecare valoare HEX a regiștrilor.

Figura 4.9 Editarea Lgpo vs Registry

În ultima parte a lucrării voi aboda implementarea a unei politici locale prin folosirea unor șabloane de politici, publice, puse la dispoziție de Microsoft și de National Institute of Standards and Technology/NIST.

Capitolul 5 Implementarea măsurilor de securizare a unui sistem informatic

Pentru implementarea unui model de securizare a unui sistem informatic cu Windows, am ales sistemul de operare cel mai folosit de la Microsoft conform statisticilor în mai 2015 de 47,29%– Windows 7. Cota de piață a acestui sistem a scăzut vertiginos mai ales din cauza posibilității de migrare gratuită (upgrade) cu oferta limitată temporal la Windows 10, sistem care are deja 15,12%, depășind în sfârșit ”vulnerabilul și venerabilul” Windows XP.

Am instalat acest sistem de operare (Win7 Ultimate) în varianta de 32 de biți pe o mașină virtuală. Am ales varianta de hypervizor de nivel 2 folosită dezvoltatori (Virtualbox) în locul hypervizorului de tip 1 Hyper-V care m-a dezamăgit pe Windows 10, deoarece a stricat la activare o funcționalitate a sistemului.

Personal, prefer Windows 8.1 și din punct de vedere al securității și funcționalității, însă politica Microsoft se pare ca nu mai are incluse în planurile viitoare acest sistem (vrea ”să-l ucidă”), fiind concentrată pe promovarea agresivă a Windows 10, nu atât de reușit și lansat ”în grabă”, nefinisat.

Deoarece nici Virtualbox nici Hyper-v nu au capabilitatea de a emula BIOS sau EFI, o să mă rezum la enumerarea măsurilor de securitate care trebuiesc luate pentru a proteja accesul la sistem (fizic) în perioada de boot și încărcare a sistemului de operare.

Securitate la boot-are

Primele măsuri de securitate de bază care trebuie luate sunt interzicerea boot-ării de pe alte medii (detașabile sau CD/DVD) și blocarea accesului la BIOS prin parolare. Dacă la un laptop această procedură poate avea succes, la un desktop PC, accesul fizic permite atacul prin resetarea Bios-ului! Suplimentar, la acestea se securizează accesul la carcasă prin metode fizice pentru interzicerea accesului în interiorul carcasei (la bateria de BIOS sau HDD/SSD). Dacă bateria care menține setările CMOS este scoasă pentru o perioadă de timp, se poate modifica secvența de boot, putându-se porni sistemul cu un CD/DVD bootabil, putându-se astfel elimina elementele de securitate instalate (controlul accesului) prin accesarea datelor sau modificarea paramentrilor conturilor de utilizator.

De asemenea, se poate activa Secure Boot pentru versiunile superioare (Windows 8,8.1,10) însă în acest caz nu este nevoie, Windows 7 neavând integrate facilități de protecție la boot împotriva rootkits și bootkits.

Figura 5.1 Activarea Secure Boot pentru protecția împotriva rootkits și bootkits

La sistemele la care nu se poate bloca enumerarea opțiunilor de boot-are, dacă este posibil se scot din lista toate dispozitivele, în afară de discul de sistem (hdd).

Astfel, chiar dacă cineva are acces la secvența de selectare a opțiunilor de boot, nu are alt dispozitiv pe care să poată să-l selecteze în afară de HDD. Pe dispozitivele pe care firmware-ul (BIOS sau UEFI) nu permite nici eliminarea intrărilor din această listă, trebuie să fim siguri măcar că primul mediu de pe care se boot-ează este HDD.

Figura 5.2 Configurare ordine boot

Controlul accesului

După instalarea sistemului vom fi solicitați să configuram primul cont de utilizator cu care ne vom putea loga pe sistem, care va fi cu privilegii administrative; parola acestui cont nu va expira implicit, de aceea va trebui să modificăm acest aspect. Microsoft recomandă un număr de maxim 2 conturi cu privilegii administrative și logarea limitată pe sisteme cu acestea (mai ales dacă cel de-al doilea este cel built-in).

Ca și masură de siguranță există practica redenumirii conturilor Administrator (built-in) și Guest – securitate prin obscuritate, aceste conturi fiind vulnerabile la atac de forță brută pe parola (contul Administratorului nu se blochează niciodată, chiar și dacă există o politică de blocare a conturilor).

De asemenea, pentru a efectua navigarea pe INTERNET și pentru task-urile de zi de zi, se pot crea conturi neadministrative. Este recomandată folosirea acestora, pentru a evita compromiterea întregului sistem în situația unei infecții cu malware. Pentru calculatoarele de acasă, acest tip de cont cont poate fi și fără parolă, permițând logarea automată pe sistem, însă dacă suntem paranoici sau avem motive (mai multi utilizatori locali, fiecare cu setările personale) putem configura o parolă și pentru aceste conturi. Studiul efectuat de compania de servicii de securitate informatică Avecto în 2013 a demonstrat că prin eliminarea privilegiilor administrative sunt rezolvate aproximativ 92% din problemele pe linia securității cibernetice.

Figura 5.3 Consola compmgmt.msc

Pentru a preveni escaladările de privilegii ale utilizatorilor locali este recomandat să verificăm din când în când membrii din grupurile cu privilegii administrative (net localgroup administrators).

O mare atenție trebuie acordată securizării procesului de log-on prin parole deoarece pe cele mai multe sisteme informatice, acesta reprezintă prima și ultima barieră de securitate către datele de pe acel sistem.

Pentru a securiza procesul de log-on și acesta să nu fie mimat de vreun malware (trojan sau program spion/spyware care să intercepteze credențialele) este bine să fie activat log-onul securizat folosind CTRL+ALT+DEL numit și SAS/Secure Atention Sequence.

Utilizarea Log on-ului securizat asigură un nivel suplimentar de securitate pentru computer, asigurându-se faptul că se afișează ecranul autentic de Log-on Windows.

Procedura simplă (se poate forța și din politica de securitate această configurare) este din terminalul de comenzi CMD.exe (run as admin) folosind netplwiz sau control userpasswords2.

Consola de administrare a conturilor de utilizator permite în setările avansate configurarea secvenței de securizare la log-on.

Figura 5.4 Implementare SAS

Actualizări de securitate

Următoarea etapă pentru securizarea sistemului constă obligatoriu în instalarea actualizarilor de securitate, folosind serviciul Windows Update.

Figura 5.5 Instalarea actualizărilor de securitate

Actualizările de securitate se pot instala și manual, descărcând actualizările direct de pe site-ul Microsoft și folosind un script de instalare automată. Această operațiune este necesară pentru actualizarea calculatoarelor din rețelele de tip ”air-gapped”/neconectate; pentru descărcarea manuală a actualizărilor se folosește o stație tampon, conectată la Internet.

Figura 5.6 Script instalare automatizată a actualizărilor de securitate

Unde PATCH1,2… sunt sub forma MS(anul)-(numărul_actualizarii_din anul)_Windows6.1-KBxxxxxx-x86.

Configurarea finală pentru actualizările de securitate este instalarea automată de actualizări pentru utilizatorul casnic iar pentru organizații configurarea serviciului de actualizări de securitate trebuie să căute actualizări, dar să lăse la latitudinea administratorului când să le instaleze, pentru a nu strica funcționalitatea aplicațiilor proprii ale organizațiilor.

Figura 5.7 Configurarea Windows Update

Windows Defender

O altă etapă importantă care trebuie efectuată pe Windows 7, este instalarea unei soluții antimalware, deoarece Windows Defender este pe acest tip de sistem de operare doar o soluție antispyware. Începând cu Windows 8, acesta capătă și capabilități antimalware.

Figura 5.8 Windows Defender pe Windows 7

Este preferabilă o soluție antimalware completă (MalwareBytes, Bitdefender, Karspersky), dar se poate folosi și o soluții gratuită (Avast, Avira, Security Essentials). Microsoft recomandă ca și soluție de securitate, Microsoft Forefront.

Am ales pentru acest sistem Avira 2016 Free Antivirus. Conform statisticilor, această soluție asigură utilizatorului un grad mare de protecție, fără a consuma foarte multe resurse.

Figura 5.9 Rezultate comparații soluții antimalware martie 2016

Windows Firewall

Rolul firewall-ului este să controleze traficul spre și dinspre calculator (incoming și outgoing) și să permită să să interzică traficul în funcție de regulile configurate. Spre deosebire de Linux care nu permite inițial nici un port deschis, Windows vine preconfigurat de Microsoft cu reguli de acces. Cea mai simplă analogie pentru un firewall este compararea cu zidurile unei cetăți, porturile deschise fiind comparabile cu porțile de acces/ieșire din cetate.

Figura 5.10 Funcționare Firewall

Configurația Firewall-ului trebuie să asigure protecția maximă împotriva oricărui atac spre calculator de aceea trebuie blocate și toate conexiunile ”incoming”.

Figura 5.11 Configurarea Windows Firewall

Pentru a verifica eficiența firewall se poate scana sistemul informatic cu nmap, un utilitar care se poate folosi pentru scanarea vizibilității în rețea (porturi deschise, vulnerabilități) a sistemului informatic.

Sistemul cu Windows 7 are IP 192.168.0.103.

Figura 5.12 Configurația TCP/IP a sistemului

La o prima scanare cu nmap, am descoperit portul 5357 deschis. Este adevarat ca am ales tipul de rețea Work și nu Public. Aceleași rezultate le-am obținut cu setarea de rețea de tip Home network.

Figura 5.13 Tipuri de conexiuni

Figura 5.14 Scanare cu nmap pe profilul de rețea Work

După schimbarea profilului rețelei pe Public, și o nouă scanare am obținut rezultatul dorit: toate porturile (1000) filtrate, deci blocate de firewall. Deci pentru ca firewall-ul să aibă eficiență maximă trebuie configurat tipul conexiunii ca fiind Public.

Figura 5.15 Scanare cu nmap pe profilul de rețea Public

Închiderea portului se poate face și din CLI cu comanda (rulată ca administrator) netsh firewall set service type = upnp mode =disabled.

Putem deci închide portul modificând tipul de conexiune la rețea dacă este Work sau Home în Public.

Figura 5.16 Reconfigurarea tipului de conexiune

Controlul conturilor de utilizatori UAC

Controlul conturilor de utilizatori trebuie configurat la nivelul maxim, deoarece contribuie complementar soluției antimalware la securitatea sistemului. De fapt diferența majoră față de Windows XP pe versiunile superioare este acest instrument care permite utilizarea privilegiilor minime (LEAST PRIVILEGE) pentru efectuarea de sarcini uzuale (mail, browser) pentru toți utilizatorii (nivel de integritate mediu) și utilizarea privilegiilor administrative pentru efectuarea de modificări asupra sistemului (token administrativ) pentru utilizatorii din grupul Administrators doar după confirmarea în fereastra UAC. Nu se recomandă dezactivarea UAC (UAC pe Never Notify), deoarece toți utilizatorii cu privilegii administrative vor rula toate aplicațiile cu nivelul maxim de integritate pe care îl poate avea un utilizator (High), putând compromite în totalitate sistemul.

Figura 5.17 Configurarea nivelului UAC

Prin politica de securitate se poate configura comportamentul UAC pentru administratori și chiar interzice total interogarea UAC pentru utilizatorii standard, pentru aceștia din urmă UAC implicit de refuzându-li-se accesarea privilegiilor administrative.

Figura 5.18 Configurarea din politica locală a UAC

Controlul facilităților de securitate constructive de sistem

Pentru a verifica funcționarea celorlalte elemente de securitate înglobate în sistemul de operare am folosit Process Explorer de la Sysinternals. După ce am descărcat programul, am configurat modul de afișare (Select Columns) pentru a-mi furniza informații despre procesele care rulează, separarea sesiunii serviciilor (sesiunea 0) de sesiunea interactivă, funcționarea mecanismelor ASLR și DEP și nivelele de integritate.

Figura 5.19 Verificarea mecanismelor se securitate ale sistemului

Se observă faptul că mecanismele de protecție a memoriei funcționează, serviciile rulează neinteractiv (sesiunea 0) și utilizatorul rulează standard în mod neprivilegiat (nivel de integritate mediu) datorită UAC.

Dacă însă instalăm și alte pachete software neproprietare Microsoft, atacurile la memorie (buffer overflows) ar putea avea success, deoarece, implicit nu se asigură suport ASLR pentru alți producători. In figura de mai sus se poate observa că 7zip nu are protecție ASLR.

Extensia protecției sistemului de operare împotriva unor astfel de atacuri se poate face instalând EMET (Enhanced Mitigation Toolkit) de la Microsoft. Acesta solicită pe Windows 7 ca si prerechizit NetFramework 4.5. După instalare, activarea extensiei protecției trebuie configurată pentru fiecare software instalat nou pe sistemul informatic. În situația în care un cod malițios vrea să suprascrie zone de memorie, aplicația se va opri din funcționare și se vor genera alerte.

Figura 5.20 Configurare EMET

După configurarea corespunzătoare, aplicația va avea toate protecțiile împotriva atacurilor la spațiul de memorie.

Criptarea cu Bitlocker a partițiilor

Pentru protejarea datelor de pe sistemul informatic împotriva accesării neautorizate (live system sau mutare HDD pe alt sistem), partițiile pot fi criptate cu Bitlocker. Acesta pentru a fi eficient trebuie folosit în tandem cu TPM. Deși se poate folosi fără TPM, această variantă care presupune salvarea cheilor de criptare pe un dispozitiv de stocare detașabil, este mai puțin sigură.

Figura 5.21 Partiție criptată cu Bitlocker

Salvările de siguranță (backup)

Windows 7 dispune de un instrument care permite crearea salvărilor de siguranță pentru întreg sistemul (system image), putând crea mai multe imagini și chiar planifica un program pentru salvările de siguranță.

Figura 5.22 Crearea unei imagini de sistem

Pentru a putea restaura sistemul într-o stare anterioară cunoscută ca fiind bună, se poate activa System Restore, care folosește Volume Shadow Copy pentru a face salvări incrementale ale modificărilor pe sistemul informatic, iar dacă vrem să revenim la o anumită configurație software anterioară (eventual infectării cu malware) putem efectua această operațiune (dacă nu cumva malware-ul nu a sters aceste puncte de restaurare!, situație de obicei întâlnită în comportamentul malware-ului actual) .

Figura 5.23 System Protection cu System Restore

Dacă dorim să revenim la o stare anterioară, putem să selectăm unul din punctele create automat sau manual pe sistem.

Figura 5.24 Puncte de restaurare create de sistem

Verificarea setărilor de securitate de bază folosind MBSA (Microsoft Baseline Security Analyser)

Figura 5.25 MBSA

Acest instrument de la Microsoft ne ajută să verificăm starea de securitate a sistemului. Acesta ne ajută să menținem sistemul într-o stare de securitate de bază.

Figura 5.26 Analiza sistemului cu MBSA

Conform acestui instrument, pe sistemul informatic (de test) la momentul la care am făcut scanrea lipseau 2 actualizări de securitate. Pentru a rezolva problema, se va folosi Windows Update Service. Dacă sunt descoperite și alte probleme, acest instrument oferă și soluții la acestea (How to correct this). Dacă lăsăm conturi fără parolă, acestea trebuie fie dezactivate (administratorul built-in) sau să fie de utilizator neprivilegiat. Oricum prin politica implicită aceste configurări nesigure (conturi fără parolă) sunt protejate împotriva atacurilor prin permiterea accesării decât interactive pe aceste conturi (Accounts: Limit local account use of blank passwords to console logon only:Enabled). De aceea, dacă vrem să partajăm resurse pe un sistem cu Windows 7 (file share), și avem conturi fără parolă, acestea nu vor putea fi folosite în autentificarea din rețea de pe alt sistem.

Instalarea unei politici de securitate de bază

Deși pare un pic paranoic, după ce am înțeles ce rol au majoritatea setărilor din politicile de securitate din organizația militară (prin natura funcției) cred personal că este nevoie de o parte din aceste setări suplimentare (de bază pentru securitate) și pe sistemele din alte organizații și chiar și pe sistemele informatice personale. Soluția pentru această problemă o oferă chiar Microsoft care RECOMANDĂ pentru securizarea sistemelor instalarea unor șabloane de securitate de bază. Acestea sunt puse la dispoziție (baseline policies) pentru mai multe versiuni de sisteme de operare și chiar pentru diferite roluri de servere, împreună cu instrumentul pentru instalarea unei politici locale, prin Security Compliance Manager/SCM V3.0.

Figura 5.27 Consola SCM 3.0

Aș fi putut să configurez câteva setări de securitate manual (gpedit.msc) pe politica locală din Windows 7, dar când am văzut că șablonul securității de bază de la Microsoft numai pe partea de calculator conține 261 de setări am considerat că doar editarea câtorva setări nu este de ajuns pentru securizarea sistemului.

Am folosit pentru o securizare foarte bună a Windows 7, șabloanele securității de bază de la US DoD în colaborare cu Microsoft, puse la dispoziția publicului pe site-ul National Institute of Standards and Technology/NIST; acestea pot fi aplicate cu succes atât pe sistemele informatice din organizații, cât și pe sistemele locale. După instalarea șablonului pe o mașină de test, se mai poate interveni și se mai pot activa/dezactiva setări care nu sunt conforme cu standardele organizației sau care provoacă disfuncționalități. Apoi șablonul se poate exporta și muta pe toate stațiile cu Windows 7 care nu sunt în domeniu (workgroup).

Figura 5.28 Sabloane DoD NIST

Instrumentul pentru instalarea unei politici locale este LGPO_V2 (se găsește în directorul unde a fost instalat SCM). LGPO are două versiuni, prima neavând capabilități de a efectua compararea de politici.

Figura 5.29 Instalarea LocalGPO Tool

Pentru a ușura operațiunea de instalare a politicilor am creat un script instalare_politica.cmd cu ajutorul căruia am rulat instalarea tuturor celor patru sabloane.

Figura 5.30 Script instalare automată politici

Instalarea șablonului (șabloanelor în acest caz) se face folosind LocalGPO Command Line, rulat ca și administrator.

Figura 5.31 Instrumentul pentru instalarea politicii de securitate

Figura 5.32 Instalare politică de securitate

După restartare și aplicarea politicii de securitate suntem întâmpinați de CTRL+ALT+DEL (SAS), apoi cu un mesaj, pe care dacă vrem îl putem elimina, sau particulariza (pentru o organizație).

Figura 5.33 Politica aplicată

Din punct de vedere al securității, mai putea edita folosind gpedit.msc câteva din setările LGPO; orice setare care duce la nefuncționarea unui serviciu poate fi modificată manual (de exemplu se poate activa Remote Desktop, dacă organizația are în analiza de risc acceptat un asemenea serviciu). Trebuie făcut un compromis între securitate și funcționalitate, iar dezactivarea unor mecanisme și setări de securitate trebuie făcută doar după o analiză a riscurilor și acceptare a acestora.

Controlul rulării aplicațiilor

Pentru securizarea sistemului se pot activa și regulile implicite pentru AppLocker. Această componentă permite un control al rulării programelor numai din locații bine determinate, asigurând protecția împotriva scripturilor și executabilelor (exe,scr,dll) cu cod malițios care rulează de obicei din locații ascunse.

Configurarea AppLocker se poate face din setările de securitate ale politicii locale (Computer configuration\Policies\Windows settings\Security settings\Application control policies). Regulile implicite care se pot crea permit utilizatorului să ruleze programe doar din Program Files și %systemroot%.

.

În organizații pot fi definite liste de aplicații care au dreptul să ruleze pe sistem (Application whitelisting) conforme cu politica internă.

De asemenea, dacă este vorba de sistemele informatice ale unei organizații, putem să blocăm (software) porturile USB, modificând permisiunile NTFS pe cele 3 fisiere (usbstor.inf și usbstor.pnf din %systemroot%\inf și USBSTOR.SYS din %systemroot%\System32\drivers\) în Deny Explicit, în scopul protecției datelor organizației (împotriva exfiltrării sau modificării/indisponibilizării acestora). Dacă echipamentele nu au dispozitive de intrare pe USB (mouse&tastatură) porturile pot fi blocate hardware din BIOS.

De obicei pe sistemele informatice nu rămân doar pachetele software implicite de la Microsoft ci sunt instalate și alte aplicații. Actualizarea constantă a acestora trebuie să face parte din planul de măsuri de securizare continuă a sistemului informatic.

Pentru a nu crea vulnerabilități sistemului, după ce am instalat toate măsurile de siguranță, este recomandat să nu se instaleze deloc software cunoscut ca fiind vulnerabil (Oracle Java, Adobe Reader or Adobe Flash), iar software-ul ”gratuit” descărcat de pe Internet să fie din surse reputabile (și verificat în prealabil pe site-uri de tipul https://www.virustotal.com/ (care conține resurse de la mai mulți producători antimalware). Chiar dacă am implementat și o politică care conține aproximativ 100 de setări pentru Internet Explorer, pentru navigarea pe Internet este recomandat un alt browser decât Internet Explorer, cunoscut pentru locul fruntaș în topul software-lui vulnerabil.

Concluzii

Cuantificând matematic securitatea sistemelor informatice, în formula analizei riscurilor (), consecințele sunt cele care contează cel mai mult, iar măsurile care se iau (de control) sunt în consecință cu acestea.

Atacurile recente au demonstrat nevoia unei noi abordări și reconsiderări a consecințelor care, uneori deși nu par critice pentru utilizatorul casnic, prin prisma faptului că digitizarea a dus la folosirea identității în aprope toate aspectele vieții cotidiene, pot deveni critice atunci când au loc furturi de identitate sau de date care pot avea efect direct sau indirect cu acesta, în prezent sau în viitor. La DefCon 2105 un reporter a fost de acord să facă un test în care acesta era o victimă a unui atac cibernetic. La final, hackerul care a avut acces în sistemul său informatic (cu accept) i-a spus că, cu datele obținute prin monitorizarea electronică ”ascunsă”/stealth în urma accesului în sistemul informatic al jurnalistului, ar fi putut să-l lase ”homeless” &”penyless” – nu cred că mai este nevoie să mai traduc termenii! Nu mai spun de efectul asupra unei companii atunci când datele sale interne (furnizori, contracte, viitoare planuri de afaceri, fuziuni) sunt compromise.

Prin folosirea măsurilor de control se poate reduce ”suprafața de atac”/vulnerabilitățile, se pot reduce amenințările/threats prin luarea măsurilor în consecință pentru blocarea acestora (închidere port, reconfigurare serviciu), se pot reduce chiar consecințele (separare fizică/”air gapped network/PC”, DMZ). Majoritatea problemelor au rezolvare, însă chiar faptul că există atât de multe rezolvări și avem această inundare informațională, ajungem să nu știm ce să facem și ce măsuri să luăm.

Măsurile luate pentru configurarea securității locale a sistemelor informatice trebuie să facă parte componentă din planul general de măsuri pentru securizarea întregului SIC (rețele/sistem de comunicații și informatică). Exercițiul de securizare a unui sistem informatic din finalul lucrării nu este menit să aducă mai multă informație peste cea existentă într-o organizație legată de practicile interne de securizare (proceduri operaționale) ci vrea să vină și ca model de securizare cu instrumente ”gratuite” și integrate în sistem, la dispoziția tutror celor care vor să implemeteze o securitate de bază pe un sistem informatic. Oricum securitatea absolută nu o vom putea obține!

Timpul de editare a măsurilor de control manual din politica locală a fost redus la minim prin folosirea unei ”bune practici” și implementarea recomandărilor (politicilor locale) de la o entitate binecunoscută în ”distribuția de securitate” (parteneriat DoD& Microsoft).

Implementarea măsurilor de securitate trebuie să fie o practică continuă, și oricând sistemul trece dintr-o stare ”sigură” într-una cu o nouă imagine a ”suprafeței sale de atac”, este nevoie de o analiză a riscurilor care poate implica necesitatea implementării unor noi măsuri.

Bibliografie

M. Russinovich, D. A. Solomon, A. Ionescu – Windows Internals – a șasea ediție –, Microsoft Press, Redmond, Washington, 2012

Microsoft Virtual Academy – Windows 8 Security Insight Course

https://tutorials.cyberaces.org/tutorials

Microsoft Computer Dictionary 5th edition

https://usgcb.nist.gov/usgcb/microsoft/download_win7.html

https://technet.microsoft.com/en-us/sysinternals/processexplorer.aspx

https://technet.microsoft.com/en-us/library/security/dn631938.aspx

http://www.wilderssecurity.com/threads/elam-early-launch-antimalware-and-avs-supporting-it.369386/

https://technet.microsoft.com/en-us/library/security/ms08-067.aspx

https://www.microsoft.com/en-us/download/details.aspx?id=7558

https://technet.microsoft.com/en-us/security/jj653751

https://nmap.org/

https://www.av-test.org/en/antivirus/home-windows/

https://www.avecto.com/media/1030/report-microsoft-vulnerability-study.pdf

http://www.wilderssecurity.com/threads/elam-early-launch-antimalware-and-avs-supporting-it.369386/

https://blogs.msdn.microsoft.com/b8/2012/07/10/protecting-user-files-with-file-history/

Microsoft Computer Dictionary 5th edition

https://www.sans.org/critical-security-controls

Similar Posts