fdcc – federal desktop core configuration 1.1
TRANSCRIPT
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 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) 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 – Configurazioni
• Il resto delle configurazioni elencate in dettaglio sono reperibili qui :
• http://nvd.nist.gov/fdcc/FDCC-Settings-major-version-1.2.x.0.xls
Luca Mella - [email protected] - v1.1 44
Ma.. solo queste?
FDCC – Deployment
• Active Directory GPOs• Deployment centralizzato.
• Rafforzamento delle policy di dominio.
• http://www.microsoft.com/industry/government/federal/fdccdeployment.mspx
• Soluzioni Commerciali per deployment e audit.
• Local GPOs• Standalone workstation.
• No domino AD.
• Tool per deployment.
Luca Mella - [email protected] - v1.1 46
Come è possibile applicare FDCC?
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 - 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?
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%