Речь идет об остановке DDoS-атаки на платежный шлюз Magento, о которой сообщается здесь: https://support.magento.com/hc/en-us/articles/360025515991-PayPal-Payflow-Pro-active-carding-activity
Я пытаюсь создать правила Fail2Ban для ограничения скорости доступа к URL-адресу "/ paypal / transparent / requestSecureToken /".
Вот несколько правил, которые я пробовал, но ничего не работает:
fail2ban-regex /etc/fail2ban/test.log '<HOST> - - \[.*?\] "GET /paypal/transparent/requestSecureToken/ HTTP/1.1" 200' |grep ^Lines
fail2ban-regex /etc/fail2ban/test.log '<HOST>.* "(GET|POST) \/paypal\/transparent\/requestSecureToken\/ HTTP\/.\..".*$' |grep ^Lines
fail2ban-regex /etc/fail2ban/test.log '<HOST> - - \[(\d{2})/\w{3}/\d{4}:\1:\1:\1 -\d{4}\] "GET /paypal/transparent/requestSecureToken/ HTTP/1.1".*$' |grep ^Lines
fail2ban-regex /etc/fail2ban/test.log '^<HOST> -.*"(GET|POST) \/paypal\/transparent\/requestSecureToken\/ HTTP\/.\..".*$' |grep ^Lines
fail2ban-regex /etc/fail2ban/test.log '^<HOST> -.*"(GET|POST|HEAD).*HTTP.*"(?:%(badbots)s|%(badbotscustom)s)"$' |grep ^Lines
fail2ban-regex /etc/fail2ban/test.log '<HOST>.*"(GET|POST) \/paypal\/transparent\/requestSecureToken\/ HTTP\/.\..".*$' |grep ^Lines
fail2ban-regex /etc/fail2ban/test.log '^<HOST>.* "(GET|POST) \/paypal\/transparent\/requestSecureToken\/ HTTP\/.\..".*$' |grep ^Lines
fail2ban-regex /etc/fail2ban/test.log '<HOST> - - \[.*?\] "GET \/paypal\/transparent\/requestSecureToken\/ HTTP\/" 200' |grep ^Lines
fail2ban-regex /etc/fail2ban/test.log '<HOST> - - \[(\d{2})/\w{3}/\d{4}:\1:\1:\1 -\d{4}\] "GET \/paypal\/transparent\/requestSecureToken\/ HTTP\/".*$' |grep ^Lines
Вот несколько строк из моего журнала доступа к apache:
104.200.152.54 - - [23/Mar/2019:00:02:20 -0700] "GET / HTTP/1.1" 200 31417 "-" "Mozilla/5.0 (compatible; monitis - premium monitoring service; http://www.monitis.com)"
70.35.205.208 - - [23/Mar/2019:00:02:22 -0700] "GET /paypal/transparent/requestSecureToken/ HTTP/1.1" 302 917 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36"
70.35.205.208 - - [23/Mar/2019:00:02:22 -0700] "GET /paypal/transparent/requestSecureToken/ HTTP/1.1" 302 917 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36"
70.35.205.208 - - [23/Mar/2019:00:02:22 -0700] "GET /paypal/transparent/requestSecureToken/ HTTP/1.1" 200 4164 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36"
157.55.39.150 - - [23/Mar/2019:00:02:21 -0700] "GET /products/diagnostic-kits/elisa/cow-elisa/cow-probable-atp-dependent-rna-helicase-dhx36-dhx36-elisa-kit.html HTTP/1.1" 200 37613 "-" "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)"
Может ли кто-нибудь предложить правильное регулярное выражение? Это поможет предотвратить взлом тысячи веб-сайтов.