ΠΠ½Π°Π»ΠΈΠ· ΡΠ΅Ρ Π½ΠΈΠΊ ΠΏΡΠΎΡΠΈΠ²ΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½ΠΈΠ·ΠΊΠΎΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΡΠΌ Π°ΡΠ°ΠΊΠ°ΠΌ
ΠΡΠ°Π²ΠΈΠ»Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡ ΡΠΈΡΠ»ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ ΠΏΡΡΡΡ Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ·Π»Π°. ΠΡΠΈ ΠΏΡΠ΅Π²ΡΡΠ΅Π½ΠΈΠΈ ΡΡΠΎΠ³ΠΎ Π»ΠΈΠΌΠΈΡΠ° ΠΏΠΎΠΏΡΡΠΊΠ° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠ΅ΡΠ°Π΅ΡΡΡ. ΠΡΠ»ΠΈ Ρ Π°ΡΠ°ΠΊΡΡΡΠ΅Π³ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ Π±ΠΎΡΠ½Π΅Ρ, ΠΎΠ½ Π²ΡΡ ΡΠ°Π²Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π°ΡΠ°ΠΊΠΎΠ²Π°ΡΡ. Π’Π°ΠΊΠΆΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ connlimit Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΎΡΠ΅Π½Ρ Π½ΠΈΠ·ΠΊΠΈΠΌ, ΡΡΠΎΠ±Ρ Π·Π°ΡΠΈΡΠΈΡΡ web-ΡΠ΅ΡΠ²Π΅Ρ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ Π·Π°ΡΡΡΠ΄Π½ΠΈΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ° Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΡΠΌΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ ΠΈ Π²ΡΠ·ΡΠ²Π°Π΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π»ΠΎΠΆΠ½ΡΡ … Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΠ½Π°Π»ΠΈΠ· ΡΠ΅Ρ Π½ΠΈΠΊ ΠΏΡΠΎΡΠΈΠ²ΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½ΠΈΠ·ΠΊΠΎΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΡΠΌ Π°ΡΠ°ΠΊΠ°ΠΌ (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ΅Π³ΠΎΠ΄Π½Ρ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΡΠΎΡΠΈΠ²ΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ low-rate DDoS Π°ΡΠ°ΠΊΠ°ΠΌ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ» ΠΌΠ΅ΠΆΡΠ΅ΡΠ΅Π²ΡΡ ΡΠΊΡΠ°Π½ΠΎΠ² ΠΈ ΡΠΈΡΡΠ΅ΠΌ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π²ΡΠΎΡΠΆΠ΅Π½ΠΈΠΉ (IDS). ΠΡΠ°Π²ΠΈΠ»Π° ΠΌΠ΅ΠΆΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ iptables [21], ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠΈΡΡΠ΅ΠΌ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π²ΡΠΎΡΠΆΠ΅Π½ΠΈΠΉ — Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Snort [22].
1) Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π»ΠΈΠΌΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ.
iptablesI INPUTp tcp —syn —dport 80 -m connlimit.
—connlimit-above 5 —connlimit-mask 32 -j DROP.
iptablesI INPUTp tcp —dport 80 -j ACCEPT.
ΠΡΠ°Π²ΠΈΠ»Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡ ΡΠΈΡΠ»ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ ΠΏΡΡΡΡ Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ·Π»Π°. ΠΡΠΈ ΠΏΡΠ΅Π²ΡΡΠ΅Π½ΠΈΠΈ ΡΡΠΎΠ³ΠΎ Π»ΠΈΠΌΠΈΡΠ° ΠΏΠΎΠΏΡΡΠΊΠ° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠ΅ΡΠ°Π΅ΡΡΡ. ΠΡΠ»ΠΈ Ρ Π°ΡΠ°ΠΊΡΡΡΠ΅Π³ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ Π±ΠΎΡΠ½Π΅Ρ, ΠΎΠ½ Π²ΡΡ ΡΠ°Π²Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π°ΡΠ°ΠΊΠΎΠ²Π°ΡΡ. Π’Π°ΠΊΠΆΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ connlimit Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΎΡΠ΅Π½Ρ Π½ΠΈΠ·ΠΊΠΈΠΌ, ΡΡΠΎΠ±Ρ Π·Π°ΡΠΈΡΠΈΡΡ web-ΡΠ΅ΡΠ²Π΅Ρ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ Π·Π°ΡΡΡΠ΄Π½ΠΈΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ° Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΡΠΌΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ ΠΈ Π²ΡΠ·ΡΠ²Π°Π΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π»ΠΎΠΆΠ½ΡΡ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠΉ (false positives). Π’Π°ΠΊΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° Π·Π°ΡΡΡΠ΄Π½ΡΡΡ ΠΈΠ»ΠΈ ΠΈΡΠΊΠ»ΡΡΠ°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ NAT ΠΈ proxy-ΡΠ΅ΡΠ²Π΅ΡΠΎΠ².
2) ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ Π»ΠΈΠΌΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ.
iptablesI INPUTp tcpm state —state NEW —dport 80.
— m recent —name slowloris —set.
iptablesI INPUTp tcpm state —state NEW —dport 80.
- -m recent —name slowloris —update
- —seconds 15 —hitcount 10 -j DROP
iptablesA INPUTp tcp —dport 80 -j ACCEPT.
ΠΠ΅ΡΠ²ΡΠ΅ Π΄Π²Π° ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΈ ΡΠΈΡΠ»ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ip-Π°Π΄ΡΠ΅ΡΠ°. ΠΡΠ»ΠΈ Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ip-Π°Π΄ΡΠ΅ΡΠ° ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ 10 ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 15 ΡΠ΅ΠΊΡΠ½Π΄, ΡΠΎ ΡΠ°ΠΊΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ Π±Π»ΠΎΠΊΠΈΡΡΠ΅ΡΡΡ. ΠΠ»Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° ΠΏΡΠ°Π²ΠΈΠ» Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠ½ΠΎ Π½Π΅ΠΏΡΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π»ΠΎΠΆΠ½ΡΡ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠΉ [23]. ΠΠ΅Π³ΠΈΡΠΈΠΌΠ½ΡΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Ρ ΠΎΡΡΠΎΠ² ΡΠ΅ΡΠ΅Π· ΠΎΠ΄ΠΈΠ½ NAT ΠΈ proxy-ΡΠ΅ΡΠ²Π΅Ρ ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ΄ΡΡ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡ ΡΡΠΈΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ ΠΈ Π±ΡΠ΄ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΌΠ΅ΠΆΡΠ΅ΡΠ΅Π²ΡΠΌ ΡΠΊΡΠ°Π½ΠΎΠΌ.
3) ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ» IDS.
ΠΡΠ°Π²ΠΈΠ»Π° Snort, Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π² ΡΠΎΡΡΠ°Π² Π½Π°Π±ΠΎΡΠ° ΠΏΡΠ°Π²ΠΈΠ» ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ [24], ΠΎΡΠ½ΠΎΠ²Π°Π½Ρ Π½Π° ΠΏΠΎΠΈΡΠΊΠ΅ ΡΡΡΠΎΠΊΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ², ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Π°ΡΠ°ΠΊ, ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ ΠΏΠΎΡΠΎΠ³ΠΎΠ²ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π² Π΅Π΄ΠΈΠ½ΠΈΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
alert tcp any any -> any any (msg:" low-rate DDoS" ;
flow:to_server, established; content:"some DoS tool user-agent specific content".
detection_filter:track by_src, count 20, seconds 20;
metadata:service http; classtype: attempted-dos; sid:1 234 572; rev:2;).
Π’Π°ΠΊΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° Π»Π΅Π³ΠΊΠΎ ΠΎΠ±Ρ ΠΎΠ΄ΡΡΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΡΠ΅Π½Π°ΡΠΈΡ ΠΈ user-Π°Π³Π΅Π½ΡΠ° Π»Π΅Π³ΠΊΠΎ ΡΠ΅ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΡΡΡΡΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠ°Π²ΠΈΠ» ΠΌΠ΅ΠΆΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠΊΡΠ°Π½Π°, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΡ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ ΡΠΈΡΠ»Π° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ, ΡΡΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° IDS Π³Π΅Π½Π΅ΡΠΈΡΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π»ΠΎΠΆΠ½ΡΡ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠΉ.