Röviden: Egy weboldalakhoz készült kártevőkereső főként ismert mintákat talál a fájlokban vagy a kiszolgált oldalon. Az új és elrejtett kód, az adatbázisban lévő hátsó ajtók, az idegen fiókok, a cron-feladatok és az SSH-kulcsok gyakran láthatatlanok maradnak. A „nincs találat” ezért nem jelent „tisztát”. Megbízhatóvá az ellenőrzés csak a kereső, az eredetivel való összevetés, az adatbázis és a rendszer ellenőrzése, valamint a viselkedésfelügyelet kombinációja révén válik.
A zöld pipa utáni megtévesztő nyugalom
A PHP2Shell után sok üzemeltető azt tette, ami kézenfekvő: lefuttatott egy keresőt. Egy online szolgáltatás ellenőrzi a nyitóoldalt, egy biztonsági plugin átkutatja a webkönyvtárat, az eredmény zöld. Ezzel megválaszoltnak tűnik a kérdés, hogy történt-e valami a javítás előtt.
A probléma az elvben rejlik. A legtöbb kereső a tartalmakat ismert kártékony szoftverek mintáival veti össze. A CVE-2026-109618 és CVE-2026-109619 résekhez azonban nincsenek közzétett, megerősített Indicators of Compromise; a felismerés viselkedéselemzésen alapul. Egy kereső nem tud olyan nyomokat keresni, amelyeket senki sem ismer. A legjobb esetben általános kártékony szoftvert talál, amelyet egy behatolás után töltöttek be, feltéve, hogy ismert mintákat követ.
Ettől a keresők nem válnak értéktelenné. Csak azt jelenti, hogy az eredményüket helyesen kell besorolni. Hogy a keresőkön túl mely jelek számítanak, azt a Megtámadtak már? írja le.
Kártevőkeresők weboldalakhoz: három építési mód
| Építési mód | Mit lát | Mit nem lát |
|---|---|---|
| Külső kereső (online szolgáltatás) | kiszolgált oldalak, beágyazott szkriptek, átirányítások, tiltólisták | fájlok, adatbázis, fiókok, mindaz, ami csak feltételekkel szolgálódik ki |
| Kereső a CMS-ben (plugin vagy bővítmény) | fájlok a webkönyvtárban, részben adatbázis-tartalmak, összevetés a magfájlokkal | rendszerszint, cron-feladatok, SSH; az esetleg megtámadott rendszerben fut |
| Kereső a szerveren (szignatúraalapú) | az összes olvasható fájl, a webkönyvtáron kívüliek is | ismeretlen és elrejtett minták, adatbázis, fiókok, viselkedés |
A külső keresők hasznosak a látható következmények felismerésére, például átirányításokra vagy a tiltólistákon lévő bejegyzésekre. Sok feltörés azonban a spam- vagy átirányítási tartalmait csak bizonyos látogatóknak szolgálja ki, például keresőmotoroknak vagy mobileszközöknek. A kereső ilyenkor tiszta oldalt lát.
A CMS-ben lévő keresők több betekintéssel rendelkeznek, de van egy alapvető problémájuk: ugyanabban a rendszerben futnak, amelyet ellenőrizniük kellene. Elegendő jogokkal rendelkező kód befolyásolhatja az eredményeiket, elrejthet fájlokat, vagy kikapcsolhatja a keresőt. A szerverkeresők az alkalmazáson kívül dolgoznak, de a mintákra vannak utalva.
Amit a keresők elvileg átnéznek
A építési módtól függetlenül vannak olyan területek, amelyeket egy fájl- vagy oldalkereső alig tud lefedni:
- Új vagy egyedileg elrejtett kód: Minden olyan változat átcsúszik, amely másképp néz ki, mint az ismert minták.
- Az adatbázis: Szkriptek tartalmakban, módosított beállítások, triggerek és idegen fiókok. Bővebben az Az adatbázis ellenőrzése bejuttatott kód szempontjából cikkben.
- Hozzáférések: további rendszergazdai fiókok, SSH-kulcsok, adatbázis-felhasználók, fiókok a tárhelypanelben.
- Rendszerszolgáltatások és cron-feladatok: olyan mechanizmusok, amelyek rendszeresen újratöltik a kártékony kódot.
- Feltűnésmentes módosítások jogos fájlokban: egyetlen további sor egy magfájlban, amely ártalmatlannak tűnik.
- Kiszivárgott adatok: Hogy hozzáférési adatokat vagy ügyféladatokat másoltak-e, azt egyetlen kereső sem mutatja meg.
Mi teremt helyette bizonyosságot
Nagyobb biztonságot az eltérően működő ellenőrzési módok kombinációja hoz:
- Összevetés az eredetivel: Az ismert fájlok minden módosítását megtalálja, mintáktól függetlenül. Az eljárást a CMS-magfájlok összevetése az eredetivel írja le.
- Célzott keresés feltűnő jelek után: PHP-fájlok feltöltési mappákban, nemrég módosított fájlok, elrejtett kód, futtatható fájlok ideiglenes mappákban.
- A fiókok és rendszerszolgáltatások ellenőrzése: a felhasználókat, kulcsokat, cron-feladatokat és szolgáltatásokat vesse össze az ismert elvárt állapottal.
- Naplókiértékelés: ismeretlen fájlokra irányuló kérések, hibák felhalmozódása, szokatlan bejelentkezések.
- Viselkedésfelügyelet: a webszerver olyan folyamatai, amelyek shellt indítanak, váratlan kimenő kapcsolatok, új fájlok érzékeny mappákban.
Az utolsó kategória a legfontosabb, ha nincsenek ismert nyomok. Nem azt kérdezi, hogyan néz ki a kártékony kód, hanem azt, hogy mit csinál. Egy webszerver-folyamat, amely hirtelen shellt indít, feltűnik, akármilyen jól el van rejtve a kiváltó kód.
Egy szerverkeresőt egy tiszta rendszerről, egy írásvédett másolaton futtasson, ne magán a gyanús szerveren. Így a bejuttatott kód nem befolyásolhatja az eredményt.
Hogyan használja értelmesen a keresőket
A keresőknek megvan a helyük, a több eszköz egyikeként. Egy külső kereső alkalmas a látható következmények rendszeres ellenőrzésére, például hetente. A CMS-ben lévő kereső a mindennapokban jelzi az ismert kártékony szoftvert és a módosított magfájlokat. Egy szerverkereső kiegészíti az ismert minták keresését az egész fájlrendszerben.
Az eredménnyel való bánásmód a döntő. Egy találat egyértelmű ellenőrzési feladat, és teljes vizsgálatot indokol, mert ritkán csak egy fájl érintett. Az üres eredmény ezzel szemben csak a vizsgált mintákról szól. Rögzítse a dokumentációban, melyik kereső mikor milyen állapottal futott, és ne azt írja, hogy „a rendszer tiszta”, hanem azt, hogy „ismert minták nem találhatók”.
A vezetés számára ez azt jelenti: egy zöld pipa nem pótolja az olyasvalaki által végzett ellenőrzést, aki a fájlokat, az adatbázist, a fiókokat és a viselkedést együtt vizsgálja. Egy lehetséges kódvégrehajtással járó incidens után, ahogyan az a PHP2Shellnél elképzelhető, ennek az ellenőrzésnek meg kell történnie.
Ha viszont egy kereső találatot jelez, gyors, de rendezett cselekvésre van szükség. Ne törölje azonnal a jelzett fájlt a kereső funkciójával. Előbb mentse a fájlt és a naplókat, hogy tisztázható legyen, hogyan került a szerverre. Hogyan zajlik egy teljes tisztítás, azt a Kártevők és webshellek eltávolíttatása szolgáltatás írja le.
Hogyan segít konkrétan a PHP SOS?
- A keresőket az eredetivel való összevetéssel, célzott kereséssel, valamint a fiókok, szolgáltatások és naplók kiértékelésével kombináljuk.
- A gyanús rendszereket mentett másolatokon ellenőrizzük, hogy az eredményeket ne befolyásolja a megtámadott rendszer.
- Minden eredményt őszintén igazoltnak, valószínűnek vagy ismeretlennek jelölünk.
- A webszerverek biztonsági monitoringjával tartósan felügyeljük a szerverei viselkedését, nem csak az ismert mintákat.
Gyakori kérdések
Tiszta a weboldalam, ha a kártevőkereső nem talál semmit?
Nem feltétlenül. A keresők főként ismert mintákat találnak meg. Az új vagy jól elrejtett kód, az adatbázisban lévő hátsó ajtók, az idegen fiókok, a cron-feladatok és az SSH-kulcsok gyakran észrevétlenek maradnak. Az üres eredmény egy építőelem, nem felmentés.
Mi a különbség egy külső kereső és egy plugin-kereső között?
A külső kereső kívülről hívja meg a weboldalt, és csak azt látja, ami kiszolgálódik. A plugin-kereső a CMS-en belül fut, és olvashat fájlokat, de ugyanabban a rendszerben fut, amely esetleg megtámadott. Mindkettőnek megvannak a saját vakfoltjai.
Léteznek keresőszignatúrák a PHP2Shellhez?
A PHP2Shellhez nincsenek közzétett, megerősített Indicators of Compromise. A keresők ezért nem tudnak célzottan biztosan PHP2Shell-nyomokat keresni. A felismerés viselkedéselemzésen és a feltörés általános jeleinek keresésén alapul.
Melyik a legjobb kereső?
A kérdés félrevezető. Egy bizonyos terméknél fontosabb a különböző ellenőrzési módok kombinációja: az eredetivel való összevetés, keresés a fájlokban és az adatbázisban, a fiókok és rendszerszolgáltatások ellenőrzése, valamint a viselkedés felügyelete.