[vpsFree.cz: community-list] brutoforce attack
Pavel Snajdr
snajpa at snajpa.net
Mon Mar 30 05:46:21 CEST 2015
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
On 03/30/2015 02:29 AM, René Klačan wrote:
> Ja som mal podobny problem, moje wordpressy rozposielali spam, tiez
> prienik vdaka pluginom.
>
> Vyriesil som to premigrovanim WP na heroku vdaka
> https://github.com/mhoofman/wordpress-heroku ... malu instanciu
> mas zadarmo a ta ti uplne postaci na normalnu navstevnost a tam sa
> ti viacmenej podobny problem nemoze stat, lebo aj filesystem je
> readonly a uploadovanie filov si nastavis cez AWS S3. Navyse po
> kazdom pushi je to akokeby nova instalacia, len databaza
> pretrvava.
>
Cili tvoji radou je nastavit read-only, co read-only nastavit jde.
Vzdavat to takhle "babsky" a prejit na proprietarni platformu, jeste
neznamena bezpecnost (za staleho prskani odchazim od kbd a jdu si
udelat caj :D).
...
(/me je zpatky :) )
Kdyz se bavime o zabezpecovani odflaknutych aplikaci, kde o PHP svete
se v podstate da rict, ze co aplikace, to garantovane nebezpecne
derave reseto, muzu doporucit par obecnych tipu - konkretni postupy se
budou lisit od toho, jak to kazdy ma nastavene.
- - aplikace by nemela mit schopnost prepisovat/upravovat/rozsirovat
samu sebe, UGO opravneni vetsinou staci, pokrocilejsi moznosti v
pripade potreby jsou ACL (v zacatku se ZFS ACL nefungovaly, ted uz jdou)
- - appka by nemela byt schopna includovat soubory odjinud, nez kde ji
mate, z toho vyplyva idealne oddelit PHP (ne)logiku od dynamickych dat
uplne
- - dobry napad je osetrit vsechny mozne vstupni URL, ktere jsou
zpracovavane PHPckem, uz na urovni webserveru (napr. htacess-em pro
Apache), vetsinou na tohle pomahaji veci jako mod_rewrite, pokud jde
napr. prave o WP, kde vsechno zpracovava index.php (a teda jeste je
potreba osetrit admin UI)
- - samozrejme kazda aplikace, by mela mit svoje UID/GID, od toho ty
skupiny a uzivatele v POSIXu jsou, aby mezi nimi OS delal zed
- - aplikace nema co spoustet programy, ktere nepotrebuje ke svemu behu
vubec poustet, vetsina webu nema co poustet vubec nic a ma si vystacit
sama se svymi PHP soubory (myslim napr. moznost pustit veci jako ls,
mv, cat a podobne)
- - uplne super je aplikaci za-chroot-ovat, nicmene PHPko na tohle ma
ini settingy, aby aplikace nemohla sahat jinam, potom je potreba mit
aktualni verzi PHP, aby se nedal samotny interpreter exploitovat
nejakou proflaknutou chybou
- - databaze samozrejme taky oddelene per aplikace, vc. uzivatelu v te
DB, pokud je multi-user, jako napr. mysql
- - delat casto zalohy databaze, kdyz je mozne, pouzit snapshoty - podle
vasi reakcni doby, cetnosti a dulezitosti zmen dat a dalsich faktoru,
na ktere je dobre myslet predem, nastavte periodicitu a historii
(tohle bude v nasem pripade podporovat vpsAdmin 2.0, takze dodelat k
tomu nejakou automatizaci do cronu pujde snadno zvykackou a spejlemi -
treba pres bash skripty)
- - omezit prostredky aplikaci na vsech urovnich, ktere se daji zneuzit,
podle maximalnich hodnot, kterych ta aplikace dosahuje v beznem provozu
- tady jde o veci jako memory limit (umi PHP interpreter rovnou),
CPU limit
- pro CPU limit jdou pouzit cgroups, pokud chcete limitovat s
presnosti na jednotky % casu CPU jader
- ale taky PHP-FPM umi pro kazdy pool procesu (aplikaci) nastavit
maximalni pocet procesu, coz v pripade VPSky s dostupnymi 8 cores staci
- s databazi to byva slozitejsi, existuji patche pro MySQL/MariaDB,
ktere to resi, ale stejne se neda omezit vsechno;
pokud je aplikaci od jednoho klienta vic, treba se da proste pustit
dalsi instance toho DB serveru, pokud nevadi vetsi pametova rezie
(tady vali systemd v podpore multi-instance service units, ale dalsi
lepsi-nez-bash-spagety init systemy to budou umet taky)
- nekterym serverum na Internetu se da krasne vybombit i serving
statickych stranek, pokud jsou v ceste napr. silene/rozsahle
obludnosti v htaccess-ech
Samozrejme je potreba udrzovat vsechny komponenty systemu, vcetne a
hlavne prave aplikaci a vsech jejich modulu, aktualni a opatchovane na
vsechny zname bezpecnostni problemy. To vyzaduje se o system/aplikace
trochu zajimat, ne jenom nainstalovat, nechat bezet a uz se toho v
zivote nedotknout.
Dobrou otazkou je, jak jsou na tom s prehledem o psani bezpecnych
aplikaci napr. autori HHVM (JIT interpreter pro PHP, psany v C++), na
kterem PHP skripty bezi cim dal kompatibilneji s referencni
hruzostrasnou a pomalou implementaci od Zendu.
A mimo to je HHVM o dost rychlejsi, i kdyz, rekl bych, zere vic pameti.
(Samo)zrejme jsem toho na milion zapomnel, kdyztak doplnte prosim
dalsi tipy a vase konkretnejsi postupy. Treba by z toho mohl vzniknout
nejaky KB clanek.
Zaverem bych rekl, ze sam za sebe nepovazuju za dobre byt na neznale
prilis mily a dovolit jim vsechno. Kdo nechape, co dela, nebude mit na
WP moznost instalovat pluginy. Tecka. A podobne. Cim min toho uzivatel
chape, co vlastne pri sve cinnosti dela a zpusobuje, tim min by toho
mel mit dovolene.
Aneb nedam malemu diteti do jedne ruky zapalovac a do druhe ruky
kanystr s ...napalmem. Kdyz se bavime o PHP a bezpecnosti a beznych
uzivatelich, slabsi prirovnani mi tam nesedi.
/snajpa
> 2015-03-30 1:20 GMT+01:00 Tomáš Filčák <filcak.t at gmail.com
> <mailto:filcak.t at gmail.com>>:
>
> Tak sa mi nakoniec podarilo prist na koren utoku. Jedna sa o
> prienik do modulu Revslider na niekolkych Wordpress instalaciach…
> Tento hack je uz dlhsie znamy, skoda len ze som sa o tom dozvedel
> takto.
>
> Problemom je vsak ako sa k danej situacii postavit voci klientom,
> ktory si samozrejme za udrzbu a updaty modulov neplatia. Narusenie
> ich stranok ma stalo nemalo usilia a zaroven to zhodilo v podstate
> vsetky stranky ktore pod mojim web serverom bezia. Napada ma
> vytvorit pre kazdy takyto hosting vlastny sandbox a tym padom
> napadnuta stranka by neovplyvnila chod inych. Zaroven by klient bol
> nuteny poziadat o pomoc a ja by som mohol pracu s hladanym chyby
> fakturovat. Takto je to narocna uloha a neviem ako to riesit ani ci
> vobec nieco od klienta mam ziadat kedze vypadok zapricinila jeho
> stranka.
>
> Ako by ste sa k danemu problemu postavili vy? Dakujem za navrhy a
> odporucania
>
>> On 29. Mar 2015, at 17:39, Pavel Snajdr <snajpa at snajpa.net
>> <mailto:snajpa at snajpa.net>> wrote:
>>
> On 03/29/2015 05:22 PM, Petr Parolek wrote:
>>>> Ahoj,
>>>>
>>>> taky by mě zajímalo, jak se efektivně dají povolit pouze
>>>> české IP adres.
>>>>
>
> Nijak, neexistuje aktualni seznam. GeoIP DB je zastarala. Z BGP se
> vycist vsechno neda. Btw, doufam, ze to nikoho nenapadne cpat do
> iptables pravidlo po pravidlo, zpomali to totiz pruchod kazdeho
> paketu.
>
> /snajpa
>
>>>>
>>>> Petr Parolek
>>>>
>>>> Dne 29. března 2015 17:18 Ondřej Beránek <rainbof at gmail.com
>>>> <mailto:rainbof at gmail.com> <mailto:rainbof at gmail.com>>
>>>> napsal(a):
>>>>
>>>> K tem českým ip, jak toho dosahnes? Geoip nebo máš nějaký
>>>> seznam range?
>>>>
>>>> Ondřej Beránek Původní zpráva Od: Jiří V. Odesláno: neděle,
>>>> 29. března 2015 17:14 Komu: vpsFree.cz Community list
>>>> Odpovědět: vpsFree.cz Community list Předmět: Re:
>>>> [vpsFree.cz: community-list] brutoforce attack
>>>>
>>>> Ahoj, jestli tam máš nejaký mobilní kód zjistíš nejlépe
>>>> pomocí netstat -a. Potom pokud nemáš nastav iptables jak na
>>>> input, tak output, povol jen to co opravdu potřebuješ. Také
>>>> se podívej na datum vytvoření souborů. Osobně se proti brute
>>>> force chráním tak že po dobu útoku povolim připojování pouze
>>>> z českých ip.
>>>>
>>>> s pozdravem Jiří V.
>>>>
>>>> Vaclav Dusek <Vaclav.Dusek at cz-pro.cz
>>>> <mailto:Vaclav.Dusek at cz-pro.cz>
>>>> <mailto:Vaclav.Dusek at cz-pro.cz>>napsal/a:
>>>>
>>>>> apachetop -
>>>>> http://www.buben.piranhacz.cz/monitorovani-systemu-pomoci-apacheto
p/
>>>>
>>>>>
>>>>
>>>>>
>>>>>
>>>>>
Dne 29.3.2015 v 14:42 Tomáš Filčák napsal(a):
>>>>>> Jj logy postupne prechadzam vsetky. To FTP ma nenapadlo
>>>>>> prezriem
>>>> aj to ci tam nebol uploadnuty nejaky script.
>>>>>>
>>>>>> Neviete mi pripadne poradit ako by som mohol zistit,
>>>>>> ktora
>>>> stranka vytazuje server najviac? To by ma vedelo naviest k
>>>> problemu a kedze tych stranok mam viac ako dost je to prilis
>>>> pracne prechadzat jednu za druhou...
>>>>>>
>>>>>>
>>>>>>> On 29. Mar 2015, at 10:44, Peter Bubelíny
>>>>>>> <neri at neridev.com <mailto:neri at neridev.com>
>>>> <mailto:neri at neridev.com>> wrote:
>>>>>>>
>>>>>>> Ahoj,
>>>>>>>
>>>>>>> pokiaľ to šablóna a pluginy umožňujú, a budú pracovať
>>>>>>> korektne, tak vytvoriť .htaccess v wp-content,
>>>>>>> wp-includes s obsahom:
>>>>>>>
>>>>>>> <FilesMatch "\.(php)$"> deny from all allow from
>>>>>>> localhost </FilesMatch>
>>>>>>>
>>>>>>> Neviem či to pomôže priamo v tom prípade, ale zabráni
>>>>>>> to
>>>> spusteniu .php
>>>>>>> mimo localhost.
>>>>>>>
>>>>>>> Tak ako písal kolega, pozrieť logy, procesy...
>>>>>>> nezabudnúť ak
>>>> používaš
>>>>>>> FTP, pozrieť, či nebol nejaký nepožadovaný upload,
>>>>>>> ešte je dobré
>>>> pozrieť
>>>>>>> aké súbory boli naposledy modifikované či vytvorené, v
>>>>>>> prípade
>>>> napr. že
>>>>>>> by web spamoval, či bežal nejaký iný proces, kt.
>>>>>>> preťažuje vps.
>>>>>>>
>>>>>>> pb.
>>>>>>>
>>>>>>>
>>>>>>> On 03/29/2015 06:35 AM, Vaclav Dusek wrote:
>>>>>>>> Aktualizace WP a sablon Vymazata nepouzivane doplnky
>>>>>>>> a templaty Nepouzivat doplnky a templaty z
>>>>>>>> pochybnych zdroju
>>>>>>>>
>>>>>>>> ***
>>>>>>>>
>>>>>>>> Aktualizace OS a PHP
>>>>>>>>
>>>>>>>> ***
>>>>>>>>
>>>>>>>> pro deb - apt-get update; aptitude full-upgrade pro
>>>>>>>> cent a spol. - yum update
>>>>>>>>
>>>>>>>> ***
>>>>>>>>
>>>>>>>> Z logu zjistit o ktera URL je podezrele vysoy zajem a
>>>>>>>> hledat
>>>> chybu tam
>>>>>>>> nebo uz tam bezi nejake nezadouci procesy?
>>>>>>>>
>>>>>>>> ***
>>>>>>>>
>>>>>>>> proscanovat WWW data pomoci
>>>>>>>> https://www.rfxn.com/projects/linux-malware-detect/
>>>>>>>>
>>>>>>>> ***
>>>>>>>>
>>>>>>>> Dne 28.3.2015 v 21:06 Tomáš Filčák napsal(a):
>>>>>>>>> Ahojte, posledne 2 dni riesim na mojej VPSke
>>>>>>>>> problem pravdepodobne s brutoforce attackom a
>>>>>>>>> potreboval by som poradit. Ako web
>>>> server mam
>>>>>>>>> nainstalovany nginx. Spozoroval som, ze moje
>>>>>>>>> stranky sa v priebehu min. 2 dni zacali strane
>>>>>>>>> pomaly nacitavat a tak som sa pustil do analyzy
>>>>>>>>> logov, z ktorej som zistil, ze sa pravdepodobne
>>>>>>>>> jedna o bruteforce utok na wordpress weby ktore
>>>>>>>>> hostujem. Kedze v oblasti spravy servera nie som
>>>>>>>>> profesional stretol som sa s tym prvykrat a hned
>>>>>>>>> som proti tomu podnikol kroky. Nainstaloval som
>>>>>>>>> preto
>>>> fail2ban a
>>>>>>>>> nakonfiguroval pre fungovanie s nginxom. Z logov
>>>>>>>>> vidim, ze
>>>> niekolko ip
>>>>>>>>> adries bolo zabanovanych avsak problem pretrvava a
>>>>>>>>> moj web server odpoveda na requesty strasne
>>>>>>>>> pomaly. Pamat VPSky je vytazena
>>>> niekedy
>>>>>>>>> nad 3GB momentalne 1GB. Prosim o radu. Ake dalsie
>>>>>>>>> kroky mam
>>>> podniknut
>>>>>>>>> na obrany pripadne analyzu skod? Dakujem
>>>>>>>> _______________________________________________
>>>>>>>> Community-list mailing list
>>>>>>>> Community-list at lists.vpsfree.cz
>>>>>>>> <mailto:Community-list at lists.vpsfree.cz>
>>>> <mailto:Community-list at lists.vpsfree.cz>
>>>>>>>> http://lists.vpsfree.cz/listinfo/community-list
>>>>>>>
>>>>>>>
>>>>> _______________________________________________
>>>>> Community-list mailing list Community-list at lists.vpsfree.cz
>>>>> <mailto:Community-list at lists.vpsfree.cz>
>>>> <mailto:Community-list at lists.vpsfree.cz>
>>>>> http://lists.vpsfree.cz/listinfo/community-list
>>>> _______________________________________________
>>>> Community-list mailing list Community-list at lists.vpsfree.cz
>>>> <mailto:Community-list at lists.vpsfree.cz>
>>>> <mailto:Community-list at lists.vpsfree.cz>
>>>> http://lists.vpsfree.cz/listinfo/community-list
>>>> _______________________________________________
>>>> Community-list mailing list Community-list at lists.vpsfree.cz
>>>> <mailto:Community-list at lists.vpsfree.cz>
>>>> <mailto:Community-list at lists.vpsfree.cz>
>>>> http://lists.vpsfree.cz/listinfo/community-list
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Community-list mailing list Community-list at lists.vpsfree.cz
>>>> <mailto:Community-list at lists.vpsfree.cz>
>>>> http://lists.vpsfree.cz/listinfo/community-list
>>>>
>> _______________________________________________ Community-list
>> mailing list Community-list at lists.vpsfree.cz
>> <mailto:Community-list at lists.vpsfree.cz>
>> http://lists.vpsfree.cz/listinfo/community-list
>
> S pozdravom, Ing. Tomáš Filčák +421 904 076 786
> <tel:%2B421%20904%20076%20786>
>
>
> _______________________________________________ Community-list
> mailing list Community-list at lists.vpsfree.cz
> <mailto:Community-list at lists.vpsfree.cz>
> http://lists.vpsfree.cz/listinfo/community-list
>
>
>
>
> _______________________________________________ Community-list
> mailing list Community-list at lists.vpsfree.cz
> http://lists.vpsfree.cz/listinfo/community-list
>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iF4EAREIAAYFAlUYxw0ACgkQgRwOVqYrsFUZoAEA4SZGU5xUpKw9LF3xMEIOfCBm
Warf9s15Q5CTzXSzKOwA/2oXc2s6tBQZ18pXkasWJKNXQyWixRhugyudiLrD4Chq
=kIzo
-----END PGP SIGNATURE-----
More information about the Community-list
mailing list