wp-login brute force és a modsecurity

Kezdőlap Fórumok SOS! Bajban vagyok wp-login brute force és a modsecurity

10 bejegyzés megtekintése - 1-10 / 14
  • Szerző
    Bejegyzés
  • #1890786
    linuxforum
    Felhasználó

      Hetek óta probálnak szótármódszerrel betörni a WordPress oldalakra a szerverünkön, emiatt bevetettem a ModSecurity-t … de hiába.IP cím alapú számláló szabályt írtam, ami 5 percen belüli 10 wp-login kérés után blokkol.Ha én indítok 10 kérést - bármilyen gépről vagy böngészőből -, akkor működik, de ha a hacker, akkor nem.Elkezdtem debugolni (már lua scriptet is írtam hozzá), de nem jövök rá az okára.Ha én kérem le az oldalt, akkor az ip címek számlálója rendben növekszik, minden kérelemnél.Ha a hacker, akkor az ip címek számlálója minden kérelemnél 1-ről indul. Pedig ugyanarról az IP címről jön!Látott már valaki ilyent/hasonlót?Bárkinek bármilyen ötlete?

      #2207960
      uzsolt
      Felhasználó

        Nyilván látni kellene annak az IP-cím számlálónak a kódját illetve az IP-címeket.De: én vagy inkább egy webszerver-alapú IP-tiltást (ha mindig ugyanarról az IP-címről jön) alkalmaznék vagy pedig fail2ban-t.Másrészt: csak te léphetsz be a wordpress-be? Mert akkor esetleg a login-t csak a te ip-címedre engedélyezed.

        #2207961
        linuxforum
        Felhasználó

          Egy-egy támadási csomag jön egy-egy IP címről. Amúgy váltakoznak az IP címek.A WordPress-be nem én lépek be, így azt nem tudom módosítani.Közben annyit haladtam előre, hogy már tudom reprodukálni a betörést. A trükk az, hogy 1 IP címről felváltva egyszerre 2 külön domain-t kell támadni.A ModSecurity erre azt csinálja, hogy az első kérelemnél az IP cím számlálóját 1-re állítja, majd a második kérelemnél, mivel arra a domainra az az első kérelem, ismét egyre állítja. Ezek után meglepő módon az első domainra érkező új kérelem esetén a számlálót ismét egyre állítja, mivel új kérelem. ...Ha én küldöm két domainra a kérelmeimet, azt sem tudja számolni, bár egy domainre tökéletesen működik 🙁Hát, egyelőre itt állok ... tanácstalan ...

          #2207962
          ventura
          Felhasználó

            Irjal a fail2ban szabalyt, bar lehet eloszor csak keresni kene, mert mar irt valaki.

            #2207963
            linuxforum
            Felhasználó

              Ha jól látom, ez a fail2ban a logok alapján tudja eldönteni, melyik kérelem sikertelen, és úgy tud számolni. A WordPress sikertelen belépés sajnos a logban nem hagy egyértelmű nyomot. Csak egy 200-as válasz, míg a sikeres belépés egy 302-es. De a 302 lehet sikertelen belépés eredménye is.

              #2207964
              ventura
              Felhasználó

                drupalhoz van fail2ban plugin, ami syslogba logol és úgy tudod szűrni fail2ban-al. Talán van WP-hez is hasonló syslogba logolo plugin.

                #2207965
                linuxforum
                Felhasználó

                  Bár a ModSecurity hibájára a megoldást nem tudom, azért egy primitív lua scriptet írtam, ami blokkolja a wp-logineket VirtualHost környezetben is. Mivel a neten nem találtam normális megoldást, leírom, hátha hasznos lesz valakinek, akár csak kiindulópontként is.A ModSecurity-ben elhelyezendő kód (elég egy helyen, globálisan elhelyezni):

                  Code:

                  #2207966
                  uzsolt
                  Felhasználó

                    A WordPress-be nem én lépek be, így azt nem tudom módosítani.

                    Márhogy úgy értettem, hogy nem a WP-ben, hanem a webszerveren beállítani, hogy a login.php (vagy bármi) csak egy bizonyos IP-címről legyen elérhető. Úgy látom, hogy apache szervert használsz, így szerintem egy .htaccess fájllal mennie kell.

                    #2207967
                    linuxforum
                    Felhasználó

                      Sajna, nem én használom a wp-t, így nem korlátozhatom a felhasználót. 🙁

                      #2207968
                      uzsolt
                      Felhasználó

                        Nem a felhasználót kell korlátoznod, hanem a login.php elérését, amelyet az apache-on keresztül szabályozhatsz.Tehát valami ilyesmi .htaccess kellene:

                        Code:
                        Order allow,denyAllow from IP_AHONNAN_BELÉPDeny from all

                        Nem biztos, hogy jó, de az ötlet kiolvasható.

                      10 bejegyzés megtekintése - 1-10 / 14
                      • Be kell jelentkezni a hozzászóláshoz.