računarski kriminal
TRANSCRIPT
CSI SQL Server
Digital Evidence Collectiing
Summary
• Osnovni pojmovi; – Računarski kriminal;
– Digitalna forenzika
– Proces istrage;
– Faze digitalne forenzike;
• Zašto baza podataka? – Statistika uspješnih „upada“;
– Kontrola pristupa;
• CSI SQL Server • DDL trigeri;
• DML trigeri;
• CDC (Change Data Control);
• Hashing;
• SQL Audit;
Računarski kriminal
• Računarski kriminal je aktivnost gdje je računar, resurs, servis, alat, meta ili mjesto počinjenog krivičnog djela.
• Koji su ciljevi? – ilegalni pristup (neovlašten pristup sistemu),
– ilegalno presretanje (presretanje mreženih paketa u mrežnom saobraćaju),
– interferencija unutar podataka (neovlašteno brisanje, korigovanje i izmjena podataka),
– sistemska interferencija (neovlašteno upravljanje sa sistemskim funkcijama računarskog sistema,
– elektronske prevare i sl.
Digitalna forenzika
• digitalna forenzika je dio procesa istrage, koji
obuhvata naučnu analizu: medija/uređaja za
pohranu podataka i/ili uređaja za obradu
podataka:
– (PC, laptop, serveri, radne stranice, prenosni mediji)
• ...sa ciljem utvrđivanja ilegalne aktivnosti koja je
dovela do kaznenog djela. U osnovi, ovdje se
radi o procesu istrage.
Proces istrage
Krivično
djelo
Izvršenje
zakona
Validan
dokaz
Pronalaženje Zapljenjivanje Prezervacija Pregled Analiza Izvještavanje
Prezentovanje Stručni svjedok
Činjenice Presuda
Faze digitalne forenzike
•sakupljanje digitalnih dokaza;
•kopiranje;
Prezervacija
•utvrđivanje stanja;
•odabir metoda;
Pregled •forenzičko utvrđivanje činjenica;
Analiza
•prezentovanje dokaza;
Izvještavanje
Zašto baza podataka
• Baze podataka sadrže kritične informacije za
poslovanje;
• Serveri baza podataka drže privatno i
sigurnosno osjetljive podatke;
• Industrijska špijunaža;
• Krađa i preprodaja podataka „trećim“ licima;
• Ovo je zanja linija IS-a i šteta je najveća;
• Gubitak kredibiliteta;
• ...
Statistika uspješnih „upada“
• U periodu od 2005-2009
– Izvor: www.privacyrights.org
Broj probaja Uspješnost upada Ukupni rizik
Laptop 47% 25% 11%
Database 40% 64% 84%
Email 2% 1% 1%
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
Kontrola pristupa
• Jedini način za validno i kvalitetno prikupljanje
digitalnih dokaza jeste postojanje kontrole
pristupa sistemu u svim njegovim aspektima;
– Nezavisnost od klijenta (Dekstop GUI, Web
okruženje, direktan pristup..)...
– Razlikujemo:
• Jednostavnu kontrolu pristupa;
• Naprednu kontrolu pristupa;
Jednostavna kontrola pristupa
CREATE TABLE [dbo].[kontrola_pristupa]
(
[Id] [int] IDENTITY(1,1) PRIMARY KEY,
[Datum] [datetime] NOT NULL,
[Url] [ntext] NULL,
[FormData] [ntext] NULL,
[UserId] [nvarchar](50) NULL,
[RemoteIp] [nvarchar](15) NULL,
[RemoteAgent] [nvarchar](100) NULL,
[Referer] [nvarchar](255) NULL
)
Napredna kontrola pristupa
• Sve što ima i jednostavna kontrola;
• Podaci o DML događajima ( INSERT, UPDATE i
DELETE);
• Podaci o DDL događajima (CREATE, ALTER,
DROP)
• Hash checksum logiranih informacija
– Sa ciljem zaštite prikupljenih podataka od
falsifikovanja, brisanja ili izmjena
Ciljevi kontrole pristupa
Digitalni dokaz
Kada?
Ko? Šta
Odgovor na tri pitanja?
• kada se desio događaj i pod kojim okolnostima;
• šta je rezultat događaja i mogućnost rekonstruisanja prethodnog stanja;
• ko je zakonski odgovoran za ilegalnu aktivnost;
CSI::DDL trigeri
• Novo od verzije SQL Server 2005;
• Prate promjena na šemom objekata unutar baze
podataka;
– CREATE, ALTER, DROP;
• Funkcija eventdata prikuplja podatke vezene za
DDL događaj;
– Vraća XML
DEMO 1
• DDL trigger (simple);
• DDL trigger (advanced);
CSI:: DML trigeri
• DML operacije su mnogo češće unutar IS-a; – INSERT
– UPDATE
– DELETE
• Za prikupljanje informacija o događaju se koriste AFTER tipovi ”okidača”; – Izvršavaju se po komandi, a ne zapisu;
– Za razliku od DDL, DML trigeri su vezeni za tabelu;
• Vodimo računa performansama; – Nema potrebe stavljati triger na sve tabele;
– Problem se može riješiti generičkim CLR trigerima
DEMO 2
• DML triggeri;
CSI::Change Data Capture (CDC)
• Nova tehnologija za praćenja izmjena nad podacima – SQL Server 2008
• Prvenstveno je namjenjena za potrebe ETL-a – extraction, transformation i
loading
• Prati sve DML i DDL aktivnosti – Na nivou tabele
DEMO 3
• CDC konfiguracija;
Dilema
Do sada su navedene metode sigurne od DBA „intervencija“?
CSI::AntiTampering • Međutim, šta ako su podaci prikupljeni nekom od
metoda ugroženi i podloženi tampering-u? – Korisnici sa visokim privilegijama
– Ima vrlo malo ili nikakvih rješenja?
• Jedno od njih je hashing na INSERT-u u audit log tabele
Kol.1 Kol.2 Kol.3 HS VS ...
Kol.1 Kol.2 Kol.3 HS VS ...
Kol.1 Kol.2 Kol.3 HS VS ...
CIS::Tamper detection model
DEMO 4
• AntiTampering metoda;
CSI::SQL Audit
• Audit je ugrađeni serverski objekat
• Native DDL za kontrolu konfiguracije i administracije
• Podržan su svi nivoi sigurnosti
• Audit object automatski logira sve aktivnosti u:
– File
– Windows Application Log
– Windows Security Log
• Granularnost prilikom definisanja koga, šta i
kako
Zašto koristiti SQL Server Audit
• Brže nego SQL Trace
– Pokreće se zajedno sa SQL Server engine
• Sigurnije;
• Mogučnost rada i sa SQL Server 2005
• Konfiguracija i administracija kroz SSMS
Performanse?
• Zavisi od:
– Opterećenja
– I onoga što se prati
• Komparativna analiza SQL Server Audit vs. SQL
Trace za 5 različitih „customer“ scenarija…
SQL Server Audit vs SQL Trace
13,3
41,3
5,1
63,4
3,6
15,9
101,9
6,3
76,6
4,78
14,1
55,9
5,6
68,13
4
Workload 1 Workload 2 Workload 3 Workload 4 Workload 5
Customer Workload
Base Time (min) SQL Trace (min) SQL Server Audit (min)
Mogu li zaštiti Audit log od DBA?
Zaštita prikupljenih podataka
Windows Security Log
• “Tamper-proof” log
• DBA nemože očistiti log (ako nije administrator)
Kopirati audit logove na sigurnu lokaciju
• Mrežni „share“ na koji DBA nema pristup
Kombinacija navedenog
Još par sitnica.
• Samo EE
• Audit logovi nisu kriptovani
• Pisanje u fajlove je osjetno brže nego u event
logove
• Nema opcije da se logovi pohrane u DB tabele
DEMO 5
• SQL Audit;