Skadliga skript. Vi söker efter och tar bort skadlig kod på WordPress. Neutralisering av serverskript

WordPress är ett av de mest populära innehållshanteringssystemen, som används för en mängd olika ändamål, från bloggning till e-handel. Det finns ett brett urval av WordPress-plugins och teman. Det händer att vissa av dessa tillägg hamnar i händerna på webbansvariga efter att någon angripare har arbetat med dem.

För sin egen fördel kan han lämna reklamlänkar eller kod i dem som han kommer att hantera din webbplats med. Många WordPress-användare har inte mycket erfarenhet av webbprogrammering och vet inte hur de ska hantera denna situation.

För dem granskade jag nio av de mest effektiva verktygen för att upptäcka skadliga ändringar i koden för en webbsida som körs eller installerade tillägg.

1. Theme Authenticity Checker (TAC)

Theme Authenticity Checker (TAC) – WordPress-plugin som skannar varje etablerat tema för misstänkta element som osynliga länkar eller Base64-krypterad kod.

Efter att ha upptäckt sådana element rapporterar TAC dem till WordPress-administratören, så att han kan analysera och, om nödvändigt, korrigera källtemafilerna:

2. Använd skanner

Exploit Scanner skannar hela din webbplats källkod och WordPress-databasinnehåll för tvivelaktiga inneslutningar. Precis som TAC förhindrar inte detta plugin attacker eller bekämpar deras konsekvenser automatiskt.

Det visar bara upptäckta symptom på infektion för webbplatsens administratör. Om du vill radera skadlig kod, du måste göra det manuellt:

3. Sucuri Security

Sucuri är en välkänd WordPress säkerhetslösning. Sucuri Security-pluginet övervakar filer som laddas upp till en WordPress-webbplats, upprätthåller sin egen lista över kända hot och låter dig även fjärrskanna webbplatsen med den kostnadsfria Sucuri SiteCheck Scanner. Bakom Prenumerationsavgift Du kan ytterligare stärka din webbplats skydd genom att installera den kraftfulla Sucuri Website Firewall:

4. Anti-Malware

Anti-Malware är ett plugin för WordPress som kan hitta och ta bort trojanska skript, bakdörrar och annan skadlig kod.

Inställningar för skanning och radering kan anpassas. Detta plugin kan användas efter att du har registrerat dig gratis på gotmls.

Plugin-programmet går regelbundet in på tillverkarens webbplats, överför statistik för upptäckt av skadlig programvara och tar emot uppdateringar. Därför, om du inte vill installera plugins på din webbplats som övervakar dess funktion, bör du undvika att använda Anti-Malware:

5. WP Antivirus Site Protection

WP Antivirus Site Protection är ett plugin som skannar alla filer som laddas upp till en webbplats, inklusive WordPress-teman.

Insticksprogrammet har en egen signaturdatabas, som automatiskt uppdateras via Internet. Det kan ta bort hot automatiskt, meddela webbplatsens administratör genom e-post Och mycket mer.

Insticksprogrammet är installerat och fungerar gratis, men har flera betalda tillägg som är värda att uppmärksamma:

6. AntiVirus för WordPress

AntiVirus för WordPress är ett lättanvänt plugin som kan skanna din webbplats regelbundet och meddela dig om säkerhetsproblem via e-post. Pluginet har en anpassad vitlista och andra funktioner:

7. Quterra Web Malware Scanner

Quterras skanner kontrollerar en webbplats för sårbarheter, tredje parts kodinjektioner, virus, bakdörrar, etc. Skannern har så intressanta funktioner som heuristisk skanning och detektering av externa länkar.

Grundläggande skannerfunktioner är gratis, medan vissa ytterligare tjänster kommer att kosta dig $60 per år:

8. Wordfence

Om du letar efter en heltäckande lösning på din webbplats säkerhetsproblem, leta inte längre än Wordfence.

Denna plugin ger konstant skydd för WordPress mot kända typer av attacker, tvåfaktorsautentisering, stöd för en "svartlista" över IP-adresser till datorer och nätverk som används av hackare och spammare, och genomsökning av webbplatsen efter kända bakdörrar.

Denna plugin är gratis i sin grundversion, men den har också premiumfunktionalitet, för vilken tillverkaren begär en blygsam prenumerationsavgift:

9. Wemahu

Wemahu övervakar ändringar av din webbplats kod och söker efter skadlig kod.

Databasen där skadlig programvara upptäcks fylls på med hjälp av crowdsourcing-metoden: användarna själva fyller på den genom att skicka resultaten av genomsökning av infekterade WordPress-installationer till pluginförfattarens webbplats. Plugin-programmet stöder även att skicka rapporter via e-post och andra användbara funktioner.

Måste göras tillsammans. Om du eliminerar den ursprungliga orsaken till hacket (till exempel en sårbarhet i CMS-tillägget), men inte tar bort alla skadliga filer, kommer angriparen att kunna få tillgång till webbplatsen igen med ett av sina skript. Om du tar bort alla nedladdade skadliga skript, men inte eliminerar orsaken till hacket, kommer angriparen att kunna hacka webbplatsen igen och ladda ner skript till den igen.

En specialist med lämplig kunskap och erfarenhet bör utföra arbete för att ta bort skadliga skript och analysera orsakerna till hacking:

  • För att ta bort skadliga skript behöver du kunskap om PHP-programmeringsspråket, samt kunskap om "insidan" av populära CMS (Joomla, WordPress, etc.) och tillägg för dem. Denna kunskap krävs för att särskilja skript direkt från CMS och dess tillägg från främmande filer, och även för att entydigt kunna avgöra vilka åtgärder de utför när de stöter på tvivelaktiga skript.
  • För att analysera orsakerna till hackning krävs erfarenhet av serveradministration. Detta är nödvändigt för att analysera tillståndet för filerna på kontot, när de ändrades och även för att jämföra dessa data med serverloggar för att avgöra vilka handlingar från angriparen som ledde till hackning av webbplatser.

Därför, om din webbplats har blivit hackad, rekommenderas det, för att undvika upprepade hackningar, att inte göra jobbet själv, utan att kontakta en specialist som kommer att utföra nödvändig diagnostik och rekommendera eller utföra nödvändiga åtgärder för att lösa problemet, och vem kan garantera kvaliteten på det erhållna resultatet.

Det finns dock ett antal åtgärder som i vissa fall hjälper till att återställa en säker drift av platsen utan särskild kunskap. Begränsningen för metoden nedan är att för att kunna återuppta driften av webbplatsen krävs en säkerhetskopia av den som skapats före hacket. Om datumet för intrånget är okänt kan du prova den här metoden med den äldsta tillgängliga säkerhetskopian. Den andra begränsningen, som en konsekvens av den första, är att efter återställning av webbplatsen skapades data som lagts till på webbplatsen efter att återställningsbackupen skapades (till exempel nya artiklar, bilder eller dokument). Om du behöver återställa webbplatsen samtidigt som du behåller nya data, måste du kontakta en specialist.

Dessa åtgärder tillåter oss inte att fastställa orsaken till webbplatshacket, men var och en av dem syftar till att eliminera en av de potentiella orsakerna till penetration. Eftersom den exakta orsaken till hacket är okänd, är det nödvändigt att utföra dem alla. Åtgärderna är ordnade i en sådan ordning att de först helt eliminerar möjligheten för angriparen att fortsätta sina aktiviteter på webbplatsen eller värdkontot i för närvarande, och förhindra sedan en angripare från att komma in på webbplatsen i framtiden.

Stegen nedan förutsätter att du bara har en webbplats på ditt värdkonto. Om det finns flera webbplatser på kontot kan de också hackas, och webbplatsen kan hackas genom dem. Det är nödvändigt att antingen överföra platsen med vilken restaureringsarbetet utförs till ett separat konto, eller utföra restaurering för alla webbplatser som finns på kontot samtidigt.

Ordningen på åtgärder är viktig, så det är nödvändigt att utföra dem i exakt den ordning som de är placerade nedan.

  • Omedelbart efter att ha upptäckt att en webbplats har blivit hackad är det nödvändigt att helt blockera besökarnas åtkomst till den. Detta kommer för det första att förhindra angriparen från att utföra skadliga aktiviteter på webbplatsen, och för det andra kommer inte att tillåta honom att störa restaureringsarbetet. Detta steg är mycket viktigt, eftersom att ta bort skadliga skript och eliminera orsaken till hacket inte sker över en natt - som regel tar det flera timmar. Om webbplatsen förblir tillgänglig från utsidan, kommer angriparen att kunna ladda upp skript på nytt till den del av webbplatsen som redan har rensats. I det här fallet kan en angripare använda olika IP-adresser för att ansluta, så att neka åtkomst endast till en lista med IP-adresser fungerar inte. För att säkerställa att webbplatsen rensas från upptäckta skadliga skript är det nödvändigt att helt blockera angriparens möjlighet att komma åt webbplatsen, vilket endast kan göras genom att helt blockera webbplatsen för alla besökare. Kontakta den tekniska supporttjänsten för webbhotellet som är värd för din webbplats för att blockera den.
  • Efter att ha blockerat webbplatsen måste du kontrollera de datorer från vilka du arbetade med webbplatsen med ett modernt antivirusprogram med uppdaterade virusdatabaser. Om webbplatsen hackades genom att stjäla kontolösenord med hjälp av ett virus, måste du se till att det fortsatta arbetet med den hackade webbplatsen utförs från en dator som inte har virus, annars kan de bli stulna igen efter att ha bytt åtkomstlösenord.
  • Efter att ha blockerat webbplatsen och kontrollerat efter virus måste du ändra alla åtkomstlösenord till ditt konto: åtkomst via FTP, via SSH, samt åtkomst till värdkontrollpanelen. Om en angripare fick åtkomst till kontofiler med någon av dessa metoder kommer de inte längre att kunna göra det när lösenorden har ändrats.
  • Efter att ha ändrat lösenord måste du förstöra alla serverprocesser som körs under kontot där webbplatsen underhålls. Processer som startas av en angripare i bakgrunden, utan att förstöras, kommer att kunna ersätta skadliga skript på webbplatsen efter att återställningsarbetet har utförts. För att förhindra att detta inträffar måste alla processer som kördes innan webbplatsen blockerades förstöras. Webbplatsen bör redan vara blockerad i detta ögonblick så att angriparen inte kan starta nya processer genom att komma åt ett av sina skript på webbplatsen. För att förstöra processer som körs på ditt konto, kontakta den tekniska supporttjänsten för webbhotellet som är värd för din webbplats.
  • Nu är det omöjligt att penetrera platsen från utsidan och du kan börja återställa den.
  • Innan ytterligare åtgärder, radera alla befintliga webbplatsfiler för att säkerställa att det inte finns några skadliga skript eller CMS-skript där angriparen har infogat skadlig kod. Detta steg är också viktigt eftersom filer som fanns före återställningen inte alltid raderas när du återställer en webbplats från en säkerhetskopia. Om, efter återställning från en säkerhetskopia, gamla skadliga skript finns kvar på webbplatsen, kommer angriparen att kunna gå in på webbplatsen igen. Du kan undvika detta genom att ta bort alla webbplatsfiler innan du utför återställning.
  • När du har raderat alla webbplatsfiler återställer du webbplatsen från en säkerhetskopia som skapades innan den hackades. Ofta räcker det med att endast återställa webbplatsfilerna, men om fel observeras i webbplatsens funktion efter att ha återställt dem, är det nödvändigt att återställa webbplatsen helt: både filerna och databasen.
  • När du har återställt från en säkerhetskopia uppdaterar du ditt innehållshanteringssystem (CMS) och tillägg till de senaste versionerna. Detta är nödvändigt för att utesluta förekomsten av kända sårbarheter på webbplatsen genom vilka den kan hackas. Som regel kan uppdateringen göras via CMS-administrationssektionen. För att få fullständiga instruktioner För att uppdatera CMS måste du gå till systemutvecklarens webbplats. Det är viktigt att uppdatera inte bara själva CMS utan även alla dess tillägg, eftersom hackning ofta sker genom en sårbarhet som finns i en av CMS-tilläggen (till exempel plugins, teman, widgets, etc.). För närvarande är det fortfarande omöjligt att avblockera webbplatsen för besökare, eftersom den fortfarande kan vara sårbar. För att få tillgång till din webbplats för uppdatering, kontakta den tekniska supporten för den värd som är värd för din webbplats och be om att endast tillåta åtkomst till webbplatsen från din dators IP-adress. Du kan ta reda på din IP-adress, till exempel på inet.yandex.ru.
  • Efter att ha uppdaterat webbplatsens hanteringssystem och dess tillägg, gå till avsnittet om webbplatsadministration och ändra administratörslösenordet till det. Se till att det bland webbplatsanvändarna inte finns några andra användare med administrativa rättigheter (de kan ha lagts till av en angripare), och om några hittas, ta bort dem.
  • Nu när webbplatsen har återställts från en säkerhetskopia och inte innehåller skadliga skript, CMS och dess tillägg har uppdaterats till de senaste versionerna som inte innehåller sårbarheter, och lösenorden för åtkomst till webbplatsen och värdkontot har ändrats, du kan öppna webbplatsen igen för besökare.
  • Alla ovanstående åtgärder måste utföras i enlighet med den angivna ordningen, utan utelämnanden eller några ändringar. Om åtgärderna utförs felaktigt kan skadliga skript eller sårbarheter finnas kvar på webbplatsen, vilket gör att den kan hackas igen av en angripare efter en kort tid. Om det av någon anledning inte är möjligt att utföra ovanstående steg i den form som de anges i, kontakta en specialist för att utföra arbete för att återställa webbplatsen efter ett hack.

    För att skydda din webbplats från upprepade hack i framtiden måste du följa följande rekommendationer:
  • Håll koll på uppdateringar av CMS och tillägg för det på utvecklarnas webbplatser och uppdatera dem omedelbart till de senaste versionerna. Om en uppdateringskommentar säger att den åtgärdar en sårbarhet, installera uppdateringen så snart som möjligt.
  • Arbeta med webbplatsen och värdkontot endast från datorer som är skyddade från virus av moderna antivirus med ständigt uppdaterade virusdatabaser.
  • Använd komplexa lösenord så att de inte kan gissas genom en ordbokssökning.
  • Spara inte FTP- och SSH-lösenord i program för att ansluta till webbplatsen, och spara inte åtkomstlösenordet till det administrativa området på webbplatsen och värdkontrollpanelen i din webbläsare.
  • Då och då (till exempel en gång var tredje månad), ändra lösenorden för åtkomst till webbplatsen och värdkontot.
  • Om virus upptäcktes på datorn från vilken du arbetade med webbplatsen, ändra lösenorden för åtkomst till webbplatsen och värdkontot så snabbt som möjligt. Du måste ändra alla lösenord: få tillgång till lösenord via FTP, SSH, lösenordet från webbplatsens administrativa panel, samt lösenordet från värdkontrollpanelen.
  • Ge inte åtkomst till webbplatsen till tredje part om du inte är säker på att de också kommer att följa dessa riktlinjer.
  • Skadlig kod kommer in på webbplatsen genom oaktsamhet eller uppsåt. Syften med skadlig kod varierar, men i huvudsak skadar eller stör den normala driften av en webbplats. För att ta bort skadlig kod på WordPress måste du först hitta den.

    Vad är skadlig kod på en WordPress-webbplats?

    Förbi utseende, oftast är skadlig kod en uppsättning bokstäver och symboler i det latinska alfabetet. Faktum är att detta är en krypterad kod med vilken den eller den åtgärden utförs. Åtgärderna kan vara väldigt olika, till exempel publiceras dina nya inlägg omedelbart på en tredjepartsresurs. Detta är i huvudsak att stjäla ditt innehåll. Koder har också andra "uppgifter", till exempel att placera utgående länkar på webbplatssidor. Uppgifterna kan vara de mest sofistikerade, men en sak är klar: skadliga koder måste jagas och tas bort.

    Hur kommer skadliga koder till en webbplats?

    Det finns också många kryphål för koder att komma in på sajten.

  • Oftast är dessa teman och plugins som laddas ner från "vänster" resurser. Även om sådan penetration är typisk för så kallade krypterade länkar. Explicit kod hamnar inte på sajten.
  • Inträngningen av ett virus när en webbplats hackas är den farligaste. Genom att hacka en webbplats kan du som regel inte bara placera en "engångskod", utan också installera kod med skadliga element ( skadlig programvara). Till exempel hittar du en kod och raderar den, men den återställs efter en tid. Det finns, återigen, många alternativ.
  • Låt mig genast notera att det är svårt att bekämpa sådana virus, och manuell borttagning kräver kunskap. Det finns tre lösningar på problemet: den första lösningen är att använda antivirusplugins, till exempel en plugin som heter BulletProof Security.

    Denna lösning ger bra resultat, men tar tid, om än lite. Det finns en mer radikal lösning för att bli av med skadliga koder, inklusive komplexa virus, vilket är att återställa webbplatsen från tidigare gjorda säkerhetskopior av webbplatsen.

    Eftersom en bra webbmaster gör detta med jämna mellanrum kan du rulla tillbaka till en icke-infekterad version utan problem. Den tredje lösningen är för de rika och lata, kontakta bara ett specialiserat "kontor" eller en enskild specialist.

    Hur man letar efter skadlig kod på WordPress

    Det är viktigt att förstå att skadlig kod på WordPress kan finnas i vilken fil som helst på webbplatsen, och inte nödvändigtvis i arbetstemat. Han kan komma med ett plugin, ett tema eller "hemgjord" kod hämtad från Internet. Det finns flera sätt att försöka hitta skadlig kod.

    Metod 1: Manuellt. Du bläddrar igenom alla webbplatsfiler och jämför dem med filerna från en oinfekterad säkerhetskopia. Om du hittar någon annans kod, radera den.

    Metod 2: Använda WordPress Security Plugins. Till exempel, . Denna plugin har en fantastisk funktion som skannar webbplatsfiler för närvaron av andra människors kod och plugin klarar denna uppgift perfekt.

    Metod 3. Om du har ett rimligt supportvärdskap och det verkar som om det finns någon annan på webbplatsen, be dem att skanna din webbplats med sitt antivirusprogram. Deras rapport kommer att lista alla infekterade filer. Öppna sedan dessa filer i textredigerare och ta bort skadlig kod.

    Metod 4. Om du kan arbeta med SSH-åtkomst till webbplatskatalogen, fortsätt, den har sitt eget kök.

    Viktig! Oavsett hur du söker efter skadlig kod, innan du söker och sedan tar bort koden, stäng åtkomsten till webbplatsfilerna (aktivera underhållsläge). Kom ihåg om koder som själva återställs när de raderas.

    Sök efter skadliga koder med hjälp av eval-funktionen

    Det finns en sådan funktion i PHP som heter eval. Det låter dig köra vilken kod som helst på dess rad. Dessutom kan koden krypteras. Det är på grund av kodningen som den skadliga koden ser ut som en uppsättning bokstäver och symboler. Två populära kodningar är:

  • Base64;
  • Rot13.
  • Följaktligen, i dessa kodningar ser eval-funktionen ut så här:

    • eval(base64_decode(...))
    • eval (str_rot13 (...)) //i interna citattecken, långa, otydliga bokstäver och symboler..

    Algoritmen för att söka efter skadlig kod med hjälp av eval-funktionen är följande (vi arbetar från den administrativa panelen):

    • gå till webbplatsredigeraren (Utseende→ Redaktör).
    • kopiera filen functions.php.
    • öppna den i en textredigerare (till exempel Notepad++) och sök efter ordet: eval.
    • Om du hittar det, skynda dig inte att radera något. Du måste förstå vad den här funktionen "frågar" ska utföras. För att förstå detta måste koden avkodas. För avkodning finns onlineverktyg som kallas avkodare.
    Avkodare/kodare

    Avkodare fungerar helt enkelt. Du kopierar koden du vill dekryptera, klistrar in den i avkodarfältet och avkodar.

    I skrivande stund hittade jag inte en enda krypterad kod som finns i WordPress. Jag hittade koden från Joomlas hemsida. I princip är det ingen skillnad i att förstå avkodning. Låt oss titta på fotot.

    Som du kan se på bilden visade eval-funktionen, efter avkodning, inte en fruktansvärd kod som hotar webbplatsens säkerhet, utan en krypterad upphovsrättslänk från mallens författare. Den kan också tas bort, men den kommer tillbaka efter uppdatering av mallen om du inte använder .

    Sammanfattningsvis skulle jag vilja notera, för att inte få ett virus på webbplatsen:

    • Skadlig kod på WordPress kommer ofta med teman och plugins. Installera därför inte mallar och plugins från "vänster", overifierade resurser, och om du gör det, kontrollera dem noggrant för närvaron av länkar och exekutiva funktioner i PHP. Efter att ha installerat plugins och teman från "olagliga" resurser, kontrollera webbplatsen med antivirusprogram.
    • Se till att göra periodiska säkerhetskopior och utföra andra.

    1. Packa upp den i webbplatsmappen.
    2. följ länken your_site/fscure/
    3. allt

    Vad kan han göra?

    1. Automatisk sökning efter virus genom signaturer.
    2. Sök efter en sträng i filer
    3. Ta bort filer
    4. Lagra skadlig kod med reguljära uttryck

    Skriptet kommer inte att göra allt arbete åt dig och kräver en del minimal kunskap. Det rekommenderas att göra en säkerhetskopia av webbplatsen innan arbetet.

    Hur fungerar det?

    När den först startas skapar den ett index över filer. Filen fscure.lst finns i mappen. Visar en lista över filer som innehåller potentiellt skadliga signaturer. "Potentiellt skadlig" betyder att du måste bestämma om det är ett virus eller inte. Listan med signaturer är konfigurerad i filen config.php, konstant SCAN_SIGN. Med standardinställningar kontrollerar skriptet inte js-filer och innehåller inga signaturer för dem.

    De vanligaste problemen

    1. skapar inte indexet fscure.lst. Kan hända om det inte finns tillräckligt med rättigheter. Sätt 777 i mappen fscure

    2. 5xx-fel. Oftast "504 Gateway Time-out". Skriptet har inte tid att bearbeta och kraschar på grund av en timeout. I det här fallet finns det flera sätt att påskynda sitt arbete. Hastigheten beror främst på storleken på indexet. Det finns i filen fscure.lst. Vanligtvis kan en fil på upp till 5 MB bearbetas i 90 % av fallen. Om det inte har tid kan du minska skriptets "girighet" genom att förbjuda att skanna *.jpg;*.png;*.css i konfigurationen.
    I filen config.php.

    // avgränsare; define("FILES_EXCLUDE","*.js;*.jpg;*.png;*.css");

    3. Hosting utfärdar en varning som
    (HEX)base64.inject.unclassed.6: u56565656: /var/www/u65656565/data/www/34535335353.ru/fscure/index.php

    Det finns inget virus i skriptet och det har det aldrig funnits. Och (HEX)base64.inject.unclassed.6 är en konstruktion som "echo base64_decode(" , som ofta påträffas och i sig är ganska ofarlig. Men i senaste versionen, jag ersatte den här koden.

    Vad ska du göra om du inte kunde hitta viruset själv?

    Du kan kontakta mig för hjälp. Mina priser är blygsamma. Jag garanterar mitt arbete i 6 månader. Kostnaden för arbetet är 800 rubel. för 1 webbplats. Om det finns flera sajter på ditt konto bestäms priset individuellt.

    Om du lyckades göra allt själv skulle jag vara tacksam för en ekonomisk belöning eller en länk till min sida.

    Mina krav:
    yandex
    41001151597934

    webmoney
    Z959263622242
    R356304765617
    E172301357329

    Sanningen i livet är att sajten kan hackas förr eller senare. Efter att ha lyckats utnyttja sårbarheten försöker hackaren få fotfäste på webbplatsen genom att placera hackers webbskal och nedladdningsverktyg i systemkataloger och introducera bakdörrar i skriptkoden och CMS-databasen.

    Scanners hjälper till att upptäcka laddade webbskal, bakdörrar, nätfiskesidor, spam-e-postmeddelanden och andra typer av skadliga skript - allt de känner till och är förinlagt i signaturdatabasen för skadlig kod. Vissa skannrar, som AI-BOLIT, har en uppsättning heuristiska regler som kan upptäcka filer med misstänkt kod som ofta används i skadliga skript, eller filer med misstänkta attribut som kan laddas ner av hackare. Men, tyvärr, även om flera skannrar används på webbhotellet, kan det finnas situationer där vissa hackerskript förblir oupptäckta, vilket faktiskt innebär att angriparen lämnas med en "bakdörr" och kan hacka webbplatsen och få kontroll över den full kontroll när som helst.

    Moderna skript för skadlig programvara och hacker skiljer sig markant från de för 4-5 år sedan. För närvarande kombinerar utvecklare av skadlig kod obfuskering, kryptering, nedbrytning, extern laddning av skadlig kod och andra knep för att lura antivirusprogram. Därför är sannolikheten för att missa ny skadlig programvara mycket högre än tidigare.

    Vad kan göras i det här fallet för att mer effektivt upptäcka virus på webbplatsen och hackerskript på webbhotellet? Det är nödvändigt att använda ett integrerat tillvägagångssätt: initial automatiserad skanning och ytterligare manuell analys. Den här artikeln kommer att diskutera alternativ för att upptäcka skadlig kod utan skannrar.

    Låt oss först titta på exakt vad du ska leta efter under ett hack.

  • Hackerskript.
    Oftast, vid hackning, är filer som laddas ner webbskal, bakdörrar, "uppladdare", skript för skräppostutskick, nätfiskesidor + formulärhanterare, dörröppningar och hackmarkörfiler (bilder från hackergruppens logotyp, textfiler med ett "meddelande" från hackare, etc.)
  • Injektioner (kodinjektioner) i befintliga .
    Den näst mest populära typen av värd för skadlig kod och hackerkod är injektioner. Mobil- och sökomdirigeringar kan injiceras i befintliga webbplatsens .htaccess-filer, bakdörrar kan injiceras i php/perl-skript, och virala javascript-fragment eller omdirigeringar till tredjepartsresurser kan bäddas in i .js- och .html-mallar. Injektioner är också möjliga i mediafiler, till exempel.jpg eller. Ofta består skadlig kod av flera komponenter: den skadliga koden i sig lagras i exif-huvudet i jpg-filen och exekveras med ett litet kontrollskript, vars kod inte ser misstänkt ut för skannern.
  • Databasinjektioner.
    Databasen är det tredje målet för en hackare. Här är statiska inlägg möjliga, , , , som omdirigerar besökare till tredjepartsresurser, "spionerar" på dem eller infekterar besökarens dator/mobila enhet som ett resultat av en drive-by-attack.
    Dessutom, i många moderna CMS (IPB, vBulletin, modx, etc.) tillåter mallmotorer dig att köra php-kod, och själva mallarna lagras i databasen, så PHP-koden för webbskal och bakdörrar kan byggas in direkt i databasen.
  • Injektioner i cachningstjänster.
    Som ett resultat av felaktig eller osäker konfiguration av cachingtjänster, till exempel memcachade, är injektioner i cachad data "i farten" möjliga. I vissa fall kan en hackare injicera skadlig kod på webbplatsens sidor utan att direkt hacka webbplatsen.
  • Injektioner/initierade element i serversystemkomponenter.
    Om en hacker har fått privilegierad (root) åtkomst till servern kan han ersätta delar av webbservern eller cacheservern med infekterade. En sådan webbserver kommer å ena sidan att ge kontroll över servern med hjälp av kontrollkommandon, och å andra sidan då och då introducera dynamiska omdirigeringar och skadlig kod på webbplatsens sidor. Som i fallet med en injektion i en cachningstjänst, kommer webbplatsens administratör med största sannolikhet inte att kunna upptäcka det faktum att webbplatsen har blivit hackad, eftersom alla filer och databasen kommer att vara original. Detta alternativ är det svåraste att behandla.
  • Så låt oss anta att du redan har kontrollerat filerna på webbhotellet och databasdumpen med skannrar, men de hittade ingenting, och viruset finns fortfarande på sidan eller omdirigeringen av mobilen fortsätter att fungera när du öppnar sidor. Hur söker man vidare?

    Manuell sökning

    På unix är det svårt att hitta ett mer värdefullt par kommandon för att hitta filer och fragment än find / grep.

    hitta . -namn '*.ph*' -mtime -7

    hittar alla filer som har ändrats under den senaste veckan. Ibland "vrider" hackare ändringsdatumet för skript för att inte upptäcka nya skript. Sedan kan du söka efter php/phtml-filer vars attribut har ändrats

    hitta . -namn '*.ph*' -сtid -7

    Om du behöver hitta ändringar inom ett visst tidsintervall kan du använda samma sök

    hitta . -namn '*.ph*' -newermt 2015-01-25 ! -newermt 2015-01-30 -ls

    För att söka filer är grep oumbärligt. Den kan söka rekursivt genom filer efter ett specificerat fragment

    grep -ril ‘stummann.net/steffen/google-analytics/jquery-1.6.5.min.js’ *

    När du hackar en server är det användbart att analysera filer som har guid/suid-flaggan inställd

    hitta / -perm -4000 -o -perm -2000

    För att avgöra vilka skript som körs för närvarande och som laddar värdprocessorn kan du ringa

    lsof +r 1 -p `ps axww | grep httpd | grep -v grep | awk ‘ ( if(!str) ( str= ) else ( str=str””))END(print str)’` | grep vhosts | grep php

    Vi använder våra hjärnor och händer för att analysera filer på hosting
  • Vi går till uppladdnings-, cache-, tmp-, backup-, logg-, bildkataloger, i vilka något skrivs av skript eller laddas upp av användare, och skannar innehållet efter nya filer med misstänkta tillägg. Till exempel, för joomla kan du kontrollera .php-filerna i katalogen images:find ./images -name '*.ph*'. Mest troligt, om något hittas, kommer det att vara skadlig programvara.
    För WordPress är det vettigt att kontrollera wp-content/uploads-katalogen, backup- och cache-temakataloger för skript.
  • Letar efter filer med konstiga namn
    Till exempel, php, fyi.php, n2fd2.php. Filer kan sökas
    • - genom icke-standardiserade kombinationer av tecken,
    • - förekomsten av nummer 3,4,5,6,7,8,9 i filnamnet
  • Vi letar efter filer med ovanliga tillägg
    Låt oss säga att du har en webbplats på WordPress eller för dem kommer filer med tilläggen .py, .pl, .cgi, .so, .c, .phtml, .php3 inte att vara helt vanliga. Om några skript och filer med dessa tillägg upptäcks är de troligen hackerverktyg. Andelen falska upptäckter är möjlig, men den är inte hög.
  • Vi letar efter filer med icke-standardiserade attribut eller skapandedatum
    Misstanke kan orsakas av filer med attribut som skiljer sig från de som finns på servern. Till exempel laddades alla .php-skript upp via ftp/sftp och har användaren, och några skapades av användaren www-data. Det är vettigt att kontrollera de senaste. Eller om skriptfilens skapelsedatum är tidigare än platsens skapelsedatum.
    För att påskynda sökningen efter filer med misstänkta attribut är det bekvämt att använda Unix find-kommandot.
  • Vi letar efter dörröppningar med ett stort antal .html- eller .php-filer
    Om det finns flera tusen .php- eller .html-filer i katalogen är detta troligen en dörröppning.
  • Loggar till hjälp

    Webbserver, e-posttjänst och FTP-loggar kan användas för att upptäcka skadliga skript och hackerskript.

    • Korrelation mellan datum och tid för att skicka brevet (som kan hittas från loggen Mejl server eller tjänsthuvudet för ett skräppostbrev) med förfrågningar från access_log hjälper till att identifiera metoden för skräppostsändning eller hitta skräppostavsändarens skript.
    • Analys av FTP xferlog-överföringsloggen låter dig förstå vilka filer som laddades ner vid tidpunkten för hacket, vilka som ändrades och av vem.
    • I en korrekt konfigurerad e-postserverlogg eller i tjänsthuvudet i ett skräppostmeddelande, om PHP är korrekt konfigurerat, kommer det att finnas ett namn eller en fullständig sökväg till det sändande skriptet, vilket hjälper till att fastställa källan till skräpposten.
    • Med hjälp av loggarna för proaktivt skydd av moderna CMS och plugins kan du avgöra vilka attacker som utfördes på webbplatsen och om CMS kunde motstå dem.
    • Med hjälp av access_log och error_log kan du analysera en hackers handlingar om du känner till namnen på skripten som han anropade, IP-adressen eller användaragenten. Som en sista utväg kan du se POST-förfrågningar den dag som webbplatsen hackades och infekterades. Ofta låter analysen dig hitta andra hackerskript som laddades ner eller som redan fanns på servern vid tidpunkten för hacket.
    Integritetskontroll

    Det är mycket lättare att analysera ett hack och leta efter skadliga skript på en webbplats om du tar hand om dess säkerhet i förväg. Proceduren för integritetskontroll hjälper till att i tid upptäcka förändringar i värdskapet och fastställa fakta om hackning. En av de enklaste och effektiva sätt– lägg webbplatsen under versionskontrollsystem (git, svn, cvs). Om du konfigurerar .gitignore korrekt, ser ändringskontrollprocessen ut som att anropa kommandot git status, och att söka efter skadliga skript och ändrade filer ser ut som git diff.

    Det kommer du också alltid att ha säkerhetskopia filer till vilka du kan "rulla tillbaka" webbplatsen på några sekunder. Serveradministratörer och avancerade webbansvariga kan använda inotify, tripwire, auditd och andra mekanismer för att spåra åtkomst till filer och kataloger och övervaka förändringar i filsystemet.

    Tyvärr är det inte alltid möjligt att konfigurera ett versionskontrollsystem eller tredjepartstjänster på servern. Vid delad hosting kommer det inte att vara möjligt att installera ett versionskontrollsystem och systemtjänster. Men det spelar ingen roll, det finns ganska många färdiga lösningar för CMS. Du kan installera ett plugin eller ett separat skript på webbplatsen som spårar ändringar i filer. Vissa CMS implementerar redan effektiv förändringsövervakning och en integritetskontrollmekanism (till exempel Bitrix, DLE). Som en sista utväg, om webbhotellet har ssh, kan du skapa en referenscast filsystem team

    Kampanj "2 till priset av 1"

    Kampanjen gäller till slutet av månaden.

    När du aktiverar tjänsten "Site under övervakning" för en webbplats kopplas den andra på samma konto upp gratis. Efterföljande webbplatser på kontot - 1 500 rubel per månad för varje webbplats.

    
    Topp