fdcc – federal desktop core configuration 1.1

58
FDCC - Federal Desktop Core Configuration Overview Luca Mella - [email protected] - v1.1 1

Upload: luca-mella

Post on 09-Jun-2015

335 views

Category:

Technology


4 download

TRANSCRIPT

FDCC - Federal Desktop CoreConfiguration

Overview

Luca Mella - [email protected] - v1.1 1

FDCC Overview 1/2

• Non un ”Standard Desktop” ma una bensì “Standard Security Configuration”

• Configurazioni per sistemi general-purpose collegati direttamente alla rete.

• Basate su “Principe of Least Privilege”

• Lista vera e propria di security setting raccomandate dal NIST [National Institute of Standards and Technologies]

• Oltre 400 raccomandazioni:• Impostazioni rete, IE.• Robustezza password• Minor accesso ad account “Administrator”• [..]

Luca Mella - [email protected] - v1.1 2

Che cos’è FDCC? Perché? Come?

FDCC Overview 2/2

• Configurazioni orientate alle Agenzie Governative, che necessitano di elevati standard di sicurezza e di valutazioni attendibili.• Dal 4 febbraio 2008, conformità FDCC è richiesta in

tutte le agenzie governative US.

• Applicabili solo a sistemi Microsoft Windows XP/Vista.

• Adesione e documentazione verificabile via SCAP tools.

• Deployment via Group Policy.

Luca Mella - [email protected] - v1.1 3

Che cos’è FDCC? Perché? Come?

FDCC Target Machines

• Destinate a XP/Vista Desktop e Laptop computer.

• Non applicabili a:• macchine Windows collegate a dispositivi

scentifici/biomedicali.• Non applicabili a versioni server di Windows XP/Vista

[Windows server 2003/2008 xx]

• Non applicabili a Macintosh e Linux• Questi sistemi sono comunque in stato di revisione per

una futura inclusione..

Luca Mella - [email protected] - v1.1 4

A quali macchine sono destinate tali configurazioni?

Un po’di storia.. 1/2

• 20 marzo 2007• OMB [Office of Management and Budget] rilascia una nota

istruttoria riguardante i piani di utilizzo e le configurazioni di sicurezza per sistemi Windows Xp/Vista

• Proposte le configurazioni di sicurezza adottate da USAF come modello preliminare.

• NIST sviluppa (e mantiene) la linea guida di FDCC, in collaborazione con OMB, NSA, USAF DHS, DISA e Microsoft.

Luca Mella - [email protected] - v1.1 5

Come è nata FDCC?

Un po’di storia.. 2/2

• Windows Vista FDCC• personalizzazione della guida “Security Guides for both

Windows Vista and Internet Explorer 7.0” effettuata dal DoD [Department of Defense]

• Windows XP FDCC• personalizzazione di SSLF [Specialized Security-Limited

Functionality] del NIST:• Frutto della modifica alla guida Microsoft “Security Guide for

Internet Explorer 7.0”

Luca Mella - [email protected] - v1.1 6

Come è nata FDCC?

Solo Windows Xp e Vista?

• NIST non impone il deployment di soli sistemi Windows XP/Vista

• Non decide prerequisiti e condizioni per le forniture.

• Numerose “security guidance” sono disponibili per il resto dei sistemi.

• Documentazione dettagliata frutto di NCP [National

Checklist Program] è reperibili qui : http://checklists.nist.gov• Guidance Mac

http://web.nvd.nist.gov/view/ncp/repository/checklist/download?id=275

Luca Mella - [email protected] - v1.1 7

Come è nata FDCC?

Ma come si può capire su rispettiamo FDCC?

• Esiste qualche tool per capire lo stato della nostra macchina?

• Come funziona?

• Perché?

• [..]

Luca Mella - [email protected] - v1.1 8

Prima di scendere nel dettaglio..

SCAP [Security Content Automation Protocol]

Overview

[Pronuncia: S-CAP]Luca Mella - [email protected] - v1.1 9

SCAP Overview 1/2

• SCAP è un set di standard atti ad alla gestione delle vulnerabilità.• http://scap.nist.gov/

• Automazione, Misurazione, valutazione di conformitàFDCC.

• NVD [National Vulnerability Database], repository dicontenuti per SCAP. • security checklist, difetti del sw, errori di configurazione,

nomi di prodotti e metriche d’impatto.• http://nvd.nist.gov/

Luca Mella - [email protected] - v1.1 10

Overview

SCAP Overview 2/2

• Standard aperti per:• Enumerare difetti di software.

• Configuration issues.

• Nomi di prodotti.

• Individuazione e misura di vulnerabilità.

• Report per valutare l’impatto di un attacco e la possibilità di un attacco.

Luca Mella - [email protected] - v1.1 11

Overview

SCAP Componenti 1/2

• Enumerazioni• Common Vulnerabilities and Exposures (CVE)• Common Configuration Enumeration (CCE)• Common Platform Enumeration (CPE)

• Metriche• Common Vulnerability Scoring System (CVSS)

• Linguaggi• Extensible Configuration Checklist Description Format

(XCCDF)• Open Vulnerability and Assessment Language (OVAL)

Luca Mella - [email protected] - v1.1 12

Standard aperti

SCAP Componenti 2/2

Luca Mella - [email protected] - v1.1 13

Interpolazione

Software Flaw Management

CVE

CPE CCESCAP

OVALCVSS

Compliance Management

XCCDF

AssetManagement

ConfigurationManagement

Common Vulnerabilities and Exposures (CVE)

• Dizionario di informazioni riguardo a vulnerabilità ed esposizione a vulnerabilità.

• UN nome standard.• UNA descrizione standard.• Database e tool eterogenei devono “parlare” la stessa lingua.• Nato nel 1999

• tool differenti chiamavano diverse vulnerabilità con stesso nome.

• “CVE-Compatibility” rilasciata ai sw dopo opportune valutazioni.• Sito ufficiale: http://cve.mitre.org/

Luca Mella - [email protected] - v1.1 14

Dictionary of security related software flaws

Common Configuration Enumeration(CCE)

• Identificatori univoci per problemi di configurazione.

• “CCE-Id” per associare esiti di controlli con istruzioni pubblicate in documenti “best-pratice”.

• Maggiore interpolabilità• Facilita la raccolta di metriche nei processi di security

audit.

• Agile correlazione dei dati.

• CCE-Id sono utilizzati nelle impostazioni specificate in FDCC.

• Sito ufficiale: http://cce.mitre.org/about/index.html

Luca Mella - [email protected] - v1.1 15

Dictionary of software misconfigurations

Common Platform Enumeration (CPE) 1/2

• Naming-scheme strutturato per sistemi informatici, piattaforme e pacchetti.• Formalizzazione, consistenza, uniformità.

• Sintassi URI [Uniform Resource Identifier]• cpe:/<part>:<vendor>:<product>:<version>:<update>:<edition>:<language>

• Sito ufficiale http://cpe.mitre.org/about/index.html

• Specifiche http://cpe.mitre.org/specification/index.html

Luca Mella - [email protected] - v1.1 16

Standard nomenclature and dictionary for product naming

Common Platform Enumeration (CPE) 2/2

Luca Mella - [email protected] - v1.1 17

Struttura

Common Vulnerability Scoring System (CVSS) 1/3

• Open Framework per comunicare caratteristiche ed impatti delle vulnerabilità.

• Definire priorità e coordinare risposte alle vulnerabilità.

• 3 gruppi di metriche per le vulnerabilità:• proprietà di base

• proprietà temporali

• proprietà ambientali

• Ogni gruppo consiste in un set di metriche.

• Sito ufficiale: http://www.first.org/cvss/cvss-guide.html

Luca Mella - [email protected] - v1.1 18

Standard for scoring the impact of vulnerabilities

Common Vulnerability Scoring System (CVSS) 2/3

Luca Mella - [email protected] - v1.1 19

Metrics

Common Vulnerability Scoring System (CVSS) 3/3

• Vengono calcolati punteggi base da 0 a 10.• Il vettore dei punteggi base può essere raffinato attraverso altre metriche.• Base e temporal scores sono specificati da bollettini dei produttori o di analisti,

Enviromental scores sono definiti dall’utente.• Score calculator : http://nvd.nist.gov/cvss.cfm?calculator&adv&version=2

Luca Mella - [email protected] - v1.1 20

How does it works?

Extensible Configuration ChecklistDescription Format (XCCDF) 1/2

• Linguaggio XML-based• scrittura di checklist di configurazioni e patch.

• Documenti XCCDF rappresentano:• Insieme strutturato di regole.

• Configurazioni per sistemi.

• Automatizzazione test di conformità.

• Progettato per supportare l’integrazione di piùchecking engines.

Luca Mella - [email protected] - v1.1 21

Standard XML for specifying checklists

Extensible Configuration ChecklistDescription Format (XCCDF) 2/2

• Report: human-readable, riguardo conformità. Include punteggio e Pass/Fail deibenchmark.

• Result: machine-readable, riguardo a conformità, per long term tracking• FixScript: machine-readable , script per rimediare alle inconformità.

Luca Mella - [email protected] - v1.1 22

Open Vulnerability and Assessment Language (OVAL) 1/2

• Standardizza il modo di valutare e riferire sullo stato di un sistema.

• 3 principali fasi del processo di valutazione:• Rappresentazione delle informazioni.• Analisi del sistema per la presenza di stati macchina specificati

(vulnerabilità, configurazioni, stato patch ..)• Reporting.

• 3 schemi XML-based fungono da dizionario e da framework:• System Characteristics schema, per informazioni di sistema.• Definitions schema, per esprimere uno specifico stato macchina.• Results schema, per reporting.

• Repository mantenuti dalla comunità.

Luca Mella - [email protected] - v1.1 23

Standard XML for checking machine state

Open Vulnerability and Assessment Language (OVAL) 2/2

Luca Mella - [email protected] - v1.1 24

Example “Hello World”<registry_test id="oval:tutorial:tst:1" check="all">

<object object_ref="oval:tutorial:obj:1"/>

<state state_ref="oval:tutorial:ste:1"/>

</registry_test>

<registry_object id="oval:tutorial:obj:1">

<hive>HKEY_LOCAL_MACHINE</hive>

<key>SOFTWARE\oval</key>

<name>example</name>

</registry_object>

<registry_state id="oval:tutorial:ste:1">

<value>Hello World</value>

</registry_state>

La struttura del Test in OVAL semplicementecombina riferimenti a oggetti di sistema(registry key qui) agli stati che vogliamoverificare.

<definition id="oval:tutorial:def:1">

<metadata>...</metadata>

<criteria>...</criteria>

</definition>

Le definizioni sono il cuore del linguaggio, il loro scopo è permettere di combinare vari test con operandi logici AND /OR

<metadata> <title>Hello World Example</title>

<description>[..]</description> </metadata>Descrizione testuale di cosa si sta controllando

<criteria>

<criterion test_ref="oval:tutorial:tst:1"

comment="the value of the registry key equals Hello

World"/>

</criteria>

Contiene tutti i test da svolgere collegati tra loro da operandi AND/OR

OVAL e XCCDF

Luca Mella - [email protected] - v1.1 25

Chiarimento - Scope dei linguaggi

Supporto alla personalizzazione delle “security guidance”

Colleziona, struttura, organizza “security guidance”

Valuta la conformità

Definizione di test per verificare conformità

Test “system-specific” dello stato del sistema

Caratterizzazione stati di sistema (low-level).

Pla

tfo

rmin

dip

en

den

tP

latf

orm

dep

end

ent

SCAP Capabilities

• Federal Desktop Core Configuration (FDCC) Scanner

• Authenticated Configuration Scanner• Authenticated Vulnerability [and Patch] Scanner• Unauthenticated Vulnerability Scanner• Intrusion Detection and Prevention• Patch Remediation• Mis-configuration Remediation• [..]

Luca Mella - [email protected] - v1.1 26

Principali utilizzi di SCAP

SCAP Products

• SCAP è destinato ad effettuare misurazioni e monitoraggio delle configurazioni di sicurezza

• Le versioni future punteranno a standardizzare ed automatizzare il deployment e la modifica delle security settings.

• Lista dei prodotti validati : http://nvd.nist.gov/scapproducts.cfm

(sono presenti anche FDCC scanner)

Luca Mella - [email protected] - v1.1 27

Implementazione di SCAP

FDCC - Federal Desktop CoreConfiguration

Configurazioni Principali

Luca Mella - [email protected] - v1.1 28

FDCC – Login

• CTRL+ALT+DEL richiesto.• Lock della postazione in caso di rimozione smart card.• Ultimo username non più salvato nella schermata di

logon.• Caching in locale di massimo 2 profili utente.• Disabilitazione Account “Administrator” [Vista] e “Guest”.

• Renaming di “Administrator” e “Guest”.

• Account lockout threshold: 5 tentativi– Profilo bloccato per 15 minuti– Default: 0

• Disabilitazione di “run once list”.– HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce– Non vengono eseguite applicazioni specificate dall’utente in tale lista, ignorate dal

sistema.

Luca Mella - [email protected] - v1.1 29

Login

FDCC - ActiveX

• Impedita installazione di controlli con firma non valida.

• Amministratore può firmare i controlli (AD)

• Impossibilità di scaricare controlli ActiveX (firmati e non) da fuori dall’intranet.

• Blocco delle installazioni di controlli ActiveX direttamente da IE [XP]

• Vista utilizza ActiveX Installer Service [AxIS], che permette il download e l’installazione di controlli da siti fidati impostati via Group Policy.

Luca Mella - [email protected] - v1.1 30

ActiveX

FDCC – Password

• Cambio Password ogni 60 giorni

• Complexity Requirements• Lunghezza minima: 12 caratteri.

• Non deve contenere il nome utente.

• Deve contenere [A-Z],[a-z],[0-9] e caratteri speciali.

• Differenza da vecchie password.

• Password history• Ricordate 24 old password.

• Occorre password non vuota perché un account possa essere utilizzato per autenticazione in servizi di rete (TS,Telnet,FTP..)

Luca Mella - [email protected] - v1.1 31

Rafforzamento password

FDCC - AD

• Encrypt or sign secure channel data (always)– Comunicazioni con Domain Controller sempre crittate o firmate.

• Require strong (Windows 2000 or later) session key– Non collegarti a DC che non possono offrire crittografia forte (min

128bit).

Luca Mella - [email protected] - v1.1 32

Domain member

FDCC – Networking 1/7

• Disable IP Source Routing.

• IP source routing è un meccanismo che permette al mittente di determinare il percorso del datagramma IP che assumerà attraverso la rete.

• Instradamento non frequente nelle reti IP in quanto permette all'utente di scegliere le rotte piuttosto che affidarsi al routing dinamico.

• E’ possibile effettuare un attacco di “IP spoofing”, in cui si ricevono anche i pacchetti di risposta [man in the middle]

Luca Mella - [email protected] - v1.1 33

Level 3 – Source Routing

FDCC – Networking 2/7

Luca Mella - [email protected] - v1.1 34

Level 3 – Source Routing - Scenario

10.1.0.210.1.0.210.1.0.1

10.2.1.1

10.27.1.7

SR - list ofintermediate ip

10.27.1.7

10.2.1.1

10.1.0.1

10.1.0.50

Packet form 10.1.0.2to 10.1.0.1

FDCC – Networking 3/7

• Deny ICMP redirects to override OSPF generated routes.

• The Redirect Message is an ICMP message (type 5) which informs a host to update its routing information (to send

packets on an alternate route).

• Properly constructed ICMP packet that passes all sanity checks (it must come from the default router for the destination it's

redirecting, new router should be on a directly connected network, etc.) it causes a host-route entry be added to the system routing table.

• Default: Enabled [XP]

Luca Mella - [email protected] - v1.1 35

Level 3 – ICMP redirects

FDCC – Networking 4/7

Luca Mella - [email protected] - v1.1 36

Level 3 – ICMP redirects - Scenario

1) Spoofed icmp_r pkt:Passa da Router C (oppure D) per arrivare a User B

2) Pkt from A to B, after reciving the icmp_r pkt.

DoS

[Gateway di User A]

FDCC – Networking 5/7

• Disallow IRDP [Internet Router Discovery Protocol] to detect and configure DefaultGateway addresses (could lead to DoS)• basically consists of 2 ICMP Message-Types:

• 9 - Router Advertisement (in risposta)

• 10 - Router Solicitation (inviato dal client)

• When a client receives a message type 9, they are adding the router to their local routing-table.

• By spoofing IRDP Router Advertisements, an attacker can remotely add default route entries.

• Effetti possibili:• DoS by changing the default gateway to something invalid

• Sniffing and/or MITM attacks if changing the gateway to a router under the attacker's control.

• http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-1999-0875

Luca Mella - [email protected] - v1.1 37

Level 3 - IRDP

FDCC – Networking 6/7

• Syn attack protection level (protects against DoS)• The connection responses time-out more quickly in the event of a

connect request (SYN) attack.

• SYN Flood Attack [DoS]• Using a spoofed IP address not in use on the Internet, an attacker sends

multiple SYN packets to the target machine.

• For each SYN packet received, the target machine allocates resources and sends (SYN-ACK) to the source IP address.

• Because the target machine doesn't receive a response from the attacking machine, it attempts to resend the SYN-ACK five times, at 3-, 6-, 12-, 24-, and 48-second intervals before unallocating the resources.

• Pacchetti dati ritrasmessi per 3 volte in mancanza di ACK [TCP]• Default 5

Luca Mella - [email protected] - v1.1 38

Level 3 – SYN attack

FDCC – Networking 7/7

• Do not store LAN Manager hash value.– LAN Manager is prevented from storing hash values for the new

password. It is important to enable this setting since the LAN Manager Hash is a prime target of many hackers.

» LM Hashes sono password cifrate in malomodo, senza salt ad esempio.

» Rainbow tables ottimizzano tempi di cracking per hash non salted (space-time tradeoff).

Luca Mella - [email protected] - v1.1 39

LMHash

FDCC - Administration

• Disallow automatic administrative logon usingRecovery Console.

• Driver non firmati sono stati vietati.

• Administrators can sign drivers.

• User Account Control abilitato [Vista]

• Richiede credenziali, non più solo conferma.

• Privilegi di amministrazione rimossi

• installazioni sw solo da “Administrator”.

• ..

Luca Mella - [email protected] - v1.1 40

Administration

FDCC - ACLs

• at.exe

• Pianifica l’esecuzione di comandi

• Regedit.exe

• arp.exe, debug.exe

• route.exe

• Per visualizzazione e modifica tabelle di routing

• Net.exe

• Will impact orgs that use logon scripts

• [..]

Luca Mella - [email protected] - v1.1 41

Esecuzione revocata agli utenti..

FDCC – Services 1/2

• Disable Universal Plug and Play Device Host• UPnP != PnP

• Set of networking protocol that aims to crate a p2p network between pc and network peripherals.

• Many UPnP device implementations lack authentication mechanisms.

• Flash programs are capable of generating a specific type of HTTP request. This allows a router implementing the UPnP protocol to be controlled by a malicious web site when someone with a UPnP-enabled router simply visits that web site.

• Wireless Zero Configuration / WLAN AutoConfig• Dynamically selects a wireless network to connect to.

Luca Mella - [email protected] - v1.1 42

Alcuni servizi disabilitati

FDCC – Services 2/2

• Messenger• Servizio per l’invio/ricezione di messaggi ad host (solitamente in

LAN)• Es: net send {IP address/computer name/* (broadcast)} {message}

• NetMeeting Remote Desktop Sharing• Makes it possible for a remote user with NetMeeting to access

your computer.

• FTP Publishing Service• Indexing Service• SSDP Discovery Service

• detection of Universal Plug and Play (UPnP) devices on network.

• [..]

Luca Mella - [email protected] - v1.1 43

Alcuni servizi disabilitati

FDCC - Federal Desktop CoreConfiguration

Deployment

Luca Mella - [email protected] - v1.1 45

GPOs – Cenni

• Set of rules which control the working environment of user accounts and computer accounts.

• Group Policy settings are enforced voluntarily by the targeted applications.• Attacker can modify or interfere with the application so that it cannot successfully read its

Group Policy settings, thus enforcing potentially lower security defaults or even returning arbitrary values.

• In many cases, this merely consists of disabling the user interface for a particular function, without disabling lower-level means of accessing it.

• Group Policy client operates on a "pull" model (AD)• Every 90-120min it will collect the list of GPOs appropriate to the machine and logged on

user.• then apply GPOs, this might change the behavior of policy-enabled os compoments.

• Local Group Policy (LGP)• Can configure the Group Policy for a single local computer.• Can not make policies for individual users or groups (XP).

• Multiple Local Group Policy objects (MLGPO)• allows setting local Group Policy for individual users (VISTA).

Luca Mella - [email protected] - v1.1 47

Group Policy Objects

FDCC – Deployment LGP 1/3

• E’disponibile un comodo tool per deploy LGP.

• Blog su MS technet: http://blogs.technet.com/fdcc/archive/tags/FDCC/default.aspx

• Eseguibili: http://blogs.technet.com/fdcc/attachment/3051648.ashx

• Sorgenti: http://blogs.technet.com/fdcc/attachment/3306001.ashx

Luca Mella - [email protected] - v1.1 48

Installazione FDCC su macchina standalone

FDCC – Deployment LGP 2/3

• Aprire la shell nella cartella dei tools

• Lanciare il comando:

• Set_FDCC_LGPO.exe [/log LogFile] [/errorErrorLogFile] [/boot]

• Per settare le configurazioni registry-based.

• Set_FDCC_LGPO.exe [/Sec] [/log LogFile] [/errorErrorLogFile] [/boot]

• Per settare anche le security policy.

Luca Mella - [email protected] - v1.1 49

How to

FDCC – Deployment LGP 3/3

Luca Mella - [email protected] - v1.1 50

Deployng..

FDCC - Federal Desktop CoreConfiguration

Confomity Assessment via SCAP Tools

Luca Mella - [email protected] - v1.1 51

Assessment Tools

• Numerosi prodotti permettono di verificare la conformità a FDCC (e non solo..)

• Quasi tutti a pagamento…

• http://nvd.nist.gov/scapproducts.cfm

• Secutor Prime di Threat Guard è disponibile in versione free!

• http://www.threatguard.com/downloads.htm

Luca Mella - [email protected] - v1.1 52

Come verificare?

XP Professional Prima di FDCC 1/3

Luca Mella - [email protected] - v1.1 53

XP Professional Prima di FDCC 2/3

Luca Mella - [email protected] - v1.1 54

XP Professional Prima di FDCC 3/3

Luca Mella - [email protected] - v1.1 55

XP Professional dopo FDCC

Luca Mella - [email protected] - v1.1 56

Risultati..

Luca Mella - [email protected] - v1.1 57

Prima di FDCC:

Compliance 46%

Dopo FDCC (solo registry-based)

Compliance 68%

Dopo FDCC( /SEC )

Compliance 96%

Questions..?

Luca Mella - [email protected] - v1.1 58