-----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@gmail.com mailto:filcak.t@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@snajpa.net mailto:snajpa@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@gmail.com mailto:rainbof@gmail.com mailto:rainbof@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@cz-pro.cz mailto:Vaclav.Dusek@cz-pro.cz mailto:Vaclav.Dusek@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@neridev.com mailto:neri@neridev.com
mailto:neri@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@lists.vpsfree.cz >> mailto:Community-list@lists.vpsfree.cz
mailto:Community-list@lists.vpsfree.cz
Community-list mailing list Community-list@lists.vpsfree.cz mailto:Community-list@lists.vpsfree.cz
mailto:Community-list@lists.vpsfree.cz
Community-list mailing list Community-list@lists.vpsfree.cz mailto:Community-list@lists.vpsfree.cz mailto:Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list _______________________________________________ Community-list mailing list Community-list@lists.vpsfree.cz mailto:Community-list@lists.vpsfree.cz mailto:Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz mailto:Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
_______________________________________________ Community-list mailing list Community-list@lists.vpsfree.cz mailto:Community-list@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@lists.vpsfree.cz mailto:Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
_______________________________________________ Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list