Новый Π±ΠΈΠ»Π΄ Nemesida WAF Free для NGINX

Новый Π±ΠΈΠ»Π΄ Nemesida WAF Free для NGINX
Π’ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ Π³ΠΎΠ΄Ρƒ ΠΌΡ‹ выпустили Nemesida WAF Free β€” динамичСский ΠΌΠΎΠ΄ΡƒΠ»ΡŒ для NGINX, Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π°Ρ‚Π°ΠΊΠΈ Π½Π° Π²Π΅Π±-прилоТСния. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ коммСрчСской вСрсии, основанной Π½Π° Ρ€Π°Π±ΠΎΡ‚Π΅ машинного обучСния, бСсплатная вСрсия Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ запросы Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сигнатурным ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ€Π΅Π»ΠΈΠ·Π° Nemesida WAF 4.0.129

Π”ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ Ρ€Π΅Π»ΠΈΠ·Π° динамичСский ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Nemesida WAF ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Nginx Stable 1.12, 1.14 ΠΈ 1.16. Π’ Π½ΠΎΠ²ΠΎΠΌ Ρ€Π΅Π»ΠΈΠ·Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Nginx Mainline, начиная с 1.17, ΠΈ Nginx Plus, начиная с 1.15.10 (R18).

Π—Π°Ρ‡Π΅ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ WAF?


NAXSI ΠΈ mod_security, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, самыС популярныС бСсплатныС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ WAF, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ mod_security Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ продвигаСтся силами Nginx, хотя, ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ, использовался Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Apache2. Оба Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ бСсплатныС, ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ исходный ΠΊΠΎΠ΄ ΠΈ мноТСство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π²ΠΎ всСм ΠΌΠΈΡ€Π΅. Для mod_security доступСн бСсплатный ΠΈ коммСрчСский, Π·Π° $500 Π² Π³ΠΎΠ΄, Π½Π°Π±ΠΎΡ€Ρ‹ сигнатур, для NAXSI β€” бСсплатный Π½Π°Π±ΠΎΡ€ сигнатур Β«ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈΒ», Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π½Π°Π±ΠΎΡ€Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ», Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ doxsi.

Π’ этом Π³ΠΎΠ΄Ρƒ ΠΌΡ‹ ΠΏΡ€ΠΎΠ²Π΅Π»ΠΈ тСстированиС Ρ€Π°Π±ΠΎΡ‚Ρ‹ NAXSI ΠΈ Nemesida WAF Free. Если ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎ ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°Ρ…:

  • NAXSI Π½Π΅ выполняСт Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ URL-decode Π² cookie
  • NAXSI ΠΎΡ‡Π΅Π½ΡŒ Π΄ΠΎΠ»Π³ΠΎ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ β€” ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π΄Π΅Ρ„ΠΎΠ»Ρ‚Π½Ρ‹Π΅ настройки ΠΏΡ€Π°Π²ΠΈΠ» Π±ΡƒΠ΄ΡƒΡ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ (Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ профиля ΠΈΠ»ΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°, участиС Π² опросах ΠΈ Ρ‚.Π΄.) ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ списки ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, Ρ‡Ρ‚ΠΎ ΠΏΠ»ΠΎΡ…ΠΎ сказываСтся Π½Π° бСзопасности. Nemesida WAF Free с настройками ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ с сайтом Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ»Π° Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π»ΠΎΠΆΠ½ΠΎΠ³ΠΎ срабатывания.
  • количСство пропусков Π°Ρ‚Π°ΠΊ Ρƒ NAXSI Π² Ρ€Π°Π·Ρ‹ Π²Ρ‹ΡˆΠ΅ ΠΈ Ρ‚.Π΄.

НСсмотря Π½Π° нСдостатки, NAXSI ΠΈ mod_security ΠΈΠΌΠ΅ΡŽΡ‚, ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ, Π΄Π²Π° прСимущСства β€” ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ исходный ΠΊΠΎΠ΄ ΠΈ большоС количСство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. ΠœΡ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌ идСю раскрытия исходного ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ этого ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ·-Π·Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с «пиратством» коммСрчСской вСрсии, Π½ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠΌΠΏΠ΅Π½ΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот нСдостаток β€” ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ раскрываСм содСрТимоС Π½Π°Π±ΠΎΡ€Π° сигнатур. ΠœΡ‹ Ρ†Π΅Π½ΠΈΠΌ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌ Π² этом ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ прокси-сСрвСра.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Nemesida WAF Free:

  • качСствСнная Π±Π°Π·Π° сигнатур с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ количСством False Positive ΠΈ False Negative.
  • установка ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ· рСпозитория (это быстро ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ);
  • простыС ΠΈ понятныС события ΠΎΠ± ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚Π°Ρ…, Π° Π½Π΅ «каша», ΠΊΠ°ΠΊ Ρƒ NAXSI;
  • ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ бСсплатный, Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ количСству Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… хостов ΠΈ Ρ‚.Π΄.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ нСсколько запросов для ΠΎΡ†Π΅Π½ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ WAF (рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π·ΠΎΠ½: URL, ARGS, Headers & Body):

')) un","ion se","lect 1,2,3,4,5,6,7,8,9,0,11#"] ')) union/**/select/**/1,/**/2,/**/3,/**/4,/**/5,/**/6,/**/7,/**/8,/**/9,/**/'some_text',/**/11#"] union(select(1),2,3,4,5,6,7,8,9,0x70656e746573746974,11)#"] ')) union+/*!select*/ (1),(2),(3),(4),(5),(6),(7),(8),(9),(0x70656e746573746974),(11)#"] ')) /*!u%6eion*/ /*!se%6cect*/ (1),(2),(3),(4),(5),(6),(7),(8),(9.),(0x70656e746573746974),(11)#"] ')) %2f**%2funion%2f**%2fselect (1),(2),(3),(4),(5),(6),(7),(8),(9),(0x70656e746573746974),(11)#"] %5B%221807182982%27%29%29%20uni%22%2C%22on
%20sel%22%2C%22ect%201%2C2%2C3%2C4%2C5%2C6%2C7%2C8%2C9%2C%2some_text%27%2C11%23%22%5D
cat /et?/pa?swd
cat /et'c/pa'ss'wd
cat /et*/pa**wd
e'c'ho 'swd test pentest' |awk '{print "cat /etc/pas"$1}' |bas'h
cat /etc/passwd
cat$u+/etc$u/passwd$u
<svg/onload=alert()//

Если запросы Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ β€” Ρ‚ΠΎ, скорСС всСго, WAF пропустит ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½ΡƒΡŽ Π°Ρ‚Π°ΠΊΡƒ. ΠŸΠ΅Ρ€Π΅Π΄ использованиСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ WAF Π½Π΅ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Π»Π΅Π³ΠΈΡ‚ΠΈΠΌΠ½Ρ‹Π΅ запросы.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com