38
OSSEC HIDS, Host Based Intrusion Detection System Aurora Mazzone, INFN Sezione di Torino Parte Terza

OSSEC HIDS, Host Based Intrusion Detection System

  • Upload
    shae

  • View
    62

  • Download
    4

Embed Size (px)

DESCRIPTION

Aurora Mazzone, INFN Sezione di Torino Parte Terza. OSSEC HIDS, Host Based Intrusion Detection System. Analisi dei log: file di configurazione. decoder: /var/ossec/etc/decoder.xml /var/ossec/etc/local_decoder.xml rules: /var/ossec/rules/*.xml /var/ossec/rules/local_rules.xml. - PowerPoint PPT Presentation

Citation preview

Page 1: OSSEC HIDS, Host Based Intrusion Detection System

OSSEC HIDS, Host Based Intrusion Detection System

Aurora Mazzone, INFN Sezione di Torino

Parte Terza

Page 2: OSSEC HIDS, Host Based Intrusion Detection System

Analisi dei log: file di configurazione

decoder:

/var/ossec/etc/decoder.xml/var/ossec/etc/local_decoder.xml

rules:

/var/ossec/rules/*.xml/var/ossec/rules/local_rules.xml

Page 3: OSSEC HIDS, Host Based Intrusion Detection System

Analisi dei log: file di configurazione

ossec.conf:

<rules> <include>rules_config.xml</include> <include>pam_rules.xml</include> <include>sshd_rules.xml</include> <include>telnetd_rules.xml</include>[...]</rules>

Page 4: OSSEC HIDS, Host Based Intrusion Detection System

Analisi dei log

Tre fasi:

pre-decoding decoding rules

Page 5: OSSEC HIDS, Host Based Intrusion Detection System

Pre-decoding

Informazioni statiche:

hostname program_name data/timestamp log

Page 6: OSSEC HIDS, Host Based Intrusion Detection System

Pre-decoding

Oct 28 14:21:39 atropo sshd[855]: Accepted password for jack from 192.135.19.13 port 45018 ssh2

Page 7: OSSEC HIDS, Host Based Intrusion Detection System

Pre-decoding

**Phase 1: Completed pre-decoding. full event: 'Oct 28 14:21:39 atropo sshd[855]:

Accepted password for jack from 192.135.19.13 port 45018 ssh2'

hostname: 'atropo' program_name: 'sshd' log: 'Accepted password for jack from 192.135.19.13

port 45018 ssh2'

La parte di log analizzata in questa fase è:“Oct 28 14:21:39 atropo sshd[855]:”

Page 8: OSSEC HIDS, Host Based Intrusion Detection System

Decoding

Informazioni dinamiche:

user protocol source/destination port source/destination ip action id url [...]

Page 9: OSSEC HIDS, Host Based Intrusion Detection System

Decoding

Oct 28 14:21:39 atropo sshd[855]: Accepted password for jack from 192.135.19.13 port 45018 ssh2

Page 10: OSSEC HIDS, Host Based Intrusion Detection System

Decoding

**Phase 2: Completed decoding.

decoder: 'sshd' dstuser: 'jack' srcip: '192.135.19.13'

Page 11: OSSEC HIDS, Host Based Intrusion Detection System

Decoding

Sshd parent decoder:

<decoder name="sshd"> <program_name>^sshd</program_name></decoder>

Dal pre-decoding: program_name: 'sshd'

Page 12: OSSEC HIDS, Host Based Intrusion Detection System

Decoding

Sshd child decoder:

<decoder name="sshd-success"> <parent>sshd</parent> <prematch>^Accepted</prematch> <regex offset="after_prematch">^ \S+ for (\

S+) from (\S+) port </regex> <order>user, srcip</order> <fts>name, user, location</fts></decoder>

Page 13: OSSEC HIDS, Host Based Intrusion Detection System

Decoding: alcuni tag

Sshd child decoder:

<parent>: nome del decoder padre da cui dipende.

<prematch>: match di una stringa (anche con espressioni regolari) (os_regex)

<regex>: espressioni regolari (os_regex) + “capture groups”

@offset: punto da cui partire per regex <order>: etichette per le informazioni estratte

Page 14: OSSEC HIDS, Host Based Intrusion Detection System

Decoding: os_regex

espressioni regolarinon troppe opzioni ma velociutilizzata da tutte le opzioni dei decoder con

espressioni regolari o match di stringhe (<prematch> e <regex>) e dal tag <regex> nelle regole

Page 15: OSSEC HIDS, Host Based Intrusion Detection System

Rules

Oct 28 14:21:39 atropo sshd[855]: Accepted password for jack from 192.135.19.13 port 45018 ssh2

Page 16: OSSEC HIDS, Host Based Intrusion Detection System

Rules: filtering

**Phase 3: Completed filtering (rules). Rule id: '5715' Level: '3' Description: 'SSHD authentication success.'**Alert to be generated.

Page 17: OSSEC HIDS, Host Based Intrusion Detection System

Rules: filtering

Sshd parent rule:

<rule id="5700" level="0" noalert="1"> <decoded_as>sshd</decoded_as> <description>SSHD messages

grouped.</description> </rule>

Page 18: OSSEC HIDS, Host Based Intrusion Detection System

Rules: alcuni tag

@id : id univoco che identifica ogni regola (più di 800)

@level: da 0 a 15, livello di importanza.

<decoded_as>: nome del decoder che ha già decodificato il log (se presente)

Page 19: OSSEC HIDS, Host Based Intrusion Detection System

Rules: filtering

Sshd child rules:

<rule id="5715" level="3"> <if_sid>5700</if_sid> <match>^Accepted|authenticated.$</match> <description>SSHD authentication

success.</description> <group>authentication_success,</group></rule>

Page 20: OSSEC HIDS, Host Based Intrusion Detection System

Rules: alcuni tag

<if_sid>: id della regola padre da cui questa dipende

<match>: match di una stringa (os_match)

<group>: gruppo aggiuntivo assegnato all'evento

Page 21: OSSEC HIDS, Host Based Intrusion Detection System

Rules: os_match

match veloce di una stringanon supporta espressioni regolarimolto semplice ma più veloce di os_regexusata nelle regole da tutti i tag che confrontano un dato (non da regex)

Page 22: OSSEC HIDS, Host Based Intrusion Detection System

Relazione tra regole e decoder

Decoder: utilizzato solo nel caso in cui sia necessario estrarre informazioni dinamiche dal log da confrontare successivamente nelle regole, da utilizzare per l'fts o nell'active-response.

Regole: possono esserci regole che non fanno riferimento a nessun decoder.

Page 23: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Correlazione di eventi:

condizionecountertimeframeelementi in comune (stesso utente, stesso ip sorgente, ...)

Page 24: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Correlazione di eventi:

condizione

<if_matched_sid><if_matched_group><if_matched_regex>

Page 25: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Correlazione di eventi:

counter

@frequency[rule]

timeframe

@timeframe[rule]

Page 26: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Correlazione di eventi:

elementi in comune

same_source_ipsame_src_portsame_dst_portsame_usersame_locationsame_iddifferent_url

Page 27: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

10xDec 8 23:56:33 localhost sshd[2688]: Failed password for root from 192.168.108.1 port 57084 ssh2

+ 1xDec 8 23:56:51 localhost sshd[2699]: Accepted password for root from 192.168.108.1 port 57087 ssh2

Page 28: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Failed login:

**Phase 2: Completed decoding. decoder: 'sshd' dstuser: 'root' srcip: '192.168.108.1'

**Phase 3: Completed filtering (rules). Rule id: '5716' Level: '5' Description: 'SSHD authentication failed.'**Alert to be generated.

Page 29: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Rule 5716

<rule id="5716" level="5"> <if_sid>5700</if_sid> <match>^Failed|^error: PAM: Authentication</match> <description>SSHD authentication

failed.</description> <group>authentication_failed,</group></rule>

Page 30: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Authentication success:

**Phase 2: Completed decoding. decoder: 'sshd' dstuser: 'root' srcip: '192.168.108.1'

**Phase 3: Completed filtering (rules). Rule id: '5715' Level: '3' Description: 'SSHD authentication success.'**Alert to be generated.

Page 31: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Regola 5715

<rule id="5715" level="3"> <if_sid>5700</if_sid> <match>^Accepted|authenticated.$</match> <description>SSHD authentication

success.</description> <group>authentication_success,</group></rule>

Page 32: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Regola 5720

<rule id="5720" level="10" frequency="6"> <if_matched_sid>5716</if_matched_sid> <same_source_ip /> <description>Multiple SSHD authentication

failures.</description> <group>authentication_failures,</group> </rule>

Match dopo 6 login falliti su ssh (5716).

Page 33: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Failed login:

6 tentativi di accesso falliti = 6 match della regola 5716 = regola 5720

regola 5720: group: authentication_failures srcip: '192.168.108.1'

Page 34: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Authentication success:

1 login corretto = 1 match della regola 5715 regola 5715: group: authentication_success srcip: '192.168.108.1'

Page 35: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

Regola 40112

<rule id="40112" level="12" timeframe="240"> <if_group>authentication_success</if_group> <if_matched_group>authentication_failures</if_matched_group>

<same_source_ip /> <description>Multiple authentication failures followed

</description> <description>by a success.</description></rule>

Page 36: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

6x 5716 (authentication failed) = 5720 (authentication_failures)

+1x 5715 (authentication_success)=40112 (same_source_ip)

Page 37: OSSEC HIDS, Host Based Intrusion Detection System

Regole composite

**Phase 2: Completed decoding. decoder: 'sshd' dstuser: 'root' srcip: '192.168.108.1'

**Phase 3: Completed filtering (rules). Rule id: '40112' Level: '12' Description: 'Multiple authentication

failures followed by a success.'**Alert to be generated.

Page 38: OSSEC HIDS, Host Based Intrusion Detection System