Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ plug-in Π΄Π»Ρ COA Snort Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ snort-inline Π΄Π»Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π²ΡΡΠ²Π»Π΅Π½Π½ΡΡ Π°ΡΠ°ΠΊ
ΠΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π΄Π»Ρ Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ (ΡΠΌ. ΡΠΈΡ.). ΠΡΠΈ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠΌ ΡΠ΅ΠΏΠΎΡΠΊΠΈ, ΠΊ Π½Π΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π²ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΡΠΎΠΉ ΡΠ΅ΠΏΠΎΡΠΊΠΈ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΈΡ ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ. ΠΠΎΠ΄ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΡΡΡ: Π²ΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠ°ΠΊΠ΅ΡΠ° Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΡ, ΠΈ Π²ΠΎ-Π²ΡΠΎΡΡΡ , Π΅ΡΠ»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ ΡΡΠΎΠΌΡ ΠΊΡΠΈΡΠ΅ΡΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ, ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊ Π½Π΅ΠΌΡ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠΎΠ΄… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ plug-in Π΄Π»Ρ COA Snort Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ snort-inline Π΄Π»Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π²ΡΡΠ²Π»Π΅Π½Π½ΡΡ Π°ΡΠ°ΠΊ (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
1. Π’Π΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°ΡΡΡ
1.1 ΠΠ½ΡΡΡΠ΅Π½Π½ΡΡ ΡΡΡΡΠΊΡΡΡΠ° Snort
1.1.2 ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ
1.1.3 ΠΠΎΠ΄ΡΠ»ΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ
1.1.4 ΠΠΎΠ΄ΡΠ»ΠΈ Π²ΡΠ²ΠΎΠ΄Π°
1.2 ΠΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ Π°ΡΠ°ΠΊΠΈ
1.3 ΠΡΠ°Π²ΠΈΠ»Π° Snort
1.3.1 ACTION
1.3.2 PROTO
1.3.3 IP_ADDR
1.3.4 PORT
1.3.5 DIRECTION
1.3.6 OPTIONS
1.4 ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ
1.5 Snort_inline — ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ (IPS) Π½Π° Π±Π°Π·Π΅ Snort
1.6 Iptables
1.6.1 ΠΠ»ΡΡΠ΅Π²ΡΠΌΠΈ ΠΏΠΎΠ½ΡΡΠΈΡΠΌΠΈ iptables
1.6.2 ΠΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΡ
1.6.3 ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ
1.6.4 Π’Π΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΈ Π½Π΅ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ
1.6.5 Π’Π°Π±Π»ΠΈΡΠ° mangle
1.6.6 Π’Π°Π±Π»ΠΈΡΠ° filter
2. Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π‘ΠΏΠΈΡΠΎΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ²
ΠΠ°ΠΊ Π±Ρ Ρ ΠΎΡΠΎΡΠΎ Π½ΠΈ Π±ΡΠ» Π·Π°ΡΠΈΡΠ΅Π½ web-ΡΠ΅ΡΠ²Π΅Ρ ΠΈΠ»ΠΈ ΡΠ»ΡΠ· Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ, Π²ΡΠ΅Π³Π΄Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΅Π³ΠΎ Π²Π·Π»ΠΎΠΌΠ°. Π Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π±ΡΠ»ΠΎ Π±Ρ Π»ΡΡΡΠ΅ ΡΠ·Π½Π°Π²Π°ΡΡ ΠΎ ΠΏΠΎΠΏΡΡΠΊΠ°Ρ Π²Π·Π»ΠΎΠΌΠ° Π΅ΡΠ΅ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Π·Π»ΠΎΠΌ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ΅Π». ΠΠΎΡΡΠΎΠΌΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½Ρ ΡΡΠ΅Π΄ΡΡΠ²Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ ΡΠ°ΠΊΡ ΠΏΡΠΎΠ½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΡ, ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅Π΄ΠΈΡΡ ΠΎ ΠΏΡΠ΅Π΄ΡΡΠΎΡΡΠ΅ΠΌ Π²ΡΠΎΡΠΆΠ΅Π½ΠΈΠΈ, Π½ΠΎ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π°ΡΠ°ΠΊΡ.
1. Π’Π΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°ΡΡΡ
Π‘ΠΈΡΡΠ΅ΠΌΠ° Snort ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠΌ Ρ ΠΎΡΠΊΡΡΡΡΠΌΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌΠΈ ΡΠ΅ΠΊΡΡΠ°ΠΌΠΈ. Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΡ Π΄Π°Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π°ΡΠ°Π» ΠΎΠ΄ΠΈΠ½ Π°Π²ΡΠΎΡ, Martin Roesch, Π½ΠΎ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΎΡΠΊΡΡΡΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ ΠΈ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΡΠ΅ΠΊΡΡΠ°ΠΌ, ΡΠΈΡΡΠ΅ΠΌΠ° ΡΡΠ°Π»Π° Π±ΡΡΡΡΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΡΡ Π·Π° ΡΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΈ, ΠΊΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Ρ ΠΏΡΠΎΡΠΈΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌΠΈ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°ΠΌΠΈ, ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΆΡΡΠ½Π°Π»ΠΎΠ² ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ, Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡ ΠΆΡΡΠ½Π°Π»ΠΎΠ² ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ. ΠΠΈΠ±ΠΊΠΎΡΡΡ ΠΈ ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ Snort ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°ΡΡΡΡ Π½Π° ΡΡΠ΅Ρ ΡΡΠΎΠ»ΠΏΠ°Ρ :
Β· ΡΠ·ΡΠΊΠ΅ ΠΏΡΠ°Π²ΠΈΠ», ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ² ΠΏΠΎΠ΄ΠΎΠ·ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ°ΡΠΈΠΊΠ°;
Β· ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ΅ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠΈ Π°ΡΠ°ΠΊΠΈ;
Β· ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ ΠΊΠΎΠ΄Π°, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΡΡΠ΅Π³ΠΎ ΡΡΠ°ΡΠΈΠΊ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.
1.1 ΠΠ½ΡΡΡΠ΅Π½Π½ΡΡ ΡΡΡΡΠΊΡΡΡΠ° Snort
Π‘ΠΈΡΡΠ΅ΠΌΠ° Snort ΠΈΠΌΠ΅Π΅Ρ Π³ΠΈΠ±ΠΊΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. ΠΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π±ΡΠ²Π°ΡΡ ΡΡΠ΅Ρ ΡΠΈΠΏΠΎΠ²:
— ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ
— ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ
— ΠΌΠΎΠ΄ΡΠ»ΠΈ Π²ΡΠ²ΠΎΠ΄Π°
1.1.2 ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ
ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ Snort Π±ΡΠ²Π°ΡΡ Π΄Π²ΡΡ ΡΠΈΠΏΠΎΠ². ΠΠ΅ΡΠ²ΡΠΉ ΡΠΈΠΏ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ·ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ, Π° Π²ΡΠΎΡΠΎΠΉ ΡΠΈΠΏ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ² Π²ΡΡΠΎΠΊΠΈΡ ΡΡΠΎΠ²Π½Π΅ΠΉ (ΡΠ΅ΠΌ ΠΊΠ°Π½Π°Π»ΡΠ½ΡΠΉ) Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΡΡΠ°ΡΠΈΠΊΠ°. ΠΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ Π°ΡΠ°ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΡΡΡ Π²Π½Π΅ΡΠ½ΠΈΠΌ Π²ΠΈΠ΄ΠΎΠΌ ΡΡΠ°ΡΠΈΠΊΠ° Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΠΊΡΡΡΠ½ΠΎΡΡΠΈ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² snort, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ, Π²Π½Π΅ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΡΡ ΠΎΠ΄Π½ΡΠ΅ ΠΊΠΎΠ΄Ρ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ./src/preprocessors. ΠΠ΄Π΅ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ :
Β· portscan (2) — ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΡΡΠΎΠ²
Β· http_inspect — ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ http ΡΡΠ°ΡΠΈΠΊΠ°
Β· stream4 — ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π·Π° TCP ΡΠ΅ΡΡΠΈΡΠΌΠΈ
Β· arpspoof — ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ arp-spoofing
Β· bo — ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ BackOrifice
Β· frag2 — ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
Β· RPC-decode — Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ RPC-ΡΡΠ°ΡΠΈΠΊΠ°;
Β· Telnet_decode — Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ°ΡΠΈΠΊΠ° telnet-ΡΠ΅ΡΡΠΈΠΉ;
Β· ASN1_decode — Π²ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ Π² ΡΡΡΠΎΠΊΠ°Ρ ΡΠΎΡΠΌΠ°ΡΠ° ASN1;
Β· ΠΈ Ρ. Π΄.
ΠΡΠΊΡΡΡΠΎΡΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ snort Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΈ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ, ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ Π·Π°Π΄Π°Ρ.
Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ, Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΡΡΡΠΈΠ΅ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΡΡΠ°ΡΠΈΠΊ, ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΠΊΠ°Π½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΡΠΌ ΡΡΠΎΠ²Π½Π΅ΠΌ. Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Snort ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² Ethernet, SLIP ΠΈ PPP.
1.1.3 ΠΠΎΠ΄ΡΠ»ΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ
ΠΠΎΠ΄ΡΠ»ΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°ΠΌΠΈ ΡΡΠ°ΡΠΈΠΊΠ°. ΠΡΠ»ΠΈ ΡΡΠΎΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΡΡΠΎ ΠΏΠ°ΠΊΠ΅Ρ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΠ΅Ρ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ ΠΏΡΠ°Π²ΠΈΠ»Ρ, ΡΠΎ ΠΎΠ½ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠΎΠ±ΡΡΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π΄Π°Π»ΡΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ ΠΌΠΎΠ΄ΡΠ»ΡΠΌ Π²ΡΠ²ΠΎΠ΄Π° Snort.
1.1.4 ΠΠΎΠ΄ΡΠ»ΠΈ Π²ΡΠ²ΠΎΠ΄Π°
ΠΠΎΠ΄ΡΠ»ΠΈ Π²ΡΠ²ΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Snort Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, Π²Π΅Π΄Π΅Π½ΠΈΡ Π»ΠΎΠ³ΠΎΠ² ΠΈ Ρ. Π΄. Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π΄Π°Π½Π½ΡΡ . ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π° Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΎΠ² Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π΄Π²ΠΎΠΈΡΠ½ΡΠ΅ ΠΈ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΎΡΠΌΠ°ΡΠΎΠ². ΠΠΎΠ·ΠΌΠΎΠΆΠ½Ρ Π΄Π°ΠΆΠ΅ ΡΠ°ΠΊΠΈΠ΅ ΡΠΊΠ·ΠΎΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ, ΠΊΠ°ΠΊ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΠΏΠΎ e-mail ΠΈΠ»ΠΈ SMS. ΠΡΡ ΠΎΠ΄Π½ΡΠ΅ ΠΊΠΎΠ΄Ρ ΡΡΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ./src/output-plugins ΠΠΎΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π²ΡΠ²ΠΎΠ΄Π°:
Β· alert_syslog — Π²ΡΠ²ΠΎΠ΄ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ syslog
Β· log_tcpdump — Π²ΡΠ²ΠΎΠ΄ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ tcpdump
Β· output_database — Π²ΡΠ²ΠΎΠ΄Π²ΠΠ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½Ρ mysql, postgresql, oracle, odbc, mssql (ΡΠΎΠ»ΡΠΊΠΎΠ΄Π»Ρ Snort ΠΏΠΎΠ΄ Windows)
Β· csv — Π²ΡΠ²ΠΎΠ΄Π²ΡΠΎΡΠΌΠ°ΡΠ΅ CSV (coma separated values)
Β· ΠΈ Ρ. Π΄.
Π£ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠ°ΠΊ ΠΆΠ΅ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ²ΠΎΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π²ΡΠ²ΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΎΡΠΊΡΡΡΠΎΡΡΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Π»Π΅Π³ΠΊΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ.
1.2 ΠΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ Π°ΡΠ°ΠΊΠΈ
Snort ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ Π°ΡΠ°ΠΊΠΈ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π°Π½Π°Π»ΠΈΠ·Π° ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΡΠ°ΡΠΈΠΊΠ°. ΠΡΠ½ΠΎΠ²Π½ΡΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΈΠ³Π½Π°ΡΡΡ Π°ΡΠ°ΠΊ. Π ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠ·ΡΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΈΠ³Π½Π°ΡΡΡ Π°ΡΠ°ΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΠΏΠΈΡΠ°Π½ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°ΠΌ ΡΠΈΡΡΠ΅ΠΌΡ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡΡ Π±Π°Π·Ρ ΡΠΈΠ³Π½Π°ΡΡΡ ΡΠ²ΠΎΠΈΠΌΠΈ ΡΠΈΠ³Π½Π°ΡΡΡΠ°ΠΌΠΈ. ΠΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π½Π° ΡΡΠΎΠΌ ΡΠ·ΡΠΊΠ΅ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π²ΡΡ ΡΠ°ΡΡΠ΅ΠΉ: ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½Π°Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ ΡΠ·ΡΠΊΠ° ΡΠΈΠ³Π½Π°ΡΡΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ ΠΊΠ»Π°ΡΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΡΡΠ°ΡΠΈΠΊ ΠΏΠΎ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. Π‘ΡΠ΅ΠΏΠ΅Π½Ρ ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠΊΡΠΏΠ΅ΡΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΡΠΌΠΈΡΡΠ΅Ρ ΡΠΈΠ³Π½Π°ΡΡΡΡ Π°ΡΠ°ΠΊΠΈ.
Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΡΠ°Π΄ΠΈΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ: ΠΊΠ°ΠΆΠ΄ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΡΡΠ΅Π² ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π½ΠΎΠ²ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΡ Snort ΡΠ΅Π»ΠΈΠΊΠΎΠΌ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π»Π°ΡΡ ΠΈΠ· ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΈ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ. ΠΠΎΡΡΠΎΠΌΡ ΠΎΠ½Π° ΠΏΡΠ΅Π΄Π΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠ° ΠΈ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌ: Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΡΠ΄ΡΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ ΠΈ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ΅ΠΊΠΎΠ΄Π΅Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ Π½Π°Π±ΠΎΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡ Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΡΡΠΎΠ²Π½ΡΠΌΠΈ ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΡΠ΅ΠΊΠ°, ΡΠΎ Π΅ΡΡΡ ΠΏΡΠΈΠ½ΡΡΡΠΉ ΠΊΠ°Π΄Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π² ΠΏΠ°ΠΊΠ΅Ρ, ΡΠ΅Π³ΠΌΠ΅Π½Ρ ΠΈ Π±Π»ΠΎΠΊ Π΄Π°Π½Π½ΡΡ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΡ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΡΠΈΠ³Π½Π°ΡΡΡ Π°ΡΠ°ΠΊ. Π―Π΄ΡΠΎ Π²ΡΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ ΠΈΠΌΠ΅ΡΡΠΈΠ΅ΡΡ ΠΏΡΠ°Π²ΠΈΠ»Π° Π² Ρ.Π½. ΡΠ΅ΠΏΠΈ ΠΏΡΠ°Π²ΠΈΠ» — Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠ°Π²ΠΈΠ», Π³Π΄Π΅ ΠΏΡΠ°Π²ΠΈΠ»Π° Ρ ΠΎΠ±ΡΠ΅ΠΉ ΡΠ°ΡΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΡΡ Π² ΠΎΠ΄Π½ΠΎ Π·Π²Π΅Π½ΠΎ ΡΠ΅ΠΏΠΈ, Π° Π½Π΅ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΏΡΠ°Π²ΠΈΠ» ΡΡΡΠΎΡΡΡΡ ΡΠ΅ΠΏΡΡ Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΎΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π²Π΅Π½Π°. ΠΡΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ Π°Π½Π°Π»ΠΈΠ·Π° ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΡΠ°ΡΠΈΠΊΠ°. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎ ΡΠ΅ΠΏΠΎΡΠΊΠ΅ ΠΎΡ ΠΊΠΎΡΠ½Ρ, ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ΅Π΅ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠ²ΠΎΠΉ Π±Π»ΠΎΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΈ ΠΏΡΠΎΡ ΠΎΠ΄ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ. ΠΠ° ΡΠΈΡ. 1 ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΊΠΎΠΉ ΡΠ΅ΠΏΠΈ ΠΏΡΠ°Π²ΠΈΠ».
Π ΠΈΡ. 1 — Π¦Π΅ΠΏΠΈ ΠΏΡΠ°Π²ΠΈΠ» ΡΠΈΡΡΠ΅ΠΌΡ Snort
1.3 ΠΡΠ°Π²ΠΈΠ»Π° Snort
ΠΡΠ°Π²ΠΈΠ»Π° Snort Π»Π΅Π³ΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ, ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠΈΠ»ΡΠ½ΡΠΌ ΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΎΠΏΠ°ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ.
1.3.1 ACTION
ΠΠΌΠ΅ΡΡΡΡ ΡΡΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠ΅ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΡΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠΈ ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΡΠ°Π²ΠΈΠ»Ρ: pass, log ΠΈ alert.
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° pass ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΡΠΎΡΡΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅Ρ. ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° log ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΡΡΠΎ ΠΏΠ°ΠΊΠ΅Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π½ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ΅ ΠΆΡΡΠ½Π°Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠ°ΠΉΠ» ΠΆΡΡΠ½Π°Π»Π°. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° alert Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ°, ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡΠ΅Π³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Ρ — ΠΎΠΏΡΡΡ ΠΆΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ — ΠΈ ΠΏΠΎΡΠΎΠΌ ΡΠΆΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΠΏΠ°ΠΊΠ΅Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ΅ ΠΆΡΡΠ½Π°Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°.
ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅ΡΠ΅ Π΄Π²Π΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ: activate ΠΈ dynamic. ΠΠ½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π° Π²ΡΠ·ΡΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΎΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° Ρ ΡΠ²Π½ΡΠΌΠΈ ΠΏΡΠΈΠ·Π½Π°ΠΊΠ°ΠΌΠΈ Π°ΡΠ°ΠΊΠΈ Π½Π° ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π±ΡΡΠ΅ΡΠ° ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΎΠ± Π°ΡΠ°ΠΊΠ΅ ΠΈ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π² ΡΠ°ΠΉΠ» ΠΆΡΡΠ½Π°Π»Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΠΈΡ Π°Π½Π°Π»ΠΈΠ·Π°. Π’Π°ΠΊΠ°Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΊΠ°ΠΊ ΡΠ°Π· ΠΈ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΡΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ² activate ΠΈ dynamic. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ², Π°ΡΡΠΎΡΠΈΠΈΡΠΎΠ²Π°Π² ΠΈΡ Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ°ΠΌΠΈ ΠΆΡΡΠ½Π°Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅
ruletype redalert
{
type alert
output alert_syslog: LOG_AUTH LOG_ALERT
output database: log, mysql, user=snort dbname= snort host= localhost
}
ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ redalert, Π³Π΅Π½Π΅ΡΠΈΡΡΡΡΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ΠΉ Π΅Π³ΠΎ syslog ΠΈ Π·Π°ΠΏΠΈΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½Π½ΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ΅ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ MySQL.
1.3.2 PROTO
Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π° Π΄ΠΎΡΡΡΠΏΠ½Ρ ΡΡΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°, ΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, Π΄ΠΎΠΏΡΡΡΠΈΠΌΡ ΡΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° — tcp, udp, icmp. Π Π±ΡΠ΄ΡΡΠ΅ΠΌ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ARP, IPX, IGRP, GRE, RIP, OSPF ΠΈ Π΄ΡΡΠ³ΠΈΡ .
1.3.3 IP_ADDR
Snort Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π΄Π»Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ (ΠΈ Π²ΡΡΠ΄ Π»ΠΈ ΠΎΠ½ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ — ΠΏΠΎ ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ), ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ Π·Π°Π΄Π°Π½ΠΈΡ Ρ ΠΎΡΡΠΎΠ² Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ IP-Π°Π΄ΡΠ΅ΡΠ°. ΠΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ any ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°Π΄Π°ΡΡ Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π°Π΄ΡΠ΅ΡΠ°, Π΄Π»Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠ΅ΠΉ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ CIDR-Π±Π»ΠΎΠΊΠΈ.
Π‘ΠΈΠΌΠ²ΠΎΠ» ! ΠΈΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ ΡΡΠ»ΠΎΠ²ΠΈΠ΅, Ρ. Π΅. !192.168.3.0/24 ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π»ΡΠ±ΠΎΠΉ Π½Π΅ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΠΉ ΠΏΠΎΠ΄ΡΠ΅ΡΠΈ 192.168.3.0/24 IP-Π°Π΄ΡΠ΅Ρ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ ΡΠΏΠΈΡΠΊΠΈ Π°Π΄ΡΠ΅ΡΠΎΠ², ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΡ ΠΈΡ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ ΠΈ Π·Π°ΠΊΠ»ΡΡΠ°Ρ Π² ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ: [192.168.2.0/24,192.169.3.54/32].
1.3.4 PORT
ΠΠ°Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠΌΠ΅ΡΠΎΠ² ΠΏΠΎΡΡΠΎΠ² ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² Linux-ΡΡΠΈΠ»ΠΈΡΠ΅ ipchains. Π’ΠΎ Π΅ΡΡΡ ΠΊΡΠΎΠΌΠ΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅ΡΠ° ΠΏΠΎΡΡΠ° ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°ΡΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΏΠΎΡΡΠΎΠ² ΡΠ΅ΡΠ΅Π· Π΄Π²ΠΎΠ΅ΡΠΎΡΠΈΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 6000:6010 — ΠΏΠΎΡΡΡ Ρ 6000 ΠΏΠΎ 6010 Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ, :1024 — ΠΏΠΎΡΡΡ Ρ 1 ΠΏΠΎ 1024, 1024: — ΠΏΠΎΡΡΡ Ρ 1024 ΠΏΠΎ 65 536. ΠΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ IP-Π°Π΄ΡΠ΅ΡΠΎΠ², ΡΠΈΠΌΠ²ΠΎΠ» ! ΠΈΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ ΡΡΠ»ΠΎΠ²ΠΈΠ΅, Π° ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ any ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π²ΡΠ΅ ΠΏΠΎΡΡΡ.
1.3.5 DIRECTION
ΠΡΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ°:
-> (ΠΎΠ΄Π½ΠΎΡΡΠΎΡΠΎΠ½Π½Π΅Π΅) — ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌ, ΠΈΠ΄ΡΡΠΈΠΌ Ρ IP_ADDR1 Π½Π° IP_ADDR2;
<> (Π΄Π²ΡΡΡΠΎΡΠΎΠ½Π½Π΅Π΅) — Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ° ΡΠΎΠ»ΠΈ Π½Π΅ ΠΈΠ³ΡΠ°Π΅Ρ.
1.3.6 OPTIONS
ΠΠ°ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΠ΅ Π² ΠΊΡΡΠ³Π»ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΠ²Π»ΡΡΡΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»Π° — ΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΌΠΎΠΉ Π²Π°ΠΆΠ½ΠΎΠΉ ΡΠ°ΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π²ΡΠΎΡΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΌΠΎΠ³ΡΡ 3ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΠ΅ΠΊΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»ΡΡΡΠ΅Π³ΠΎ ΠΎΠ± ΡΠ³ΡΠΎΠ·Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π·Π°Π΄Π°Π²Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΡΠΈ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π΄Π°Π½Π½ΠΎΠΌΡ ΠΏΡΠ°Π²ΠΈΠ»Ρ.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΡΡΡΡ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π° ΡΠΎΡΠΊΠΎΠΉ Ρ Π·Π°ΠΏΡΡΠΎΠΉ, Π° ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΎΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ ΠΎΡ Π΅Π³ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Π΄Π²ΠΎΠ΅ΡΠΎΡΠΈΠ΅ΠΌ. Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ 24 ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°, Π½ΠΎ ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΠΎΡ Π²Π΅ΡΡΠΈΠΈ ΠΊ Π²Π΅ΡΡΠΈΠΈ.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, Π·Π°Π΄Π°ΡΡΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Ρ:
ttl — Π·Π°Π΄Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ TTL Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ IP-ΠΏΠ°ΠΊΠ΅ΡΠ°;
tos — Π·Π°Π΄Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ TOS Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ IP-ΠΏΠ°ΠΊΠ΅ΡΠ°;
id — Π·Π°Π΄Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ Π½ΠΎΠΌΠ΅ΡΠ° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ IP-ΠΏΠ°ΠΊΠ΅ΡΠ°;
ipopts — Π·Π°Π΄Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² IP-ΠΏΠ°ΠΊΠ΅ΡΠ°;
fragbits — Π·Π°Π΄Π°Π΅Ρ Π±ΠΈΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ IP-ΠΏΠ°ΠΊΠ΅ΡΠ°;
dsize — Π·Π°Π΄Π°Π΅Ρ ΡΡΠ»ΠΎΠ²ΠΈΡ Π½Π° ΡΠ°Π·ΠΌΠ΅Ρ IP-ΠΏΠ°ΠΊΠ΅ΡΠ°;
flags — Π·Π°Π΄Π°Π΅Ρ ΡΡΠ»ΠΎΠ²ΠΈΡ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ TCP-ΡΠ»Π°Π³ΠΎΠ²;
seq — Π·Π°Π΄Π°Π΅Ρ Π½ΠΎΠΌΠ΅Ρ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ° TCP-ΠΏΠ°ΠΊΠ΅ΡΠ° Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ;
ack — Π·Π°Π΄Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ Π² TCP-ΠΏΠ°ΠΊΠ΅ΡΠ΅;
itype — Π·Π°Π΄Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ ΡΠΈΠΏΠ° ICMP-ΠΏΠ°ΠΊΠ΅ΡΠ°;
icode — Π·Π°Π΄Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΊΠΎΠ΄Π° ICMP-ΠΏΠ°ΠΊΠ΅ΡΠ°;
icmp_id — Π·Π°Π΄Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ ICMP ECHO ID Π² ICMP-ΠΏΠ°ΠΊΠ΅ΡΠ΅;
icmp_seq — Π·Π°Π΄Π°Π΅Ρ Π½ΠΎΠΌΠ΅Ρ ICMP ECHO ΠΏΠ°ΠΊΠ΅ΡΠ° Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ;
content — Π·Π°Π΄Π°Π΅Ρ ΠΈΡΠΊΠΎΠΌΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ Π² ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ°, Π° Π½Π΅ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ (ΡΠ°Π±Π»ΠΎΠ½ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ ΠΊΠ°ΠΊ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ Π²ΠΈΠ΄Π΅, ΡΠ°ΠΊ ΠΈ Π² ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΠΎΠΌ);
content-list — ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ΅Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ content Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΠΏΠΈΡΠΎΠΊ ΠΈΡΠΊΠΎΠΌΡΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² Π±Π΅ΡΠ΅ΡΡΡ ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°;
offset — ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ Ρ ΠΎΠΏΡΠΈΠ΅ΠΉ content Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π² ΠΏΠ°ΠΊΠ΅ΡΠ΅, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡΡ Π°Π½Π°Π»ΠΈΠ· ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ;
depth — Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ΅Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ offset ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΏΠ°ΠΊΠ΅ΡΠ΅, Π΄ΠΎ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡΡ Π°Π½Π°Π»ΠΈΠ· ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ;
nocase — ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊ ΡΠ΅Π³ΠΈΡΡΡΡ ΠΏΡΠΈ Π°Π½Π°Π»ΠΈΠ·Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°;
rpc — ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΡΠ½ΠΎ Π·Π°Π΄Π°ΡΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ½ΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² RPC-ΡΠ΅ΡΠ²ΠΈΡΠΎΠ².
ΠΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»Π° Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π»ΡΠ±ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠ°ΠΊ-ΡΠΎ ΠΌΠΎΠ³ΡΡ ΡΠ³ΡΠΎΠΆΠ°ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. Π Π΅ΡΠ»ΠΈ ΡΡΠ΅ΡΡΡ, ΡΡΠΎ snort ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΡΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ Π½Π° ΠΊΠ°Π½Π°Π»ΡΠ½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅, ΡΠΎ Π΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ Π½Π° Ρ ΠΎΡΡΠ°Ρ , Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΡ ΡΠ°ΠΉΡΠ²ΠΎΠ»ΠΎΠΌ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΠΌΡΠ΅ ΡΠ°ΠΉΡΠ²ΠΎΠ»ΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΡ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ Π±ΡΠ΄ΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΠΏΠΎΠ»Π΅ Π·ΡΠ΅Π½ΠΈΡ Snort.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠΌΡΡΠ» ΠΏΡΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° Π²ΡΠ΅ΠΌ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌ:
msg — ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ΅ΠΊΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ;
logto — Π·Π°Π΄Π°Π΅Ρ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ ΡΠ°ΠΉΠ» Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ Π² Π½Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°;
session — ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Snort — ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· TCP-ΡΠ΅ΡΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²Π²ΠΎΠ΄ΠΈΠ» ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΎ Π²ΡΠ΅ΠΌΡ telnet-ΡΠ΅ΡΡΠΈΠΈ;
4resp — Π΅ΡΠ»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΏΡΠ°Π²ΠΈΠ»Ρ, ΡΠΎ Snort Π²ΡΠΏΠΎΠ»Π½ΠΈΡ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ — Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°ΠΊΡΠΎΠ΅Ρ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, ΠΎΡΠΏΡΠ°Π²ΠΈΠ² TCP-RST-ΠΏΠ°ΠΊΠ΅Ρ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈΠ· Ρ ΠΎΡΡΠΎΠ².
react — Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ Π·Π°Π΄Π°Π½Π½ΡΠ΅ Π² ΠΏΡΠ°Π²ΠΈΠ»Π΅ web-ΡΠ°ΠΉΡΡ, Π·Π°ΠΊΡΡΠ²Π°Ρ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ Π½ΠΈΠΌΠΈ ΠΈ/ΠΈΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ°ΡΠ·Π΅ΡΡ, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ»Π° ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΡΡΠ° ΠΏΠΎΠΏΡΡΠΊΠ° Π·Π°ΠΉΡΠΈ Π½Π° ΡΠ°ΠΉΡ.
1.4 ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ
Π°ΡΠ°ΠΊΠ° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ snort ΠΌΠΎΠ΄ΡΠ»Ρ
Π‘ΠΠ Snort ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ ΡΡΠ°ΡΠΈΠΊΠ°, ΠΎΠ±Π»Π°Π΄Π°ΡΡΠΈΠΉ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ ΠΏΠΎ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΌΠΈ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠΈΠΏΠ° log. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΈΠ· Π²Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΠΎΡΠΎΠΊΠ° Π΄Π°Π½Π½ΡΡ Π±ΡΠ΄ΡΡ ΠΎΡΠΎΠ±ΡΠ°Π½Ρ ΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½Ρ ΠΏΠ°ΠΊΠ΅ΡΡ, ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡΠΈΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΆΡΡΠ½Π°Π» Π²Π΅Π΄Π΅ΡΡΡ Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅ tcpdump, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ ΠΏΠΎΡΡΠΈ Π²ΡΠ΅ΠΌΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ Π°Π½Π°Π»ΠΈΠ·Π° ΡΡΠ°ΡΠΈΠΊΠ°. ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π½Π°Π³Π»ΡΠ΄Π½ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², Π½ΠΎ Π½Π΅ ΠΎΠ±Π»Π°Π΄Π°ΡΡ ΡΠ°ΠΊΠΈΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ ΠΏΠΎ ΠΈΡ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ, ΠΊΠ°ΠΊ Snort.
Π Π‘ΠΠ Snort Π²ΡΡΡΠΎΠ΅Π½ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π²ΡΡΠ²Π»ΡΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΡΡΠΎΠ² Π·Π°ΡΠΈΡΠ°Π΅ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ:
preprocessor flow: stats_interval 0 hash 2
preprocessor sfportscan: proto { <οΏ½ΠΏΡΠΎΡΠΎΠΊΠΎΠ»> } scan_type { <οΏ½ΡΠΈΠΏ_ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ> } sense_level { <οΏ½ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ> } logfile { <οΏ½ΡΠ°ΠΉΠ»_Ρ_ΠΎΡΡΠ΅ΡΠΎΠΌ> }
ΠΠ»Π³ΠΎΡΠΈΡΠΌ, ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡΠΈΠΉ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΈ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎΡΡΠΎΠ² ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΡΡ ΠΎΠ΄ΡΡΠΈΡ TCP-ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ ΡΠ»Π°Π³ΠΎΠΌ RST. Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΡΠΎΠ³ΠΎ ΡΠ»Π°Π³Π° Π½Π° ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠΌ Π² ΠΎΡΠ²Π΅Ρ ΠΏΠ°ΠΊΠ΅ΡΠ΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΠΎΡΡ, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅, Π·Π°ΠΊΡΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ ΡΠ»Π°Π³ΠΎΠΌ RST, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ ΡΠ°ΠΊΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΡΡΠΎΠ² ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ ΠΈ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² Π°Π½Π°Π»ΠΈΠ·Π° ΡΡΠ°ΡΠΈΠΊΠ° Π² ΠΆΡΡΠ½Π°Π»Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΡΠ°ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Snort, Π»ΠΈΠ±ΠΎ Π²ΡΠ²ΠΎΠ΄ ΡΡΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ΅Π· ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ»ΡΠΆΠ±Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΠ‘. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² UNIX-ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ ΠΠ‘ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΅ΡΠ²ΠΈΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ syslog. Π‘ΠΈΡΡΠ΅ΠΌΠ° Snort ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ UNIX ΠΏΠ»Π°ΡΡΠΎΡΠΌ.
Π ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΡ Snort ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π», Π΄Π΅Π»Π°ΡΡΠΈΠΉ Π΅Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ (Π‘ΠΠ).
1.5 Snort_inline — ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ (IPS) Π½Π° Π±Π°Π·Π΅ Snort
Snort_inline ΡΡΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡ ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π±Π΅Π·Π²ΡΠ΅Π΄Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ; ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π²ΡΠΎΡΠΆΠ΅Π½ΠΈΠΉ (IPS). ΠΡΠ° ΡΡΠΈΠ»ΠΈΡΠ° ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π½Π° ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠ³ΠΎ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π²ΡΠΎΡΠΆΠ΅Π½ΠΈΠΉ (IDS) Snort, Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠΌΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ Π½ΠΎΠ²ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ ΠΏΡΠ°Π²ΠΈΠ» (drop, sdrop ΠΈ reject), ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡ Ρ iptables (linux) ΠΈΠ»ΠΈ IPFW (freebsd), ΡΠΊΠ°Π·ΡΠ²Π°Ρ ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ Π½ΡΠΆΠ½ΠΎ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡ, ΠΎΡΠΊΠ»ΠΎΠ½ΡΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ, Π° ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° Snort.
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Snort Ρ snort_inline Π² Π²Π°ΡΠ΅ΠΌ ΡΠ°ΡΠΏΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ Π±ΡΠ΄ΡΡ ΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ: drop, reject ΠΈ sdrop.
drop — ΠΡΠ±ΡΠΎΡΠΈΡΡ ΠΏΠ°ΠΊΠ΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ Π±ΡΠ°Π½Π΄ΠΌΡΡΠ΅Ρ, ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΆΡΡΠ½Π°Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
sdrop — ΠΡΠ±ΡΠΎΡΠΈΡΡ ΠΏΠ°ΠΊΠ΅Ρ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Π±ΡΠ°Π½Π΄ΠΌΡΡΠ΅ΡΠ° ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΆΡΡΠ½Π°Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
reject — ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Π±ΡΠ°Π½Π΄ΠΌΡΡΠ΅Ρ, ΠΎΡΠ±ΡΠΎΡΠΈΡΡ ΠΏΠ°ΠΊΠ΅Ρ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» TCP, ΠΈΠ»ΠΈ ΠΆΠ΅ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π² ΡΠ°ΠΉΠ» ΠΆΡΡΠ½Π°Π»Π° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅: ICMP ΠΏΠΎΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ΅Π½, Π΅ΡΠ»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ UDP.
Π ΠΈΡ. 2 — ΡΠ°Π±ΠΎΡΠ° Snort_inline
1.6 Iptables
Iptables — ΡΡΠΈΠ»ΠΈΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠΎΠΉ ΠΌΠ΅ΠΆΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠΊΡΠ°Π½Π° (Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡΠ°) netfilter Π΄Π»Ρ ΡΠ΄Π΅Ρ Linux Π²Π΅ΡΡΠΈΠΉ 2.4 ΠΈ 2.6. ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΈΠ»ΠΈΡΡ iptables ΡΡΠ΅Π±ΡΡΡΡΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΡΡΠΏΠ΅ΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ (root).
1.6.1 ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ iptables
ΠΡΠ°Π²ΠΈΠ»ΠΎ — ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΊΡΠΈΡΠ΅ΡΠΈΡ, Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΈ ΡΡΠ΅ΡΡΠΈΠΊΠ°. ΠΡΠ»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΊΡΠΈΡΠ΅ΡΠΈΡ, ΠΊ Π½Π΅ΠΌΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, ΠΈ ΠΎΠ½ ΡΡΠΈΡΡΠ²Π°Π΅ΡΡΡ ΡΡΠ΅ΡΡΠΈΠΊΠΎΠΌ. ΠΡΠΈΡΠ΅ΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈ Π½Π΅ Π±ΡΡΡ — ΡΠΎΠ³Π΄Π° Π½Π΅ΡΠ²Π½ΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ ΠΊΡΠΈΡΠ΅ΡΠΈΠΉ «Π²ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ». Π£ΠΊΠ°Π·ΡΠ²Π°ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΠΎΠΆΠ΅ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ — Π² ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠ°ΠΊ ΡΡΠ΅ΡΡΠΈΠΊ.
ΠΡΠΈΡΠ΅ΡΠΈΠΉ — Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΡΡΠ΅Π΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΏΠ°ΠΊΠ΅ΡΠ° ΠΈ/ΠΈΠ»ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠ΅Π΅, ΠΏΠΎΠ΄ΠΏΠ°Π΄Π°Π΅Ρ Π»ΠΈ Π΄Π°Π½Π½ΡΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ ΠΏΠΎΠ΄ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π°.
ΠΠ΅ΠΉΡΡΠ²ΠΈΠ΅ — ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠ΄Π΅Π»Π°ΡΡ Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠΌ ΠΈ/ΠΈΠ»ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΠΏΠΎΠ΄ΠΏΠ°Π΄Π°ΡΡ ΠΏΠΎΠ΄ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π°. Π Π΄Π΅ΠΉΡΡΠ²ΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.
Π‘ΡΠ΅ΡΡΠΈΠΊ — ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΡΡΠ΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΏΠ°Π»ΠΈ ΠΏΠΎΠ΄ ΠΊΡΠΈΡΠ΅ΡΠΈΠΉ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π°. Π’Π°ΠΊΠΆΠ΅ ΡΡΠ΅ΡΡΠΈΠΊ ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΡΡΠΌΠΌΠ°ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΡΠ°ΠΊΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π² Π±Π°ΠΉΡΠ°Ρ .
Π¦Π΅ΠΏΠΎΡΠΊΠ° — ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Π½Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠ°Π²ΠΈΠ». Π¦Π΅ΠΏΠΎΡΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΈ Π±Π°Π·ΠΎΠ²ΡΠ΅.
ΠΠ°Π·ΠΎΠ²Π°Ρ ΡΠ΅ΠΏΠΎΡΠΊΠ° — ΡΠ΅ΠΏΠΎΡΠΊΠ°, ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠ°Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΡΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π»ΠΈ ΠΎΠ½ ΡΠ°ΠΌΠΎΠΌΡ Ρ ΠΎΡΡΡ, ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½ ΠΈΠΌ ΠΈΠ»ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ°Π½Π·ΠΈΡΠ½ΡΠΌ, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΎΠΉΡΠΈ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π΅ΠΌΡ Π½Π°Π±ΠΎΡ Π±Π°Π·ΠΎΠ²ΡΡ ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡ. Π‘Ρ Π΅ΠΌΠ° ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π±Π°Π·ΠΎΠ²Π°Ρ ΡΠ΅ΠΏΠΎΡΠΊΠ° ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ Π½Π°Π»ΠΈΡΠΈΠ΅ΠΌ «Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ» (default policy). ΠΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΊ ΡΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π±ΡΠ»ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ ΡΡΠΎΠΉ ΡΠ΅ΠΏΠΎΡΠΊΠΈ ΠΈ Π²ΡΠ·Π²Π°Π½Π½ΡΡ ΠΈΠ· Π½Π΅Π΅ ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ (ΡΠΌ. ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ). ΠΠΌΠ΅Π½Π° Π±Π°Π·ΠΎΠ²ΡΡ ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ Π²ΡΠ΅Π³Π΄Π° Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅ (PREROUTING, INPUT, FORWARD, OUTPUT, POSTROUTING).
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠ°Ρ ΡΠ΅ΠΏΠΎΡΠΊΠ° — ΡΠ΅ΠΏΠΎΡΠΊΠ°, ΡΠΎΠ·Π΄Π°Π½Π½Π°Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. ΠΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΡ. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ ΠΈΠΌΠ΅Π½Π° Π² Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅, ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΡΡΠ°Π½ΠΈΡΡ Ρ Π±Π°Π·ΠΎΠ²ΡΠΌΠΈ ΡΠ΅ΠΏΠΎΡΠΊΠ°ΠΌΠΈ ΠΈ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ.
Π’Π°Π±Π»ΠΈΡΠ° — ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ Π±Π°Π·ΠΎΠ²ΡΡ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΡ ΠΎΠ±ΡΠΈΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠΌΠ΅Π½Π° ΡΠ°Π±Π»ΠΈΡ (ΠΊΠ°ΠΊ ΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΊΡΠΈΡΠ΅ΡΠΈΠ΅Π²) Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² Π½ΠΈΠΆΠ½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π² ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ²Π°ΡΡ Ρ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ. ΠΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ iptables ΡΠ°Π±Π»ΠΈΡΠ° ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅t ΠΈΠΌΡ_ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ ΡΠ²Π½ΠΎΠ³ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ° filter. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°Π±Π»ΠΈΡΡ Π±ΡΠ΄ΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ Π½ΠΈΠΆΠ΅.
1.6.2 ΠΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΡ
ΠΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π΄Π»Ρ Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ (ΡΠΌ. ΡΠΈΡ.). ΠΡΠΈ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠΌ ΡΠ΅ΠΏΠΎΡΠΊΠΈ, ΠΊ Π½Π΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π²ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΡΠΎΠΉ ΡΠ΅ΠΏΠΎΡΠΊΠΈ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΈΡ ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ. ΠΠΎΠ΄ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΡΡΡ: Π²ΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠ°ΠΊΠ΅ΡΠ° Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΡ, ΠΈ Π²ΠΎ-Π²ΡΠΎΡΡΡ , Π΅ΡΠ»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ ΡΡΠΎΠΌΡ ΠΊΡΠΈΡΠ΅ΡΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ, ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊ Π½Π΅ΠΌΡ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠΎΠ΄ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠ½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ (Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ACCEPT, MARK), ΡΠ°ΠΊ ΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π² ΠΎΠ΄Π½Ρ ΠΈΠ· ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ. Π ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΊΠ°ΠΊ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠΌΠΈ, ΡΠΎ Π΅ΡΡΡ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ°ΡΡΠΈΠΌΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΏΠ°ΠΊΠ΅ΡΠ° Π² ΡΠ°ΠΌΠΊΠ°Ρ Π΄Π°Π½Π½ΠΎΠΉ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠ΅ΠΏΠΎΡΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ACCEPT, REJECT), ΡΠ°ΠΊ ΠΈ Π½Π΅ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠΌΠΈ, ΡΠΎ Π΅ΡΡΡ Π½Π΅ ΠΏΡΠ΅ΡΡΠ²Π°ΡΡΠΈΠΌΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° (MARK, TOS). ΠΡΠ»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ ΠΏΡΠΎΡΠ΅Π» ΡΠ΅ΡΠ΅Π· Π²ΡΡ Π±Π°Π·ΠΎΠ²ΡΡ ΡΠ΅ΠΏΠΎΡΠΊΡ ΠΈ ΠΊ Π½Π΅ΠΌΡ ΡΠ°ΠΊ ΠΈ Π½Π΅ Π±ΡΠ»ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΎ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΊ Π½Π΅ΠΌΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠΉ ΡΠ΅ΠΏΠΎΡΠΊΠΈ (ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΠΎΠ΅).
1.6.3 ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ
ΠΠ°ΠΊ ΡΠΆΠ΅ Π±ΡΠ»ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΎ Π²ΡΡΠ΅, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΊΠ°ΠΊΡΡ-Π»ΠΈΠ±ΠΎ ΠΎΠ΄Π½Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ACCEPT ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΠ°ΠΊΠ΅Ρ, MARK ΠΌΠ΅Π½ΡΠ΅Ρ Π΅Π³ΠΎ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΡ, MASQUERADE ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ ΠΌΠ°ΡΠΊΠ°ΡΠ°Π΄ΠΈΠ½Π³ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠ±ΡΠΈΠΌΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ:
ACCEPT, DROP ΠΈ REJECT — Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ½ΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ Π½ΠΈΠΆΠ΅, ΠΏΡΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠ°Π±Π»ΠΈΡΡ filter.
RETURN — ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°Ρ ΠΈΠ· ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΠ΅ΠΏΠΎΡΠΊΠΈ. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π΅ΡΠ»ΠΈ ΠΈΠ· ΡΠ΅ΠΏΠΎΡΠΊΠΈ A ΠΏΡΠ°Π²ΠΈΠ»ΠΎΠΌ Π½ΠΎΠΌΠ΅Ρ 3 ΠΏΠ°ΠΊΠ΅Ρ Π±ΡΠ» Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ Π² ΡΠ΅ΠΏΠΎΡΠΊΡ B, ΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊ Π½Π΅ΠΌΡ Π² ΡΠ΅ΠΏΠΎΡΠΊΠ΅ B Π΄Π΅ΠΉΡΡΠ²ΠΈΡ RETURN ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ Π΅Π³ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² ΡΠ΅ΠΏΠΎΡΠΊΡ A, ΠΈ ΠΎΠ½ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ Π΅Π΅ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π° (Π½ΠΎΠΌΠ΅Ρ 4).
LOG — ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ Π² ΠΆΡΡΠ½Π°Π» ΡΠ΄ΡΠ°.
ULOG — ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌ Π΄Π΅ΠΌΠΎΠ½Π°ΠΌ, ΡΠ°ΠΊΠΈΠΌ, ΠΊΠ°ΠΊ ulogd. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΡΡΠ°ΡΠΈΠΊΠ΅, Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π·Π°Π½ΠΎΡΠΈΡΡ Π΅Π΅ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ MySQL, PostgreSQL ΠΈΠ»ΠΈ SQLite. ΠΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°ΠΊΠΈΡ ΡΡΠ΅Π΄ΡΡΠ², ΠΊΠ°ΠΊ NuLog.
NFLOG — Π±ΠΎΠ»Π΅Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ULOG, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ΅ Π½Π΅ Π½Π°ΠΏΡΡΠΌΡΡ Π² netlink-ΡΠΎΠΊΠ΅Ρ (ΠΊΠ°ΠΊ ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ULOG), Π° ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ΅ — logging backend. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π±ΡΠΊΠ΅Π½Π΄ nfnetlink_log ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π΄Π°Π½Π½ΡΡ Π² netlink-ΡΠΎΠΊΠ΅Ρ, ΡΠΎ Π΅ΡΡΡ Ρ Π½ΠΈΠΌ NFLOG ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ULOG.
NFQUEUE — Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΏΠΎΡ ΠΎΠΆΠ΅ Π½Π° ULOG, Π½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΌΡ Π΄Π΅ΠΌΠΎΠ½Ρ Π½Π΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ΅, Π° ΡΠ°ΠΌ ΠΏΠ°ΠΊΠ΅Ρ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ. ΠΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ, Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΡ l7-filter-userspace.
QUEUE — ΡΡΡΠ°ΡΠ΅Π²ΡΠ°Ρ Π²Π΅ΡΡΠΈΡ NFQUEUE. ΠΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΎΡΠ΅ΡΠ΅Π΄ΡΡ Π½ΠΎΠΌΠ΅Ρ 0.
1.6.4 Π’Π΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΈ Π½Π΅ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ
Π’Π΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠΌΠΈ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅ΡΡΠ²Π°ΡΡ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ° ΡΠ΅ΡΠ΅Π· ΡΠ΅ΠΊΡΡΡΡ Π±Π°Π·ΠΎΠ²ΡΡ ΡΠ΅ΠΏΠΎΡΠΊΡ. Π’ΠΎ Π΅ΡΡΡ Π΅ΡΠ»ΠΈ ΠΊ ΠΏΠ°ΠΊΠ΅ΡΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π° Π±ΡΠ»ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΎ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, ΠΎΠ½ ΡΠΆΠ΅ Π½Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Π²ΡΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ Π² ΡΡΠΎΠΉ ΡΠ΅ΠΏΠΎΡΠΊΠ΅ (ΠΈ Π² ΡΠ΅Ρ ΡΠ΅ΠΏΠΎΡΠΊΠ°Ρ , ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½Π° Π±ΡΠ»Π° Π²ΡΠ·Π²Π°Π½Π°, Π΅ΡΠ»ΠΈ ΡΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠ°Ρ ΡΠ΅ΠΏΠΎΡΠΊΠ°). Π’Π΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ Π²ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ filter ΠΈ nat. ΠΠ· ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ Π² ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ — ACCEPT, DROP, REJECT, NFQUEUE, QUEUE.
ΠΠ΅ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠΌΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΡΠ²Π»ΡΡΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, Π½Π΅ ΠΏΡΠ΅ΡΡΠ²Π°ΡΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ° ΡΠ΅ΡΠ΅Π· ΡΠ΅ΠΏΠΎΡΠΊΠΈ. ΠΠ΅ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΡΠ½ΡΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ mangle, Π° ΠΈΠ· ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ — LOG, ULOG ΠΈ NFLOG.
1.6.5 Π’Π°Π±Π»ΠΈΡΠ° mangle
ΠΠ°Π½Π½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΏΠΎ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² (ΠΏΠΎΠ»Ρ TTL ΠΈ TOS).
Π’Π°Π±Π»ΠΈΡΠ° mangle ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ΅ΠΏΠΎΡΠΊΠΈ (Π ΠΈΡ. 3):
PREROUTING — ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅Ρ Π΄ΠΎ ΠΏΡΠΈΠ½ΡΡΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΎ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ.
INPUT — ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅Ρ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ ΡΠ°ΠΌΠΎΠΌΡ Ρ ΠΎΡΡΡ.
FORWARD — ΡΠ΅ΠΏΠΎΡΠΊΠ°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ°Π½Π·ΠΈΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ.
OUTPUT — ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ, ΠΈΡΡ ΠΎΠ΄ΡΡΠΈΠ΅ ΠΎΡ ΡΠ°ΠΌΠΎΠ³ΠΎ Ρ ΠΎΡΡΠ°.
POSTROUTING — Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΠΈΡΡ ΠΎΠ΄ΡΡΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ, ΠΊΠ°ΠΊ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°ΠΌΠΈΠΌ Ρ ΠΎΡΡΠΎΠΌ, ΡΠ°ΠΊ ΠΈ ΡΡΠ°Π½Π·ΠΈΡΠ½ΡΠ΅.
ΠΠ°ΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ Π²ΡΠ΅ ΡΠ΅ΠΏΠΎΡΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ mangle ΠΏΠ°ΠΊΠ΅ΡΡ ΠΏΡΠΎΡ ΠΎΠ΄ΡΡ ΡΠ°Π½ΡΡΠ΅, ΡΠ΅ΠΌ ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ΅ΠΏΠΎΡΠΊΠΈ ΡΠ°Π±Π»ΠΈΡ nat ΠΈ filter. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΊΠ»Π°ΡΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π² ΡΠ΅ΠΏΠΎΡΠΊΠ°Ρ ΡΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΡΡΠΈ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ Π² ΡΠ΅ΠΏΠΎΡΠΊΠ°Ρ Π΄Π²ΡΡ Π΄ΡΡΠ³ΠΈΡ ΡΠ°Π±Π»ΠΈΡ ΠΏΡΠΈ ΠΏΡΠΈΠ½ΡΡΠΈΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΎ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΠΈ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ Π°Π΄ΡΠ΅ΡΠΎΠ².
Π ΠΈΡ. 3 — Π¦Π΅ΠΏΠΎΡΠΊΠΈ
1.6.6 Π’Π°Π±Π»ΠΈΡΠ° filter
ΠΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΡΡΠ°ΡΠΈΠΊΠ°, ΡΠΎ Π΅ΡΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ.
Π’Π°Π±Π»ΠΈΡΠ° filter ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ΅ΠΏΠΎΡΠΊΠΈ:
INPUT — ΡΡΠ° ΡΠ΅ΠΏΠΎΡΠΊΠ° ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΡΡΠ°ΡΠΈΠΊ, ΠΏΠΎΡΡΡΠΏΠ°ΡΡΠΈΠΉ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ°ΠΌΠΎΠΌΡ Ρ ΠΎΡΡΡ.
FORWARD — ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ ΡΡΠ°Π½Π·ΠΈΡΠ½ΡΠΉ ΡΡΠ°ΡΠΈΠΊ.
OUTPUT — ΡΡΠ° ΡΠ΅ΠΏΠΎΡΠΊΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ ΡΡΠ°ΡΠΈΠΊ, ΠΈΡΡ ΠΎΠ΄ΡΡΠΈΠΉ ΠΎΡ ΡΠ°ΠΌΠΎΠ³ΠΎ Ρ ΠΎΡΡΠ°.
ΠΠΎΠΏΡΡΡΠΈΠΌΡΠΌΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ filter ΡΠ²Π»ΡΡΡΡΡ:
ACCEPT — ΠΏΡΠΎΠΏΡΡΠΊ ΠΏΠ°ΠΊΠ΅ΡΠ°. ΠΠ°ΠΊΠ΅Ρ ΠΏΠΎΠΊΠΈΠ΄Π°Π΅Ρ ΡΠ΅ΠΊΡΡΡΡ Π±Π°Π·ΠΎΠ²ΡΡ ΡΠ΅ΠΏΠΎΡΠΊΡ ΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π΄Π°Π»ΡΡΠ΅ ΠΏΠΎ ΠΏΠΎΡΠΎΠΊΠΎΠ²ΠΎΠΉ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ΅ (ΡΠΌ. ΡΠΈΡ.).
REJECT — Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅Ρ ΠΈ ΡΠΎΠΎΠ±ΡΠΈΡΡ Π΅Π³ΠΎ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΡ ΠΎΠ± ΠΎΡΠΊΠ°Π·Π΅. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΊΠ°Π·Π΅ ΡΠΎΠΎΠ±ΡΠ°Π΅ΡΡΡ ΠΎΡΠΏΡΠ°Π²ΠΊΠΎΠΉ ΠΎΡΠ²Π΅ΡΠ½ΠΎΠ³ΠΎ ICMP-ΠΏΠ°ΠΊΠ΅ΡΠ° «icmp-port-unreachable». ΠΠ΄Π½Π°ΠΊΠΎ, ΡΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΠΏΡΠΈΡ —reject-with, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΡΡ ΡΠΊΠ°Π·Π°ΡΡ ΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²ΠΊΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΊΠ°Π·Π΅ (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ: icmp-net-unreachable, icmp-host-unreachable, icmp-proto-unreachable, icmp-net-prohibited, icmp-host-prohibited). ΠΠ»Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° TCP ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΠΎΡΠΊΠ°Π· Π² ΡΠΎΡΠΌΠ΅ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ RST-ΠΏΠ°ΠΊΠ΅ΡΠ° (—reject-with tcp-reset).
DROP — Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅Ρ, Π½Π΅ ΡΠΎΠΎΠ±ΡΠ°Ρ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΡ ΠΎΠ± ΠΎΡΠΊΠ°Π·Π΅. ΠΠΎΠ»Π΅Π΅ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π° ΠΏΡΠΈ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΡΡΠ°ΡΠΈΠΊΠ° Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°Ρ , ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΡΡ ΠΊ ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎΠ½ΠΈΠΆΠ°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ²Π½ΠΎΡΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΡΡΠΎΠ² Ρ ΠΎΡΡΠ° Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌΠΈ.
Π’Π°ΠΊΠΆΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ xtables-addons (Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ ΡΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ Π² Debian testing). ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ :
STEAL — Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ DROP, Π½ΠΎ Π² ΡΠ»ΡΡΠ°Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠ΅ΠΏΠΎΡΠΊΠ΅ OUTPUT ΠΏΡΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΡΡ ΠΎΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° Π½Π΅ ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΡΡΠ°Π²ΡΠ΅ΠΌΡΡΡ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠΎΡ ΠΏΠ°ΠΊΠ΅Ρ.
TARPIT — «ΠΏΠΎΠ΄Π²Π΅ΡΠΈΡΡ» TCP-ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π»ΠΈΡΡ Π² ΡΠ°ΠΌΡΡ ΠΊΡΠ°ΠΉΠ½ΠΈΡ ΡΠ»ΡΡΠ°ΡΡ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Π±ΠΎΡΡΠ±Π΅ Ρ DoS-Π°ΡΠ°ΠΊΠ°ΠΌΠΈ. ΠΡΠ²Π΅ΡΠ°Π΅Ρ Π½Π° Π²Ρ ΠΎΠ΄ΡΡΠ΅Π΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΡΠΌΠ΅Π½ΡΡΠ°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΠ΅ΠΉΠΌΠ° Π΄ΠΎ Π½ΡΠ»Ρ, Π±Π»ΠΎΠΊΠΈΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄Π°Π½Π½ΡΡ . Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ «Π²ΠΈΡΠ΅ΡΡ» Π² ΡΠ°ΠΊΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΈΡΡΠ΅ΡΠ΅Ρ ΡΠ°ΠΉΠΌ-Π°ΡΡ Π½Π° Π°ΡΠ°ΠΊΡΡΡΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Π΅ (ΠΎΠ±ΡΡΠ½ΠΎ 20—30 ΠΌΠΈΠ½ΡΡ). ΠΡΠΈ ΡΡΠΎΠΌ Π½Π° ΡΠ°ΠΊΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΠ°ΡΡ ΠΎΠ΄ΡΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ Π°ΡΠ°ΠΊΡΡΡΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Ρ (ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½Π°Ρ ΠΏΠ°ΠΌΡΡΡ), ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²Π΅ΡΡΠΌΠ° ΠΎΡΡΡΠΈΠΌΠΎ ΠΏΡΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ. Π ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ TARPIT ΡΠ΅ΡΡΡΡΡ Π°ΡΠ°ΠΊΡΠ΅ΠΌΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅ ΡΠ°ΡΡ ΠΎΠ΄ΡΡΡΡΡ.
ΠΠΎΠ΄ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΌ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΡΡΡ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ°ΠΊΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ conntrack, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π±ΡΠ΄ΡΡ ΡΠ°ΡΡ ΠΎΠ΄ΠΎΠ²Π°ΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ ΡΠ°ΠΌΠΎΠ³ΠΎ Π°ΡΠ°ΠΊΡΠ΅ΠΌΠΎΠ³ΠΎ Ρ ΠΎΡΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ΅ΡΠ΅Π΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΡΡΠ°
DELUDE — ΡΠΎΠ·Π΄Π°ΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΡ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ TCP-ΠΏΠΎΡΡΠ°. ΠΠ° SYN-ΠΏΠ°ΠΊΠ΅ΡΡ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ SYN/ACK, Π½Π° Π²ΡΠ΅ ΠΏΡΠΎΡΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ RST. ΠΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ Π²Π²Π΅Π΄Π΅Π½ΠΈΡ Π² Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°, ΡΠΊΠ°Π½ΠΈΡΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ Ρ ΠΎΡΡΠ°.
CHAOS — Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ TCP-ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π΄Π²ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. ΠΠ΅ΡΠ²ΠΎΠ΅ ΠΈΠ· Π½ΠΈΡ — REJECT, Π²ΡΠΎΡΠΎΠ΅, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΉ ΠΎΠΏΡΠΈΠΈ, Π»ΠΈΠ±ΠΎ TARPIT (—tarpit), Π»ΠΈΠ±ΠΎ DELUDE (—delude). Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ CHAOS —delude Π΄Π»Ρ Π²ΡΠ΅Ρ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΏΠΎΡΡΠΎΠ², ΡΠΊΠ°Π½ΠΈΡΡΡΡΠΈΠΉ Π²Π°ΡΠΈ ΠΏΠΎΡΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΠΎΠ»ΡΡΠΈΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π½Π΅Π²Π΅ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Π²Π°ΡΠΈΡ ΠΏΠΎΡΡΠΎΠ². Π ΡΠ»ΡΡΠ°Π΅ Ρ CHAOS —tarpit ΡΠΈΡΡΠ°ΡΠΈΡ ΡΡΡΠ³ΡΠ±ΠΈΡΡΡ Π΅ΡΠ΅ ΠΈ «ΠΏΠΎΠ΄Π²ΠΈΡΠ°ΡΡΠΈΠΌΠΈ» ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡΠΌΠΈ.
ΠΡΠΎΠ±ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ Π²ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ filter, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π² Π»ΡΠ±ΠΎΠΉ ΠΈΠ· ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ Π»ΡΠ±ΠΎΠΉ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡ (ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Ρ ΡΠ°Π·ΡΠΌΠ½ΡΠΌΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ — Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π΅ ΡΡΠΎΠΈΡ ΡΡΠ°Π²ΠΈΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ TARPIT, CHAOS ΠΈ DELUDE Π΄Π»Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΈΡΡ ΠΎΠ΄ΡΡΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²). ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΄Π»Ρ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ, ΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈΡ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΡ filter ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄ΡΡΠ½ΡΠΌ ΡΠΎΠ½ΠΎΠΌ. ΠΠ°ΠΊ ΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΡ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ mangle, Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ filter ΠΈ nat.
2. Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ
Snort Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ Snort_inline Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Kali-linux-1.0.9. ΠΠ»Ρ Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ snort Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ:
pcre-8.12.zip
libpcap-1.1.1.tar.gz
libdnet-1.11.tar.gz
libnfnetlink-1.0.0.tar
libnetfilter_queue-1.0.0.tar
daq-0.5.tar.gz
ΠΠ»Ρ configure ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π·Π°Π΄Π°Π΅ΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ:
./configure —libdir=/usr/lib —includedir=/usr/include && make && make install
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΌ ΡΡΠ°ΠΏΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ±ΠΎΡΠΊΠ° snort:
./configure —libdir=/usr/lib —includedir=/usr/include —enable-ipv6 —enable-gre —enable-targetbased —enable-decoder-preprocessor-rules —enable-active-response —enable-normalizer —enable-reload —enable-react —enable-zlib —enable-inline && make && make install
Π³Π΄Π΅:
—enable-ipv6 — ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° IP v6 (Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ ΠΊΠ°ΠΏΠΈΡΠ°Π½!).
—enable-gre — ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° GRE ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΡΡΠΈΠΈ.
—enable-targetbased — ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ±ΠΎΡΠ° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
—enable-decoder-preprocessor-rules — ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠ°Π²ΠΈΠ» Π΄Π»Ρ ΡΠ΅Π°ΠΊΡΠΈΠΈ Π½Π° Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ Π²ΡΡΠ²Π»Π΅Π½Π½ΡΠ΅ Π² ΡΡΠ°ΡΠΈΠΊΠ΅ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² ΠΈ Π΄Π΅ΠΊΠΎΠ΄Π΅ΡΠΎΠ².
—enable-active-response — ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ Π² ΡΠ΅Π°Π½Ρ ΠΏΠ°ΠΊΠ΅ΡΠ° ΠΏΡΠΈ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°.
—enable-normalizer — ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ².
—enable-reload — Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ/Π²ΡΠ³ΡΡΠ·ΠΊΠΈ ΠΏΡΠ°Π²ΠΈΠ» Π±Π΅Π· ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ SNORT.
—enable-react — ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ²Π° ΡΠ΅Π°Π½ΡΠ° (RST) ΠΏΡΠΈ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°.
—enable-zlibΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΆΠ°ΡΠΎΠ³ΠΎ ΡΡΠ°ΡΠΈΠΊΠ°;
—enable-inline — ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ libipq Π΄Π»Ρ snort inline.
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ snort, ΠΏΡΡΡ ΠΊ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ:
/etc/snort/snort.conf .
var HOME_NET 1.2.3.4 # ip-Π°Π΄ΡΠ΅Ρ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°
var EXTERNAL_NET any
var HTTP_SERVERS $HOME_NET
portvar HTTP_PORTS [80,8080]
# ΠΏΡΡΡ ΠΊ ΠΏΠ°ΠΏΠΊΠ°ΠΌ Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ
var RULE_PATH /etc/snort/rules
var PREPROC_RULE_PATH /etc/snort/preproc_rules
# Π·Π°ΠΏΡΠ΅ΡΠ°Π΅ΠΌ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
config disable_decode_alerts
config disable_tcpopt_experimental_alerts
config disable_tcpopt_obsolete_alerts
config disable_tcpopt_ttcp_alerts
config disable_tcpopt_alerts
config disable_ipopt_alerts
# Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌ ΡΠ΅ΠΆΠΈΠΌ inline
config daq: iptables
config daq_mode: inline
config policy_mode: inline
# ΠΏΠ°ΠΏΠΊΠΈ Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°ΠΌΠΈ
dynamicpreprocessor directory /usr/local/lib/snort_dynamicpreprocessor/
dynamicengine /usr/local/lib/snort_dynamicengine/libsf_engine.so
# ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
preprocessor frag3_global: max_frags 65 536
preprocessor frag3_engine: policy linux
# tcp ΠΈ udp ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ
preprocessor stream5_global: max_tcp 8192, track_tcp yes, track_udp no
preprocessor stream5_tcp: policy linux
#preprocessor stream5_udp: ignore_any_rules
preprocessor http_inspect: global iis_unicode_map unicode. map 1251
preprocessor http_inspect_server: server default profile apache no_alerts ports { 80 8080 8180 } oversize_dir_length 500
output alert_syslog: LOG_ALERT
# ΠΈΠ½ΠΊΠ»ΡΠ΄ΠΈΠΌ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΡΡΠ°ΡΡΠΈΠΊΠ°
include classification. config
include reference. config
# ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»
include $RULE_PATH/local.rules
Π ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π° Π΄Π»Ρ snort, ΠΏΡΡΡ ΠΊ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ — /etc/snort/rules:
# ΡΠ±ΠΈΠ²Π°Π΅ΠΌ UNION SQL injection
drop tcp any any -> $HOME_NET $HTTP_PORTS (msg:" UNION SQL Injection" ;uricontent:" union" ;nocase;uricontent:" select" ;nocase;sid:1;gid:666;)
# ΡΠ±ΠΈΠ²Π°Π΅ΠΌ blind SQL injection
drop tcp any any -> $HOME_NET $HTTP_PORTS (msg:" Blind SQL Injection" ;uricontent:" ascii" ;nocase;uricontent:" substr" ;nocase;uricontent:" select" ;nocase;sid:2;gid:666;)
# ΡΠ±ΠΈΠ²Π°Π΅ΠΌ XSS/CSS
drop tcp any any -> $HOME_NET $HTTP_PORTS (msg:" XSS/CSS attack" ;uricontent:" «;nocase;sid:4;gid:666;)
# ΡΠ±ΠΈΠ²Π°Π΅ΠΌ Ρ ΠΈΡΡΡΠΉ XSS/CSS
drop tcp any any -> $HOME_NET $HTTP_PORTS (msg:" XSS/CSS attack" ;pcre:" /GET /.*?.*=(javascript:|onclick=|onmouseover=|onmouseout=|onload=).*n/i" ;sid:5;gid:666;)
# ΡΠ±ΠΈΠ²Π°Π΅ΠΌ ./././etc/passwd
drop tcp any any -> $HOME_NET $HTTP_PORTS (msg:" PHP include attack" ;uricontent:" =./." ;sid:6;gid:666;)
ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π²Π²Π΅Π΄Π΅Π½Ρ ΠΏΡΠΈΡΡΡΠΏΠ°Π΅ΠΌ ΠΊ Π·Π°ΠΏΡΡΠΊΡ snort.
snortQ —daq nfq —daq-var queue=2 -c /etc/snort/snort.conf
— Q — ΡΠ°Π±ΠΎΡΠ° Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ IPS
—daq — ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
—daq-var — ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
— Ρ — ΠΏΡΡΡ ΠΊ ΠΊΠΎΠ½ΡΠΈΠ³Ρ ΠΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° snort Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌ iptables:
iptablest natA PREROUTINGj NFQUEUE —queue-num 2
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΈ Π·Π°ΠΏΡΡΠΊ snort ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½Π½ΡΠΌ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΡΠΎΠ΄Π΅Π»Π°Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π±ΡΠ»Π° ΠΈΠ·ΡΡΠ΅Π½Π° Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ Snort_inline Π½Π° Π±Π°Π·Π΅ Snort. ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½Ρ Π·Π½Π°Π½ΠΈΡ ΠΎ ΡΡΡΡΠΊΡΡΡΠ΅ Π΄Π°Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°Ρ Π΅Ρ ΡΠ°Π±ΠΎΡΡ. ΠΠ°ΡΡΠΈΠ»ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»Π° Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ.
Π‘ΠΏΠΈΡΠΎΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ²
1. Π₯Π°Π±ΡΠ°Ρ Π°Π±Ρ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ snort Π΄Π»Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π°ΡΠ°ΠΊ ΡΠΊΡΠΈΠΏΡ-ΠΊΠΈΠ΄Π΄ΠΈΡΠΎΠ² — [ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ ΡΠ΅ΡΡΡΡ] - Π Π΅ΠΆΠΈΠΌ Π΄ΠΎΡΡΡΠΏΠ°: http://habrahabr.ru/post/69 854/
2. Π ΡΡΡΠΊΠ°Ρ Π³ΡΡΠΏΠΏΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Snort. Snort_inline — ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ (IPS) Π½Π° Π±Π°Π·Π΅ Snort — [ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ ΡΠ΅ΡΡΡΡ] - Π Π΅ΠΆΠΈΠΌ Π΄ΠΎΡΡΡΠΏΠ°: http://www.snortgroup.ru/node/137
3. ΠΠΌΠΈΡΡΠΈΠΉ Π ΠΎΠΆΠΊΠΎΠ². Snort — [ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ ΡΠ΅ΡΡΡΡ] - Π Π΅ΠΆΠΈΠΌ Π΄ΠΎΡΡΡΠΏΠ°: http://snortgroup.ru/sites/default/files/Snort_linuxcenter.pdf
4. Prezi. Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ Snort — [ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ ΡΠ΅ΡΡΡΡ] - Π Π΅ΠΆΠΈΠΌ Π΄ΠΎΡΡΡΠΏΠ°: https://prezi.com/ihemgx4iejeu/snort/
5. Unixzen. FreeBSD IPS ΡΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌ Snort — [ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ ΡΠ΅ΡΡΡΡ] - Π Π΅ΠΆΠΈΠΌ Π΄ΠΎΡΡΡΠΏΠ°: http://unixzen.ru/freebsd-ips-%D1%81%D0%BE-%D0%B2%D1%81%D1%82%D1%80%D0%BE%D0%B5%D0%BD%D0%BD%D1%8B%D0%BC-snort/
6. ΠΠΈΠΊΠΈΡΡΠ΅Π±Π½ΠΈΠΊ. Iptables — [ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ ΡΠ΅ΡΡΡΡ] - Π Π΅ΠΆΠΈΠΌ Π΄ΠΎΡΡΡΠΏΠ°: http://ru.wikibooks.org/wiki/Iptables#.D0.A2.D0.B0.D0.B1.D0.BB.D0.B8.D1.86.D0.B0_filter
7. OpenNET. Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π²ΡΠΎΡΠΆΠ΅Π½ΠΈΠΉ Π½Π° Π±Π°Π·Π΅ IDS Snort (snort ids) — [ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ ΡΠ΅ΡΡΡΡ] - http://www.opennet.ru/base/sec/snort_ids.txt.html
8. Habrahabr. SNORT ΠΊΠ°ΠΊ ΡΠ΅ΡΠ²ΠΈΡΠ½Π°Ρ IPS — [ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ ΡΠ΅ΡΡΡΡ] - http://habrahabr.ru/post/123 474/
9. Hacktracking. Snort IPS: afpacket and nfq — [ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ ΡΠ΅ΡΡΡΡ] - http://hacktracking.blogspot.ru/2013/10/snort-ips-inline-mode-installation.html