22
PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING PASSIVE REAL-TIME ASSET DETECTION SYSTEM PRADS Edward Fjellskål & Kacper Wysocki

PRADS - McGill University School of Computer Science

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

PASSIVE REAL-TIME ASSET DETECTION SYSTEM

PRADS

Edward Fjellskål & Kacper Wysocki

Page 2: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

Hvem er vi?

Kacper Wysocki

Redpill Linpro (1år)

Født 31337

B.A. Comp. Sci

Norman Anti-Virus

Kernelpatching '01

Pakkesniffing

Clusters

Edward Fjellskål

Redpill Linpro (4år, 3mnd)

Første datamaskin i 1983

Siv.Ing IKT

Linux og sikkerhet fra 98

Nettverks overvåkning

Forensics

Penetrasjons testing

Page 3: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

Hvorfor PRADS

Finnes frie verktøy som gjør lignende

Vanskelig å kombinere for å gjøre en kjapp avstemming

Ikke laget for store nettverk eller trafikkmengder

Ikke noe verktøy for lett å lage host attribute table til Snort

Spennende og lærerikt

Page 4: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

Hva er PRADS?

Passive Real-time Asset Detection System

Passive - Sender ikke pakker ut på nettverket

“Real-time” - Analyserer så fort man har en pakke.

Asset - Tjenere, klienter, tjenester, OS, routere m.m

Oppdager og identifiserer trafikk

Page 5: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

Hva er PRADS?

Detekterer via:

Hoster - ARP og IP

Tjenester - UDP og TCP

OS - IP(TCP/UDP/ICMP)

MAC - ARP

Page 6: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

Hva kan PRADS brukes til?

Få oversikt over...

Maskiner (IP)

Operativsystem (Windows/Linux/Solaris/Mac/*BSD...)

Tjenester (Apache, IIS, MySQL, MSSQL, SMTP XXXX...)

Klienter (Firefox, Thunderbird, Skype, IE(5,6,7,8)...)

Page 7: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

Hva kan PRADS brukes til?

...så man kan:

Automatisere overvåking av nettverk i konstant forandring.

Bedre beskytte nettverket sitt med IDS/IPS.

Policy & Compliance

Vite hva man har på nettet sitt til en hver tid.

Page 8: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

TCP fingerprinting?

TCP brukes til (nesten) alt

Ikke ny teknologi (nmap, p0f, SinPF, netfilter!, pf)

Nmap er aktiv. (p0f kan og gjøre aktiv spørring)

Aktiv skanning ikke alltid akseptert.

P0f – Laget som en proof of concept

Fuzzing av fingerprints

Page 9: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

TCP Fingerprinting i dybden Transmission Control Protocol: Kræsjkurs

TCP er pålitelig kommunikasjon av datastrømmer

Page 10: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

TCP Fingerprinting i dybden

En typisk TCP oppkobling: 3-way handshake

1) Klient sender SYN

"jeg vil prate med deg"

1) Server sender SYN+ACK

"ok, jeg er klar"

1) Klient sender ACK

kommunikasjon er opprettet

Interessante felt allerede i første pakke!

Page 11: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

TCP Fingerprinting i dybden

Signaturer: kjente mønster

Gjetter OS på grunnlag av

WindowSize : TTL : DontFrag : SYNsize : Options : Quirks

Fingerprints: beskriver pakken

Fingerprint matcher en eller flere signaturer

sig og fp er konsist, ikke leselig :-)

Page 12: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

TCP Fingerprinting i dybden

Interessante felt i første pakke

Window SizeReserved fieldTCP FlagsTCP Options

Data?

Page 13: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

TCP Fingerprinting i dybden

Signaturer: kjente mønster

WindowSize : TTL : DontFrag : SYNsize : Options : Quirks

S4 : 64 : 1 : 60 : M*,S,T,N,W8 : . : Linux:2.6

S12:128:1:48:M*,N,N,S:.:Windows:XP SP1+

65535:64:1:48:M1460,S:.:FreeBSD:7.0

Fingerprints: beskriver pakken

[5672:64:0:60:M1430,S,T,N,W6:A] (Google bot)

Fingerprint matcher en eller flere signaturer

sig og fp er konsist, ikke leselig :-)

Page 14: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

TCP Fingerprinting i dybden

Page 15: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

TCP Fingerprinting i dybden

TCP Options:

WindowSize : TTL : DontFrag : SYNsize : Options : Quirks

S4 : 64 : 1 : 60 : M*,S,T,N,W8 : . : Linux:2.6

MSS, SACK, TIMESTAMP, NOOP, WINDOWSCALE, EOL, ++

Les RFC'en om disse Quirks – rare ting noen OS'er gjør

Z: no ID, I: IP opts, U: URG flag, X: reserved,

A: ACK flag, F: other flags, D: data i SYN pakke,

T: ekstra timestamp, P: options etter option EOL

Page 16: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

UDP/ICMP fingerprinting

Kan kun brukes som indikasjon

Lett å implementere I forhold til IP/TCP FP

Ett bra alternativ om ikke hosten svarer på noen tcp porter, eller om man ikke kan fange opp noen TCP/IP SYN eller SYN/ACK pakker.

Page 17: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

ICMP Signatur:icmp_type : icmp_code : init_ttl : dont_frag : ip_opt : ip_len : ip_flags : frag_offset : ip-TOS

Page 18: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

ARP Fingerprinting/Deteksjon

Fanger opp ARP Request/Reply

Registrerer MAC og IP

Slår opp MAC vendor

altså hvem lagde nettverkskortet

Page 19: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

Klienter/Tjenester: Deteksjon

Ser etter signaturer i trafikkstrømmen

Kostbart å se på hver pakke

Signatur kommer som regel i starten av en forbindelse

Signaturer kan manipuleres

Page 20: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

DEMO

Page 21: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

PRADS - Videre

C – Skrive om koden (speed)

Host attribute table til Snort / Nagios

GUI

Policy & Compliance

Alarmer

CVE

Page 22: PRADS - McGill University School of Computer Science

PRODUCTS • CONSULTING • APPLICATION MANAGEMENT • IT OPERATIONS • SUPPORT • TRAINING

Takk for oss...

[email protected]

[email protected]

http://gamelinux.github.com/prads/

Spørsmål? Ja takk!