pēdējo mēnesi mūsu serverīti kādi cenšas paurķēt.
Neko konkrētu vainot nevaru, ip adreses, no kurām rodas lielākā daļa pieprasījumu USA, Čaina un Raša.

Divas reizes nopludināja tā, ka serveris palidoja.

Pēc manas ierobežotās saprašanas un spama pieauguma statistikā, un urlu /user/register un /user/password spārdīšanas, tad mērķis ir tas pats vecais, dabūt kaut kādus kontus no kā spamot:
1. reģistrācija atļautu spamot tepat, lapā (pret to ir tipo, manuprāt, normāla aizsardzība)
2. otrs pieprasījums provē atjaunot lietotāju kontu paroles, nezinu gan kā tas varētu palīdzēt uzbrucējiem/robotiem.

Daži grafiki, ja nu starp mums ir vēl kāds lietotājs, kas grib padalīties ar padomu.

cpu-utils.png
naktī apača logos vienā sekundē pāris desmitu rekvestu (visu log failu gan nečekoju)

rollin_eth.png
trafiks uzbrukuma brīdī nav nekāds, jo sūtīt http rekvestus neaizņem daudz (nebiju gaidījis tādu ainu, domāju, ka būs vairāk).

spams.png
statistika no anti-spam servisa, kuru izmantoju. (tie, kas taisa kapča bildīti pie reģistrācijas un pirmā komentāra rollin.lv lapā).

spams2.png
rekvesti no access loga, kad vienā vakarā piefiksēju, ka webs velkas pārāk lēnu.

Ko darīt?

man nav nekādas lielās pieredzes šāda līmeņa uzbrukumos, tāpēc nācās gūglēt un mācīties.

pirmais ko izdarīju, – izslēdzu šad un tad apače serveri, uzbrukums parādīja vienu jauku lietu, – kuras web daļas velkas, tā rezultātā pamīciju tēmu, atslēdzu vairākas, laikam jau liekas, fīčas. galā sanāca lapa, kura lādējas ātrāk pati par sevi.
mazliet optimizēju apača konfigu (ko nu mācēju), novācu lieko drazu, lai katrs rekvests aizņemtu mazliet mazāk ram.
no sākuma, likās, ka palīdzēja, jo pāris dienas lapa bija spaidāma, bet tad naktī atkal tutū.
atslēdzu arī reģistrēšanos lapā, pagaidām, kamēr nebūšu drošs, ka strādā kā vajag.

tad vēl provēju tādu triku kā domēnus, kurus spamoja fonā, kuri vairs nav aktīvi (css. un pufaika.) pārsūtīju uz localhostiem, dns’ā ierakstot 127.0.0.1.

otrs piegājiens jau bija mazliet elītāks, pēc vēl viena sistēmas kraša, nolēmu, ka pietiek cerēt, ka pāries un atradu fail2ban.
fail2ban ir tāda jauka lieta, kura “feilus” bano. atlika tikai uzrakstīt regex’u (kurus pirms tam nebiju diezko daudz aizticis), piedabūt, lai lapa raksta syslogā (drupal’am ar to nebija problēmu) un tad tik skatījos, kā iptables (linux firewalls) pildās ar IP adresēm.
papildus vēl firewallā iebakstīju kaut kādu noteikumu par konekciju skaita limitu no vienas ip.

ūn pēdējais, ko nesen sabikstīju, iekrita raksts rss’ā, ka varot izmantot CloudFlare kā dns proxy un viņi lieliski mākot atkratīties no spambotiem.
blaknes cloudflare’am varētu būt, ka dažas aplikācijas, kuras griežas uz servera, var arī nestrādāt, jāpalaas kā pa taisno forwardēt dns ierakstus.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.