Toon posts:

Wordpress ruis

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb last van wordpress ruis op sites die helemaal geen wordpress draaien. De stats van domeinnamen raken vervuild met bijv onderstaande. Ruim 4k hits op /wp-login.php.

Omdat ik Awstats draai is het debiele dat 1 uniek IP adres meteen telt voor 1 unieke bezoeker. Awstats is redelijk accuraat mits geen ruis gaande, je zit ongeveer 50 bezoeken af op een dagstatistiek van ongeveer 500 bezoekers.

Echter gaat dit overal zo tekeer:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
URL (53)    Error Hits  Referrers
/wp-login.php   4,664   -
/license.txt    68  license.txt
/wp-admin/js/media-upload.dev.js    23  wp-admin/js/media-upload.dev.js
/wp-content/themes/twentyeleven/readme.txt  23  wp-content/themes/twentyeleven/readme.txt
/readme.htm 23  readme.htm
/readme.txt 23  readme.txt
/wp-admin/css/colors-classic.css    23  wp-admin/css/colors-classic.css
/wp-includes/css/buttons.css    23  wp-includes/css/buttons.css
/wp-content/themes/classic/rtl.css  23  wp-content/themes/classic/rtl.css
/wp-includes/js/tinymce/wp-tinymce.js   23  wp-includes/js/tinymce/wp-tinymce.js
/wp-includes/js/scriptaculous/wp-scriptaculous.js   23  wp-includes/js/scriptaculous/wp-scriptaculous.js
/help.txt   23  help.txt
/wp-content/themes/twentyten/images/wordpress.png   23  wp-content/themes/twentyten/images/wordpress.png
/wp-content/themes/twentyten/style.css  23  wp-content/themes/twentyten/style.css
/wp-content/plugins/akismet/akismet.js  23  wp-content/plugins/akismet/akismet.js
/wp-admin/images/wp-logo-2x.png 23  wp-admin/images/wp-logo-2x.png


De gebruikte stats zijn van o.a Awstats, die zijn mits geen rotzooi op je domein, 'redelijk' accuraat (zo'n 50 bezoekers per dag 'af' in verhouding met analytics van google).

Echter als ik blijvend dit soort scans iedere dag krijg dan is het aantal bezoekers natuurlijk ver van contrast af.

Op serverniveau heb ik een script draaien dat iedere 5 seconden in /apache-status/ kijkt naar:

code:
1
POST /wp-login.php HTTP/1.0

code:
1
POST /xmlrpc.php HTTP/1.0

code:
1
POST /wp-admin/wp-admin-ajax.php


en zodra daar een 5x een hit in voorkomt in 5 seconden,

code:
1
            exec('/usr/sbin/csf -td '.$ipKey.' 86400 banned for wordpress attack', $output, $iets);


Echter als een bot geen POST maakt maar wel een GET naar wp-login.php maakt (het opvragen) dan triggert er natuurlijk niets.

Wat heb ik gedaan... op 1 van mijn hoofddomeinnamen een honeypot opgezet, http://arleym.com/faux-wp-admin-a-non-wordpress-honeypot/

Dit is gewoon een dummy page welk eigenlijk helemaal niets doet en waar een bot stierlijk op vast kan lopen omdat er niets gebeurd. Het aantal posts moet nu dus wel op gaan vallen voor het script. Ik zag bezoekers na het spammen op twitter van 2700 unieke visits ineens zakken naar 300. De CSF log zat inmidels goed vol.

Zijn er nog andere middelen om op domeinnamen waar geen wordpress site op staat, serverwide wel een detectie in zou kunnen stellen welk dit soort overlast tegen moet gaan?

Ja een ander statistiek instellen is een idee, maar om dit voor 2500+ sites toe te gaan passen inclusief het aanmaken van verschillende accounts is nu niet echt een optie.

Ik heb meer dan 4k aan IP bans voor wordpress (POSTS) alleen al. Dat terwijl merendeels geen wordpress draait, en de sites die het wel hebben een aanval vrij snel afgeweerd wordt.

Dat script werkt wel magisch want het voorkomt een hoop gedoe op eigen servers. Zonder dat script is een aanval in staat je server gewoon te crashen gezien de onnodige resources die wordpress kan spawnen bij een aanval.

Alle reacties


Acties:
  • 0 Henk 'm!

  • rens-br
  • Registratie: December 2009
  • Laatst online: 16:39

rens-br

Admin IN & Moderator Mobile
Je topic past beter thuis in WEB, dus schopje van IH naar WEB.

Acties:
  • +1 Henk 'm!

Verwijderd

Topicstarter
Excuus, het was vroeg :>

Acties:
  • 0 Henk 'm!

  • Hmail
  • Registratie: April 2003
  • Laatst online: 06-10 18:48

Hmail

Doet ook maar wat.

Ik heb op een load balancer fail2ban ingesteld. Deze controleert logbestanden op een pattern en blokkeert dat ipadres (via iptables, maar kan volgens mij ook met andere firewalls overweg).

Het probleem waar wij mee zaten is dat veel van onze Wordpress-websites caching hebben maar voor niet-bestaande url's moet Wordpress ingeladen worden, wat snel veel resources vroeg. Daarom komt een ipadres 15 minuten op de blacklist als deze meer dan 25 404's in een minuut opvraagt.

It might sound as if I have no clue what I'm doing, but I actually have a vague idea.