NGI Stuxnet: Beveiliging en audit van proces-IT
Stuxnet: Beveiliging en audit van proces-IT Jurgen van der Vlugt Noordbeek B.V.
[email protected]
25 november 2010, Regio Rotterdam / Afdeling IT-Auditing
Intro; ik = Ir.drs. J. (Jurgen) van der Vlugt RE CISA CRISC • Bedrijfseconomie (Rotterdam) • Technische Informatica (Delft) • Post-grad IT-auditing (VU) • KPMG EDP Auditors / IRM (WinNT, Y2K) • Sogeti • ABN AMRO (Group Audit, Group Security) • Noordbeek (Tot 1 december 2010) • NGI, NOREA (VC, CBr, …), ISACA, ISSA, PvIB
Stuxnet: Beveiliging en audit van proces-IT
1
2
NGI Stuxnet: Beveiliging en audit van proces-IT
Agenda • • • • • •
Maeslant en ( ﮉ1) Proces-IT Security Administratieve systemen en zo Wat nu ..? Uitsmijter
(1) Wat heb ik nou aan me fiets hangen?
Stuxnet: Beveiliging en audit van proces-IT
3
Neerlands Trots
Stuxnet: Beveiliging en audit van proces-IT
2
4
NGI Stuxnet: Beveiliging en audit van proces-IT
Stuxnet: Beveiliging en audit van proces-IT
5
Stuxnet • • • • •
Sinds juni (?) in omloop / in beeld (Note: Eerste variant vd worm: juni 2009)1 Zeer veel kennis erin Team effort Niet uit op creditcard-info. Huh? September: • • • •
• •
Vooral anti-Iran ‘Opstart kerncentrale uitgesteld’ Round up the usual suspects Verspreiding: 65k Iran, 12k India, … 180 NL; 155 landen)
Sporen van politieke boodschappen (?) Israël ..? Wie?
1 Bron: Eric Luiijff (TNO/NICC) Stuxnet: Beveiliging en audit van proces-IT
3
6
NGI Stuxnet: Beveiliging en audit van proces-IT
Analyse •
Siemens S7-300 CPU + CP-342-5 Profibus communications modules which monitor and control frequency converter drives build by two companies (one in Iran, one in Finland) motors must run between 807 Hz and 1210 Hz
•
THEN during short intervals/ month to 1402 Hz, 2 Hz, 1064 Hz
Stuxnet: Beveiliging en audit van proces-IT
7
It giet oan • Probleem: Slechte beheersing proces-IT • Al lang bekend • NICC, Govcert.nl, et al. • Genoegzaam gewaarschuwd?
• • • •
Na bragging rights over virussen En na financieel gewin via banking trojans Nu third wave “Cyberwarfare” Stuxnet: Beveiliging en audit van proces-IT
4
8
NGI Stuxnet: Beveiliging en audit van proces-IT
Agenda • • • • • •
Maeslant en ﮉ Proces-IT Security Administratieve systemen en zo Wat nu ..? Uitsmijter Stuxnet: Beveiliging en audit van proces-IT
9
Proces-IT • Vanuit de elektrotechniek • Specialistisch • Kritieke systemen!
Stuxnet: Beveiliging en audit van proces-IT
5
10
NGI Stuxnet: Beveiliging en audit van proces-IT
Levels
Stuxnet: Beveiliging en audit van proces-IT
11
Elementen •
HMI: Human-Machine Interface • Monitoring • Control
•
Supervisory (computer) system • Data-acquisitie • Control commands sturen
•
RTUs: Remote Terminal Units • Connect sensors in het proces • Converteren sensorsignalen naar digitaal • Zenden digitale signalen naar supervisory system
•
PLCs: Programmable Logic Controllers
•
Communicatie-devices/kabels
• ‘Field devices’: goedkoper en flexibeler dan special-purpose RTUs
Stuxnet: Beveiliging en audit van proces-IT
6
12
NGI Stuxnet: Beveiliging en audit van proces-IT
Meer
Stuxnet: Beveiliging en audit van proces-IT
13
Control
Stuxnet: Beveiliging en audit van proces-IT
7
14
NGI Stuxnet: Beveiliging en audit van proces-IT
SCADA • • • •
Nota bene: PLCs controllen standaardproces RTUs pakken afwijkingen op Mensen pakken afwijkingen op hoger niveau op (iff) • Tag db: • Tags/points = gemonitorde I/O waarde • Hard (1) / soft (combi) • + Timestamp, + Metadata Stuxnet: Beveiliging en audit van proces-IT
15
Plaatje (Historian)
Stuxnet: Beveiliging en audit van proces-IT
8
16
NGI Stuxnet: Beveiliging en audit van proces-IT
Stuxnet: Beveiliging en audit van proces-IT
17
Stuxnet: Beveiliging en audit van proces-IT
18
9
NGI Stuxnet: Beveiliging en audit van proces-IT
Stuxnet: Beveiliging en audit van proces-IT
19
Stuxnet: Beveiliging en audit van proces-IT
20
10
NGI Stuxnet: Beveiliging en audit van proces-IT
P-roblemen • Geen aandacht voor beveiliging en autenticatie in ontwerp, uitrol, operations in huidige generaties SCADA-netwerken • (Geen) security through obscurity (meer) • Vertrouwen op speciale protocollen, proprietary interfaces (nog!) • ‘Fysieke beveiliging is voldoende’ • ‘Hangen niet aan het Internet’ Stuxnet: Beveiliging en audit van proces-IT
21
Wat als het misgaat • • • •
Zichtbaar ? Positieve feedforward ? Te laat ? Ingrijpen mogelijk ?
Stuxnet: Beveiliging en audit van proces-IT
11
22
NGI Stuxnet: Beveiliging en audit van proces-IT
Ook Shattered Shield 'I Had A Funny Feeling in My Gut' By David Hoffman Washington Post Foreign Service Wednesday, February 10, 1999; Page A19 •
It was just past midnight as Stanislav Petrov settled into the commander's chair inside the secret bunker at Serpukhov15, the installation where the Soviet Union monitored its early-warning satellites over the United States.
• •
Then the alarms went off. On the panel in front him was a red pulsating button. One word flashed: "Start." It was Sept. 26, 1983, and Petrov was playing a principal role in one of the most harrowing incidents of the nuclear age, a false alarm signaling a U.S. missile attack. Although virtually unknown to the West at the time, the false alarm at the closed military facility south of Moscow came during one of the most tense periods of the Cold War. And the episode resonates today because Russia's early-warning system has fewer than half the satellites it did back then, raising the specter of more such dangerous incidents. As Petrov described it in an interview, one of the Soviet satellites sent a signal to the bunker that a nuclear missile attack was underway. The warning system's computer, weighing the signal against static, concluded that a missile had been launched from a base in the United States. The responsibility fell to Petrov, then a 44-year-old lieutenant colonel, to make a decision: Was it for real? Petrov was situated at a critical point in the chain of command, overseeing a staff that monitored incoming signals from the satellites. He reported to superiors at warning-system headquarters; they, in turn, reported to the general staff, which would consult with Soviet leader Yuri Andropov on the possibility of launching a retaliatory attack. Petrov's role was to evaluate the incoming data. At first, the satellite reported that one missile had been launched – then another, and another. Soon, the system was "roaring," he recalled – five Minuteman intercontinental ballistic missiles had been launched, it reported. Despite the electronic evidence, Petrov decided – and advised the others – that the satellite alert was a false alarm, a call that may have averted a nuclear holocaust. But he was relentlessly interrogated afterward, was never rewarded for his decision and today is a long-forgotten pensioner
• •
• •
Stuxnet: Beveiliging en audit van proces-IT
23
Wat gaat goed (pIT) • • • •
Focus op control loops Wat goed gaat, laten doorlopen Triggers / melding van afwijking Monitoren om bij te sturen
Stuxnet: Beveiliging en audit van proces-IT
12
24
NGI Stuxnet: Beveiliging en audit van proces-IT
Wat gaat niet goed (pIT) • • • •
Onvoldoende overall systems view Als het werkt, dan blijft het werken Software ≠ analoge signaalverwerking Data-integriteit, beschikbaarheid • Voor control: OK • Voor mgt.info: Who cares?
• ‘Beveiliging’ op derde (?) plaats Stuxnet: Beveiliging en audit van proces-IT
25
Agenda • • • • • •
Maeslant en ﮉ Proces-IT Security Administratieve systemen en zo Wat nu ..? Uitsmijter Stuxnet: Beveiliging en audit van proces-IT
13
26
NGI Stuxnet: Beveiliging en audit van proces-IT
Security Frequentie
Veel kleine foutjes; gemakkelijk herstelbaar of insignificant
Materiële (significante) schade; komt met enige regelmaat voor (maar is geen ‘routine’)
Opera tionele ver liezen
Break-the-business incidenten; organisatie overleeft klap niet
Ontploffende Kerncentrales ..?
Beveiligingsincidenten
Continuïteitsbedreigingen Schade
Stuxnet: Beveiliging en audit van proces-IT
27
ORM Evaluate design & setup
Analysis
Monitor & react
Operational Risk Management ORAP
Inherent risks
R(S)A (+Audit)
Controls
Risk indicators
Incidents for analysis (Problems)
KRI (Mgt)
Incident Mgt
(K)ORC (Mgt) Designed, Selected for efficiency
Problem Mgt
Tuning, Mandatory KRI values
Near misses
CLD
Insurance Mgt
Corrective actions Incidents
Indemnities
Process Breach
Stuxnet: Beveiliging en audit van proces-IT
14
28
NGI Stuxnet: Beveiliging en audit van proces-IT
Analyse: Bedreigingen Acts of nature (‘Acts of God’)
• Acts of Man • Actief / Passief (blijven) • I’m sorry-attacks
Met opzet
Zonder opzet
?
Overstroming Windhoos Aardbeving Grieppandemie
Acts of Man Crackers Fraudeurs Actiegroepen Tegenzin / Geen tijd
… Sorry!
• Domheid • ‘Operational risks’..!
Stuxnet: Beveiliging en audit van proces-IT
29
(Agenda) • • • • • •
Maeslant en ﮉ Proces-IT Security Administratieve systemen en zo Wat nu ..? Uitsmijter Stuxnet: Beveiliging en audit van proces-IT
15
30
NGI Stuxnet: Beveiliging en audit van proces-IT
Focus: gegevensintegriteit? • Alles is een (transactieverwerkend) proces • On-menselijk (?) • Afbeelding van de werkelijkheid! • Geen ‘oordeel’ over reële betekenis transactie Re: Transactie gedaan, vastlegging key Re: Integriteit? 1=1, 0=0 • Papieren werkelijkheid
• Risico-analytisch ! ‘Wet op de Jaarrekeningcontrole’ ...!? Stuxnet: Beveiliging en audit van proces-IT
31
En dan: Controls = Maatregelen, bijsturingsmiddelen • • • • • •
Organisatorisch (functiescheiding) Procedureel (afvinken rapporten) Fysiek (toegang) IT (…) Geld (verzekering) In combinatie (Er is geen silver bullet!) Stuxnet: Beveiliging en audit van proces-IT
16
32
NGI Stuxnet: Beveiliging en audit van proces-IT
Controls (bescherming?) • • • • • •
Afschrikkende Preventieve, Detectieve, Repressieve, Beperkende en opvangende, Corrigerende en terugwinnende
• Hoe eerder hoe beter • Net beter dan de buren Stuxnet: Beveiliging en audit van proces-IT
33
Controls (vervolg) • Traditioneel: Accountantshobby Maar niet langer alleen t.b.v. jaarrekeningcontrole • Taalprobleem: Operationeel doen ↔ Op managementniveau uitleggen • Modes • • • •
RBAC Classificatie Architectuur … Stuxnet: Beveiliging en audit van proces-IT
17
34
NGI Stuxnet: Beveiliging en audit van proces-IT
Controls: kosten, baten • Schade ↔ kosten van controls (direct, indirect, reputatie?) • Vantevoren cijfers nodig! • • • •
Frequentie / kans Impact, schade (2x) Kosten → continu → rapporteren (niks merkbaar?) Effectiviteit
• FUD werkt misschien toch beter Stuxnet: Beveiliging en audit van proces-IT
35
Waar is de control loop-gedachte? • Nergens. Administratievelingen kennen die niet • Nou ja, … maar dan • PDCA ≠ Deming • Focus komt op uitzonderingen afvangen of herstellen • Beperkte visie op ‘alle’ inputs
Stuxnet: Beveiliging en audit van proces-IT
18
36
NGI Stuxnet: Beveiliging en audit van proces-IT
Realiteit Threat Threat Threat
Control Control Control
Vulner Vulner Vulner
Threat Threat Threat
Control Control Control
Vulner Vulner Vulner
Threat Threat Threat
Control Control Control
Vulner Vulner Vulner
? Stuxnet: Beveiliging en audit van proces-IT
37
Effect…
Stuxnet: Beveiliging en audit van proces-IT
19
38
NGI Stuxnet: Beveiliging en audit van proces-IT
Ook op andere gebieden, niveaus • • • •
Pino, Nepino Watervalontwikkelmethode Testen, testen, testen. …!? Projectrisico’s > Deliverable-risico’s
• Auditability > control • ‘We hebben een certificaat’ Stuxnet: Beveiliging en audit van proces-IT
39
Traditioneel ‘Business’
Information Mgt
IT
Strat
Tact
Oper
Stuxnet: Beveiliging en audit van proces-IT
20
40
NGI Stuxnet: Beveiliging en audit van proces-IT
Wat breder en dieper Burger
‘Overheid’?
‘Business’
Information Mgt
Stuxnet: Beveiliging en audit van proces-IT
IT
41
Wat gaat goed (aIT) • Controls-gerichtheid (uitgaan van foutgaan) • Enige keten-gerichtheid (?) • Cultuur van controlesystemen
Stuxnet: Beveiliging en audit van proces-IT
21
42
NGI Stuxnet: Beveiliging en audit van proces-IT
Wat gaat niet goed (aIT) • De abstractie van de werkelijkheid • Te beperkt, analytisch, te hoog niveau • Te simpel! Event ∆ 1 Oorzaak ˄ 1 Gevolg
• Focus op transparantie = auditability • 2e afgeleide van primaire info • Tbv gemakkelijk leventje auditors
• (Management) controls-discussie weer losgeraakt van software • ‘Beveiliging = C; I en A hobbelen erachter’ Stuxnet: Beveiliging en audit van proces-IT
43
Agenda • • • • • •
Maeslant en ﮉ Proces-IT Security Administratieve systemen en zo Wat nu ..? Uitsmijter Stuxnet: Beveiliging en audit van proces-IT
22
44
NGI Stuxnet: Beveiliging en audit van proces-IT
Wat nu ..? • Proces-IT • Is nieuw • ‘Moet nog veel leren’ • Ondoorzichtig (voor kantoortijgers)
• ‘Administratieve’ (IT) beveiliging • Heeft modellen (een oogje voor een heel land ..?) • Veroorlooft zich foutmarges • (Relatief) incidentele, discrete transacties, missers Stuxnet: Beveiliging en audit van proces-IT
45
Wat hebben wij te leren? • C, I en A in balans (geen mono-focus) • Bescheidenheid • Urgentie (Hoewel geen Cassandra’s, Boy Cried Wolf) • Onze diensteneconomie draait op fysieke wereld • Decennia te gaan`?
• Verbetering (consistentie, volledigheid) van engineering van control • Modellen (waterval/andere(!), testen, control)
Stuxnet: Beveiliging en audit van proces-IT
23
46
NGI Stuxnet: Beveiliging en audit van proces-IT
Wat hebben wij te leren (II) • Terug naar software • Administratief → Bottom-up ‘incident mgt’ • Proces → Top-down ‘keten incl externalities’
• Software-testen • Doen! • Uitbreiden methodologieën • Full-scope what-if • Ook op requirements-niveau etc. • Beter horizontaal en verticaal geïntegreerd totaal Stuxnet: Beveiliging en audit van proces-IT
47
Kan dat ..? • Kan niet, kan niet • Kritieke infra • Geen ‘Plan B’ / herstel
• Vergt véél verdieping en verbreding kennis, kunde, vaardigheden • Spanning diepgang/specialisme vs. overzicht • Inhoudelijk en qua vaardigheden
• Wie gaat dat betalen ..? • Agency vs externalities Stuxnet: Beveiliging en audit van proces-IT
24
48
NGI Stuxnet: Beveiliging en audit van proces-IT
Agenda • • • • • •
Maeslant en ﮉ Proces-IT Security Administratieve systemen en zo Wat nu ..? Uitsmijter Stuxnet: Beveiliging en audit van proces-IT
49
Ubicomp / Ubiinfo
Stuxnet: Beveiliging en audit van proces-IT
25
50
NGI Stuxnet: Beveiliging en audit van proces-IT
Ubi-problemen • Where’s your data …? (Cloud2) • Wie zit er aan de gegevens, wie is in control ? • Privacy • Trawling for patterns
• Herstelbaarheid fouten • Overschatting eenvoud … Stuxnet: Beveiliging en audit van proces-IT
51
Agenda • • • • • •
Maeslant en ﮉ Proces-IT Security Administratieve systemen en zo Wat nu ..? Uitsmijter Stuxnet: Beveiliging en audit van proces-IT
26
52
NGI Stuxnet: Beveiliging en audit van proces-IT
Vragen …?
Stuxnet: Beveiliging en audit van proces-IT
53
The End
Stuxnet: Beveiliging en audit van proces-IT
27
54
NGI Stuxnet: Beveiliging en audit van proces-IT
‘Further Reading’ • TNO/KEMA • http://www.samentegencybercrime.nl/
Stuxnet: Beveiliging en audit van proces-IT
28
55