Ondsinnede skript. Vi søker etter og fjerner ondsinnet kode på WordPress. Nøytralisering av serverskript

WordPress er et av de mest populære innholdsstyringssystemene, brukt til en rekke formål, fra blogging til e-handel. Det er et bredt utvalg av WordPress-plugins og temaer. Det hender at noen av disse utvidelsene faller i hendene på webmastere etter at en angriper har jobbet med dem.

For sin egen fordel kan han legge igjen reklamelenker eller kode i dem som han vil administrere nettstedet ditt med. Mange WordPress-brukere har ikke mye erfaring med webprogrammering og vet ikke hvordan de skal håndtere denne situasjonen.

For dem gjennomgikk jeg ni av de mest effektive verktøyene for å oppdage ondsinnede endringer i koden til et nettsted som kjører eller installerte tillegg.

1. Theme Authenticity Checker (TAC)

Theme Authenticity Checker (TAC) – WordPress-plugin som skanner hver etablert tema for mistenkelige elementer som usynlige lenker eller Base64-kryptert kode.

Etter å ha oppdaget slike elementer, rapporterer TAC dem til WordPress-administratoren, slik at han uavhengig kan analysere og om nødvendig korrigere kildetemafilene:

2. Utnytt skanner

Exploit Scanner skanner hele nettstedets kildekode og WordPress-databaseinnhold for tvilsomme inkluderinger. Akkurat som TAC, forhindrer ikke denne plugin angrep eller bekjemper konsekvensene deres automatisk.

Den viser bare oppdagede symptomer på infeksjon til nettstedadministratoren. Hvis du ønsker å slette ondsinnet kode, må du gjøre det manuelt:

3. Sucuri Security

Sucuri er en velkjent WordPress sikkerhetsløsning. Sucuri Security-pluginen overvåker filer lastet opp til et WordPress-nettsted, opprettholder sin egen liste over kjente trusler, og lar deg også eksternt skanne nettstedet ved å bruke den gratis Sucuri SiteCheck-skanneren. Bak abonnementsavgift Du kan styrke nettstedets beskyttelse ytterligere ved å installere den kraftige Sucuri Website Firewall:

4. Anti-Malware

Anti-Malware er en plugin for WordPress som kan finne og fjerne trojanske skript, bakdører og annen ondsinnet kode.

Innstillinger for skanning og sletting kan tilpasses. Dette pluginet kan brukes etter registrering gratis på gotmls.

Programtillegget går regelmessig inn på produsentens nettsted, overfører statistikk for oppdagelse av skadelig programvare og mottar oppdateringer. Derfor, hvis du ikke vil installere plugins på nettstedet ditt som overvåker driften, bør du unngå å bruke Anti-Malware:

5. WP Antivirus Site Protection

WP Antivirus Site Protection er en plugin som skanner alle filer lastet opp til et nettsted, inkludert WordPress-temaer.

Plugin-en har sin egen signaturdatabase, som automatisk oppdateres via Internett. Det kan fjerne trusler automatisk, varsle nettstedadministratoren ved å e-post Og mye mer.

Plugin er installert og fungerer gratis, men har flere betalte tillegg som er verdt å ta hensyn til:

6. AntiVirus for WordPress

AntiVirus for WordPress er en brukervennlig plugin som kan skanne nettstedet ditt regelmessig og varsle deg om sikkerhetsproblemer via e-post. Programtillegget har en egendefinert hviteliste og andre funksjoner:

7. Quterra Web Malware Scanner

Quterras skanner sjekker et nettsted for sårbarheter, tredjeparts kodeinjeksjoner, virus, bakdører osv. Skanneren har så interessante funksjoner som heuristisk skanning og gjenkjenning av eksterne lenker.

Grunnleggende skannerfunksjoner er gratis, mens noen tilleggstjenester vil koste deg $60 per år:

8. Wordfence

Hvis du leter etter en omfattende løsning på nettstedets sikkerhetsproblemer, trenger du ikke lete lenger enn til Wordfence.

Denne plugin gir konstant beskyttelse for WordPress mot kjente typer angrep, tofaktorautentisering, støtte for en "svarteliste" over IP-adresser til datamaskiner og nettverk brukt av hackere og spammere, og skanning av nettstedet for kjente bakdører.

Denne plugin-en er gratis i sin grunnleggende versjon, men den har også premium-funksjonalitet, som produsenten ber om en beskjeden abonnementsavgift for:

9. Wemahu

Wemahu overvåker endringer i nettstedets kode og søker etter skadelig kode.

Databasen som skadelig programvare oppdages på fylles på ved hjelp av crowdsourcing-metoden: brukerne fyller på den selv ved å sende resultatene av skanning av infiserte WordPress-installasjoner til nettstedet til plugin-forfatteren. Programtillegget støtter også sending av rapporter via e-post og andre nyttige funksjoner.

Må gjøres sammen. Hvis du eliminerer den opprinnelige årsaken til hacket (for eksempel en sårbarhet i CMS-utvidelsen), men ikke fjerner alle de skadelige filene, vil angriperen kunne få tilgang til nettstedet igjen ved å bruke et av skriptene hans. Hvis du fjerner alle nedlastede ondsinnede skript, men ikke eliminerer årsaken til hacket, vil angriperen kunne hacke nettstedet igjen og laste ned skript til det igjen.

En spesialist med passende kunnskap og erfaring bør utføre arbeid for å fjerne ondsinnede skript og analysere årsakene til hacking:

  • For å fjerne ondsinnede skript trenger du kunnskap om PHP-programmeringsspråket, samt kunnskap om "innsiden" av populære CMS (Joomla, WordPress, etc.) og utvidelser for dem. Denne kunnskapen er nødvendig for å skille skript direkte fra CMS og dets utvidelser fra fremmede filer, og også for å kunne entydig bestemme hvilke handlinger de utfører når de møter tvilsomme skript.
  • For å analysere årsakene til hacking kreves erfaring med serveradministrasjon. Dette er nødvendig for å analysere tilstanden til filene på kontoen, tidspunktet de ble endret, og også for å sammenligne disse dataene med serverlogger for å finne ut hvilke handlinger fra angriperen som førte til hacking av nettsteder.

Derfor, hvis nettstedet ditt har blitt hacket, anbefales det, for å unngå gjentatte hacks, ikke å gjøre arbeidet selv, men å kontakte en spesialist som vil utføre nødvendig diagnostikk og anbefale eller utføre nødvendige handlinger for å løse problemet, og hvem kan garantere kvaliteten på det oppnådde resultatet.

Det finnes imidlertid en rekke tiltak som i noen tilfeller bidrar til å gjenopprette sikker drift av stedet uten spesiell kunnskap. Begrensningen for metoden nedenfor er at for å gjenoppta driften av nettstedet, krever det en sikkerhetskopi av den opprettet før hacket. Hvis datoen for bruddet er ukjent, kan du prøve denne metoden ved å bruke den eldste sikkerhetskopien som er tilgjengelig. Den andre begrensningen, som en konsekvens av den første, er at etter gjenoppretting av nettstedet ble data lagt til nettstedet etter gjenopprettingssikkerhetskopien (for eksempel nye artikler, bilder eller dokumenter). Hvis du trenger å gjenopprette nettstedet mens du beholder nye data, må du kontakte en spesialist.

Disse tiltakene tillater oss ikke å fastslå årsaken til nettstedshacket, men hver av dem er rettet mot å eliminere en av de potensielle årsakene til penetrering. Siden den nøyaktige årsaken til hacket er ukjent, er det nødvendig å utføre dem alle. Handlingene er ordnet i en slik rekkefølge at de først fullstendig eliminerer muligheten for at angriperen fortsetter sine aktiviteter på nettstedet eller hostingkontoen i for tiden, og forhindre deretter at en angriper kommer inn på nettstedet i fremtiden.

Trinnene nedenfor forutsetter at du bare har ett nettsted på hostingkontoen din. Hvis det er flere nettsteder på kontoen, kan de også bli hacket, og nettstedet kan bli hacket gjennom dem. Det er nødvendig å enten overføre stedet som restaureringsarbeidet utføres med til en egen konto, eller utføre restaurering for alle nettstedene som er vert på kontoen samtidig.

Rekkefølgen av handlinger er viktig, så det er nødvendig å utføre dem i nøyaktig rekkefølgen de er plassert nedenfor.

  • Umiddelbart etter å ha oppdaget at et nettsted har blitt hacket, er det nødvendig å fullstendig blokkere besøkendes tilgang til det. Dette vil for det første forhindre angriperen i å utføre ondsinnede aktiviteter på nettstedet, og for det andre vil ikke tillate ham å forstyrre restaureringsarbeidet. Dette trinnet er veldig viktig, siden fjerning av ondsinnede skript og eliminering av årsaken til hacket ikke skjer over natten - som regel tar det flere timer. Hvis nettstedet fortsatt er tilgjengelig fra utsiden, vil angriperen kunne laste opp skript på nytt til den delen av nettstedet som allerede er ryddet. I dette tilfellet kan en angriper bruke forskjellige IP-adresser for å koble til, så det vil ikke fungere å nekte tilgang bare til en liste over IP-adresser. For å sikre at nettstedet blir renset for oppdagede ondsinnede skript, er det nødvendig å fullstendig blokkere angriperens mulighet til å få tilgang til nettstedet, noe som bare kan gjøres ved å fullstendig blokkere nettstedet for eventuelle besøkende. Kontakt den tekniske støttetjenesten til verten som er vert for nettstedet ditt for å blokkere det.
  • Etter å ha blokkert nettstedet, må du sjekke datamaskinene du jobbet med nettstedet fra med et moderne antivirus med oppdaterte virusdatabaser. Hvis nettstedet ble hacket ved å stjele kontopassord ved hjelp av et virus, må du sørge for at videre arbeid med det hackede nettstedet utføres fra en datamaskin som ikke har virus, ellers kan de bli stjålet igjen etter å ha endret tilgangspassordene.
  • Etter å ha blokkert nettstedet og sjekket for virus, må du endre alle tilgangspassord til kontoen din: tilgang via FTP, via SSH, samt tilgang til vertskontrollpanelet. Hvis en angriper fikk tilgang til kontofiler ved hjelp av en av disse metodene, vil de ikke lenger kunne gjøre det når passordene er endret.
  • Etter å ha endret passord, må du ødelegge alle serverprosesser som kjører under kontoen som nettstedet vedlikeholdes på. Prosesser lansert av en angriper i bakgrunnen, uten å bli ødelagt, vil kunne erstatte skadelige skript på nettstedet etter at gjenopprettingsarbeid er utført. For å forhindre at dette skjer, må alle prosesser som kjører før siden ble blokkert, ødelegges. Siden skal allerede være blokkert i øyeblikket slik at angriperen ikke kan starte nye prosesser ved å få tilgang til et av skriptene hans på nettstedet. For å ødelegge prosesser som kjører på kontoen din, kontakt den tekniske støttetjenesten til verten som er vert for nettstedet ditt.
  • Nå er det umulig å trenge gjennom nettstedet fra utsiden, og du kan begynne å gjenopprette det.
  • Før ytterligere handlinger, slett alle eksisterende nettstedfiler for å sikre at det ikke finnes skadelige skript eller CMS-skript der angriperen har satt inn skadelig kode. Dette trinnet er også viktig fordi når du gjenoppretter et nettsted fra en sikkerhetskopi, slettes ikke alltid filer som eksisterte før gjenopprettingen. Hvis gamle ondsinnede skript forblir på nettstedet etter gjenoppretting fra en sikkerhetskopi, vil angriperen kunne gå inn på nettstedet på nytt. Du kan unngå dette ved å slette alle nettstedsfiler før du utfører gjenoppretting.
  • Etter å ha slettet alle nettstedsfiler, gjenopprett nettstedet fra en sikkerhetskopi som ble opprettet før den ble hacket. Ofte er det nok å gjenopprette bare nettstedsfilene, men hvis det, etter å ha gjenopprettet dem, observeres feil i nettstedets drift, er det nødvendig å gjenopprette nettstedet fullstendig: både filene og databasen.
  • Etter å ha gjenopprettet fra en sikkerhetskopi, oppdater innholdsstyringssystemet (CMS) og utvidelsene til de nyeste versjonene. Dette er nødvendig for å utelukke tilstedeværelsen av kjente sårbarheter på nettstedet som det kan bli hacket gjennom. Som regel kan oppdateringen gjøres gjennom CMS-administrasjonsdelen. For å få fullstendige instruksjoner For å oppdatere CMS må du gå til systemutviklerens nettsted. Det er viktig å ikke bare oppdatere selve CMS-en, men også alle utvidelsene, siden hacking ofte skjer gjennom en sårbarhet som finnes i en av CMS-utvidelsene (for eksempel plugins, temaer, widgets osv.). For øyeblikket er det fortsatt umulig å fjerne blokkeringen av nettstedet for besøkende, da det fortsatt kan være sårbart. For å få tilgang til nettstedet ditt for oppdatering, kontakt den tekniske støtten til verten som er vert for nettstedet ditt og be om å tillate tilgang til nettstedet kun fra datamaskinens IP-adresse. Du kan finne ut IP-adressen din, for eksempel på inet.yandex.ru.
  • Etter å ha oppdatert og dets utvidelser, gå til sideadministrasjonsdelen og endre administratortilgangspassordet til det. Sørg for at det ikke er noen andre brukere med administrative rettigheter blant nettstedets brukere (de kan ha blitt lagt til av en angriper), og hvis noen blir funnet, slett dem.
  • Nå som nettstedet er gjenopprettet fra en sikkerhetskopi og ikke inneholder skadelige skript, CMS og dets utvidelser har blitt oppdatert til de nyeste versjonene som ikke inneholder sårbarheter, og passordene for tilgang til nettstedet og vertskontoen er endret, kan du kan gjenåpne nettstedet for besøkende.
  • Alle de ovennevnte handlingene må utføres i henhold til den angitte rekkefølgen, uten utelatelser eller endringer. Hvis handlingene utføres unøyaktig, kan ondsinnede skript eller sårbarheter forbli på nettstedet, som et resultat av at det kan hackes igjen av en angriper etter kort tid. Hvis det av en eller annen grunn ikke er mulig å utføre trinnene ovenfor i formen de er angitt i, kontakt en spesialist for å utføre arbeid for å gjenopprette nettstedet etter et hack.

    For å beskytte nettstedet ditt mot gjentatte hacks i fremtiden, må du følge følgende anbefalinger:
  • Hold styr på oppdateringer til CMS og utvidelser for det på utviklernes nettsteder og oppdater dem umiddelbart til de nyeste versjonene. Hvis en oppdateringskommentar sier at den løser en sårbarhet, installer oppdateringen så snart som mulig.
  • Arbeid med nettstedet og vertskontoen kun fra datamaskiner som er beskyttet mot virus av moderne antivirus med konstant oppdaterte virusdatabaser.
  • Bruk komplekse passord slik at de ikke kan gjettes gjennom et ordboksøk.
  • Ikke lagre FTP- og SSH-passord i programmer for å koble til nettstedet, og ikke lagre tilgangspassordet til det administrative området på nettstedet og vertskontrollpanelet i nettleseren din.
  • Fra tid til annen (for eksempel en gang hver tredje måned), endre passordene for tilgang til nettstedet og vertskontoen.
  • Hvis det ble oppdaget virus på datamaskinen du jobbet med nettstedet fra, endre tilgangspassordene til nettstedet og vertskontoen så raskt som mulig. Det er nødvendig å endre alle passord: få tilgang til passord via FTP, SSH, passordet fra nettstedets administrative panel, samt passordet fra vertskontrollpanelet.
  • Ikke gi tilgang til nettstedet til tredjeparter med mindre du er sikker på at de også vil følge disse retningslinjene.
  • Ondsinnet kode kommer inn på nettstedet gjennom uaktsomhet eller ondsinnet hensikt. Formålet med ondsinnet kode varierer, men i hovedsak skader eller forstyrrer den normal drift av et nettsted. For å fjerne ondsinnet kode på WordPress, må du først finne den.

    Hva er ondsinnet kode på et WordPress-nettsted?

    Av utseende, oftest er ondsinnet kode et sett med bokstaver og symboler i det latinske alfabetet. Faktisk er dette en kryptert kode som denne eller den handlingen utføres med. Handlingene kan være svært forskjellige, for eksempel blir de nye innleggene dine umiddelbart publisert på en tredjepartsressurs. Dette er i hovedsak å stjele innholdet ditt. Koder har også andre "oppgaver", for eksempel å plassere utgående lenker på nettstedssider. Oppgavene kan være de mest sofistikerte, men én ting er klart: ondsinnede koder må jaktes og fjernes.

    Hvordan kommer skadelige koder inn på et nettsted?

    Det er også mange smutthull for koder for å komme inn på siden.

  • Oftest er dette temaer og plugins som er lastet ned fra "venstre" ressurser. Selv om slik penetrering er typisk for såkalte krypterte lenker. Eksplisitt kode havner ikke på nettstedet.
  • Inntrengningen av et virus når et nettsted blir hacket er den farligste. Som regel lar hacking av et nettsted deg ikke bare plassere en "engangskode", men også installere kode med malware-elementer ( skadevare). For eksempel finner du en kode og sletter den, men den gjenopprettes etter en stund. Det er igjen mange alternativer.
  • La meg merke med en gang at det er vanskelig å bekjempe slike virus, og manuell fjerning krever kunnskap. Det er tre løsninger på problemet: den første løsningen er å bruke antivirus-plugins, for eksempel en plugin kalt BulletProof Security.

    Denne løsningen gir gode resultater, men tar tid, om enn litt. Det er en mer radikal løsning for å kvitte seg med ondsinnede koder, inkludert komplekse virus, som er å gjenopprette nettstedet fra tidligere laget sikkerhetskopier av nettstedet.

    Siden en god webmaster gjør dette med jevne mellomrom, kan du rulle tilbake til en ikke-infisert versjon uten problemer. Den tredje løsningen er for de rike og late, bare ta kontakt med et spesialisert "kontor" eller en individuell spesialist.

    Slik ser du etter ondsinnet kode på WordPress

    Det er viktig å forstå at ondsinnet kode på WordPress kan være i hvilken som helst fil på nettstedet, og ikke nødvendigvis i arbeidstemaet. Han kan komme opp med en plugin, et tema eller "hjemmelaget" kode hentet fra Internett. Det er flere måter å prøve å finne skadelig kode på.

    Metode 1: Manuelt. Du blar gjennom alle nettstedsfilene og sammenligner dem med filene til en uinfisert sikkerhetskopi. Hvis du finner en annens kode, slett den.

    Metode 2: Bruke WordPress Security Plugins. For eksempel, . Denne plugin-en har en flott funksjon som skanner nettstedsfiler for tilstedeværelse av andres kode, og plugin-en takler denne oppgaven perfekt.

    Metode 3. Hvis du har rimelig støtte for hosting, og det ser ut til at det er noen andre på nettstedet, kan du be dem skanne nettstedet ditt med antivirusprogrammet sitt. Rapporten deres viser alle infiserte filer. Deretter åpner du disse filene tekstredigerer og fjern ondsinnet kode.

    Metode 4. Hvis du kan jobbe med SSH-tilgang til nettstedkatalogen, så fortsett, den har sitt eget kjøkken.

    Viktig! Uansett hvordan du søker etter ondsinnet kode, før du søker og deretter sletter koden, må du lukke tilgangen til nettstedfilene (slå på vedlikeholdsmodus). Husk om koder som i seg selv blir gjenopprettet når de slettes.

    Søk etter ondsinnede koder ved å bruke eval-funksjonen

    Det er en slik funksjon i PHP som heter eval. Den lar deg kjøre hvilken som helst kode på linjen. Dessuten kan koden krypteres. Det er på grunn av kodingen at den skadelige koden ser ut som et sett med bokstaver og symboler. To populære kodinger er:

  • Base64;
  • Rått13.
  • Følgelig ser evalfunksjonen slik ut i disse kodingene:

    • eval(base64_decode(...))
    • eval (str_rot13 (...)) //i interne anførselstegn, lange, uklare sett med bokstaver og symboler..

    Algoritmen for å søke etter ondsinnet kode ved å bruke eval-funksjonen er som følger (vi jobber fra det administrative panelet):

    • gå til nettstedsredigering (Utseende → Redaktør).
    • kopier filen functions.php.
    • åpne den i et tekstredigeringsprogram (for eksempel Notepad++) og søk etter ordet: eval.
    • Hvis du finner det, ikke skynd deg å slette noe. Du må forstå hva denne funksjonen "ber" om å bli utført. For å forstå dette må koden dekodes. For dekoding finnes det nettbaserte verktøy kalt dekodere.
    Dekodere/kodere

    Dekodere fungerer enkelt. Du kopierer koden du vil dekryptere, limer den inn i dekoderfeltet og dekoder.

    I skrivende stund fant jeg ikke en eneste kryptert kode funnet i WordPress. Jeg fant koden fra Joomla-nettstedet. I prinsippet er det ingen forskjell i å forstå dekoding. La oss se på bildet.

    Som du kan se på bildet, viste eval-funksjonen, etter dekoding, ikke en forferdelig kode som truer sikkerheten til nettstedet, men en kryptert copyright-lenke fra forfatteren av malen. Den kan også fjernes, men den kommer tilbake etter oppdatering av malen hvis du ikke bruker .

    Avslutningsvis vil jeg merke, for ikke å få et virus på nettstedet:

    • Ondsinnet kode på WordPress kommer ofte med temaer og plugins. Derfor, ikke installer maler og plugins fra "venstre", ubekreftede ressurser, og hvis du gjør det, sjekk dem nøye for tilstedeværelsen av lenker og utøvende funksjoner til PHP. Etter å ha installert plugins og temaer fra "ulovlige" ressurser, sjekk nettstedet med antivirusprogramvare.
    • Sørg for å ta periodiske sikkerhetskopier og utføre andre.

    1. Pakk den ut i nettstedmappen.
    2. følg linken your_site/fscure/
    3. alt

    Hva kan han gjøre?

    1. Automatisk søk ​​etter virus etter signaturer.
    2. Søk etter en streng i filer
    3. Slette filer
    4. Patch ondsinnet kode ved hjelp av regulære uttrykk

    Skriptet vil ikke gjøre alt arbeidet for deg og krever minimal kunnskap. Det anbefales å ta en sikkerhetskopi av siden før arbeid.

    Hvordan virker det?

    Når den først lanseres, oppretter den en indeks over filer. Filen fscure.lst er i mappen. Viser en liste over filer som inneholder potensielt skadelige signaturer. "Potensielt ondsinnet" betyr at du må avgjøre om det er et virus eller ikke. Listen over signaturer er konfigurert i config.php-filen, konstant SCAN_SIGN. Med standardinnstillinger sjekker ikke skriptet js-filer og inneholder ikke signaturer for dem.

    De vanligste problemene

    1. oppretter ikke fscure.lst-indeksen. Kan skje hvis det ikke er nok rettigheter. Sett 777 på fscure-mappen

    2. 5xx feil. Oftest "504 Gateway Time-out". Skriptet har ikke tid til å behandle og krasjer på grunn av tidsavbrudd. I dette tilfellet er det flere måter å fremskynde arbeidet på. Hastighet avhenger først og fremst av størrelsen på indeksen. Det er i filen fscure.lst. Vanligvis kan en fil på opptil 5 MB behandles i 90 % av tilfellene. Hvis det ikke har tid, kan du redusere "grådigheten" til skriptet ved å forby skanning av *.jpg;*.png;*.css i konfigurasjonen.
    I config.php-filen.

    // skilletegn; define("FILES_EXCLUDE","*.js;*.jpg;*.png;*.css");

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

    Det er ikke noe virus i manuset, og det har det aldri vært. Og (HEX)base64.inject.unclassed.6 er en konstruksjon som "echo base64_decode(" , som ofte oppstår og i seg selv er ganske ufarlig. Men i siste versjon, jeg erstattet denne koden.

    Hva gjør du hvis du ikke kan finne viruset selv?

    Du kan kontakte meg for å få hjelp. Mine priser er beskjedne. Jeg garanterer arbeidet mitt i 6 måneder. Kostnaden for arbeidet er 800 rubler. for 1 nettsted. Hvis det er flere nettsteder på kontoen din, bestemmes prisen individuelt.

    Hvis du klarte å gjøre alt selv, ville jeg vært takknemlig for en økonomisk belønning eller en lenke til siden min.

    Mine krav:
    yandex
    41001151597934

    webmoney
    Z959263622242
    R356304765617
    E172301357329

    Sannheten i livet er at siden kan hackes før eller siden. Etter å ha utnyttet sårbarheten, prøver hackeren å få fotfeste på nettstedet ved å plassere hacker-nettskall og nedlastere i systemkataloger og introdusere bakdører i skriptkoden og CMS-databasen.

    Skannere hjelper til med å oppdage innlastede nettskall, bakdører, phishing-sider, spam-e-poster og andre typer ondsinnede skript - alt de vet og er forhåndslagt til signaturdatabasen for skadelig kode. Noen skannere, som AI-BOLIT, har et sett med heuristiske regler som kan oppdage filer med mistenkelig kode som ofte brukes i ondsinnede skript, eller filer med mistenkelige attributter som kan lastes ned av hackere. Men, dessverre, selv om flere skannere brukes på hostingen, kan det være situasjoner der noen hackerskript forblir uoppdaget, noe som faktisk betyr at angriperen sitter igjen med en "bakdør" og han kan hacke nettstedet og ta over det full kontroll når som helst.

    Moderne skadevare- og hackerskript er vesentlig forskjellige fra de for 4-5 år siden. For tiden kombinerer utviklere av ondsinnet kode tilsløring, kryptering, dekomponering, ekstern lasting av ondsinnet kode og andre triks for å lure antivirusprogramvare. Derfor er sannsynligheten for å gå glipp av ny skadelig programvare mye høyere enn før.

    Hva kan gjøres i dette tilfellet for mer effektivt å oppdage virus på nettstedet og hackerskript på hostingen? Det er nødvendig å bruke en integrert tilnærming: innledende automatisert skanning og ytterligere manuell analyse. Denne artikkelen vil diskutere alternativer for å oppdage skadelig kode uten skannere.

    Først, la oss se på nøyaktig hva du bør se etter under et hack.

  • Hacker-skript.
    Som oftest, ved hacking, er filer som lastes ned nettskjell, bakdører, «opplastingsprogrammer», skript for spam-utsendelser, phishing-sider + skjemabehandlere, døråpninger og hackingmarkørfiler (bilder fra hackergruppens logo, tekstfiler med en "melding" fra hackere osv.)
  • Injeksjoner (kodeinjeksjoner) i eksisterende .
    Den nest mest populære typen hosting av ondsinnet kode og hackerkode er injeksjoner. Mobil- og søkeomdirigeringer kan injiseres i eksisterende .htaccess-filer på nettstedet, bakdører kan injiseres i php/perl-skript, og virale javascript-fragmenter eller omdirigeringer til tredjepartsressurser kan bygges inn i .js- og .html-maler. Injeksjoner er også mulig i mediefiler, for eksempel.jpg eller. Ofte består ondsinnet kode av flere komponenter: selve den ondsinnede koden er lagret i exif-overskriften til jpg-filen, og utføres ved hjelp av et lite kontrollskript, hvis kode ikke ser mistenkelig ut for skanneren.
  • Databaseinjeksjoner.
    Databasen er det tredje målet for en hacker. Her er statiske innlegg mulige, , , , som omdirigerer besøkende til tredjepartsressurser, "spionerer" på dem eller infiserer besøkendes datamaskin/mobilenhet som et resultat av et drive-by-angrep.
    I tillegg, i mange moderne CMS (IPB, vBulletin, modx, etc.) lar malmotorer deg kjøre php kode, og selve malene lagres i databasen, slik at PHP-koden til web-skall og bakdører kan bygges direkte inn i databasen.
  • Injeksjoner i hurtigbuffertjenester.
    Som et resultat av feil eller usikker konfigurasjon av hurtigbuffertjenester, for eksempel memcached, er injeksjoner i bufrede data "on the fly" mulig. I noen tilfeller kan en hacker injisere ondsinnet kode på sidene til et nettsted uten å direkte hacke nettstedet.
  • Injeksjoner/initierte elementer i serversystemkomponenter.
    Hvis en hacker har fått privilegert (root) tilgang til serveren, kan han erstatte elementer av webserveren eller cacheserveren med infiserte. En slik webserver vil på den ene siden gi kontroll over serveren ved hjelp av kontrollkommandoer, og på den annen side fra tid til annen introdusere dynamiske omdirigeringer og ondsinnet kode på sidens sider. Som ved en injeksjon i en hurtigbuffertjeneste, vil nettstedsadministratoren mest sannsynlig ikke kunne oppdage at siden har blitt hacket, siden alle filene og databasen vil være originale. Dette alternativet er det vanskeligste å behandle.
  • Så la oss anta at du allerede har sjekket filene på hostingen og databasedumpen med skannere, men de fant ikke noe, og viruset er fortsatt på siden, eller mobilviderekoblingen fortsetter å fungere når du åpner sider. Hvordan søke videre?

    Manuelt søk

    På unix er det vanskelig å finne et mer verdifullt kommandopar for å finne filer og fragmenter enn find / grep.

    finne. -navn '*.ph*' -mtime -7

    vil finne alle filer som har blitt endret den siste uken. Noen ganger "vrir" hackere endringsdatoen til skript for ikke å oppdage nye skript. Deretter kan du søke etter php/phtml-filer hvis attributter er endret

    finne. -navn '*.ph*' -сtid -7

    Hvis du trenger å finne endringer i et bestemt tidsintervall, kan du bruke samme funn

    finne. -navn '*.ph*' -newermt 2015-01-25 ! -newermt 2015-01-30 -ls

    For å søke i filer er grep uunnværlig. Den kan søke rekursivt gjennom filer etter et spesifisert fragment

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

    Når du hacker en server, er det nyttig å analysere filer som har guid/suid-flagget satt

    finn / -perm -4000 -o -perm -2000

    For å finne ut hvilke skript som kjører og laster hosting-CPU, kan du ringe

    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 bruker hjernen og hendene våre til å analysere filer på hosting
  • Vi går til opplastings-, cache-, tmp-, backup-, logg-, bildekatalogene, der noe er skrevet av skript eller lastet opp av brukere, og skanner innholdet for nye filer med mistenkelige utvidelser. For joomla kan du for eksempel sjekke .php-filene i katalogen images:find ./images -name ‘*.ph*’. Mest sannsynlig, hvis noe blir funnet, vil det være skadelig programvare.
    For WordPress er det fornuftig å sjekke wp-content/uploads-katalogen, backup- og cache-temakatalogene for skript.
  • Ser etter filer med merkelige navn
    For eksempel php, fyi.php, n2fd2.php. Filer kan søkes
    • - ved ikke-standard kombinasjoner av tegn,
    • - tilstedeværelsen av tallene 3,4,5,6,7,8,9 i filnavnet
  • Vi ser etter filer med uvanlige utvidelser
    La oss si at du har et nettsted på WordPress eller for dem vil filer med filtypene .py, .pl, .cgi, .so, .c, .phtml, .php3 ikke være helt vanlige. Hvis noen skript og filer med disse utvidelsene oppdages, vil de mest sannsynlig være hackerverktøy. Prosentandelen av falske deteksjoner er mulig, men den er ikke høy.
  • Vi ser etter filer med ikke-standard attributter eller opprettelsesdato
    Mistanke kan være forårsaket av filer med attributter som er forskjellige fra de som finnes på serveren. For eksempel ble alle .php-skript lastet opp via ftp/sftp og har brukeren, og noen ble laget av brukeren www-data. Det er fornuftig å sjekke de siste. Eller hvis skriptfilens opprettelsesdato er tidligere enn nettstedets opprettelsesdato.
    For å øke hastigheten på søket etter filer med mistenkelige attributter, er det praktisk å bruke Unix find-kommandoen.
  • Vi ser etter døråpninger som bruker et stort antall .html- eller .php-filer
    Hvis det er flere tusen .php- eller .html-filer i katalogen, er dette mest sannsynlig en døråpning.
  • Logger for å hjelpe

    Webserver, e-posttjeneste og FTP-logger kan brukes til å oppdage ondsinnede skript og hackerskript.

    • Korrelasjon av dato og klokkeslett for sending av brevet (som kan finnes fra loggen e-postserver eller tjenesteoverskriften på et spambrev) med forespørsler fra access_log hjelper til med å identifisere metoden for å sende spam eller finne spam-avsenderskriptet.
    • Analyse av FTP xferlog-overføringsloggen lar deg forstå hvilke filer som ble lastet ned på tidspunktet for hacket, hvilke som ble endret og av hvem.
    • I en riktig konfigurert e-postserverlogg eller i tjenesteoverskriften til en spam-e-post, hvis PHP er riktig konfigurert, vil det være et navn eller en fullstendig bane til avsenderskriptet, som hjelper til med å bestemme kilden til spam.
    • Ved å bruke loggene for proaktiv beskyttelse av moderne CMS og plugins, kan du finne ut hvilke angrep som ble utført på nettstedet og om CMS var i stand til å motstå dem.
    • Ved å bruke access_log og error_log kan du analysere handlingene til en hacker hvis du kjenner navnene på skriptene han ringte, IP-adressen eller brukeragenten. Som en siste utvei kan du se POST-forespørsler den dagen siden ble hacket og infisert. Ofte lar analysen deg finne andre hackerskript som ble lastet ned eller allerede var på serveren på tidspunktet for hacket.
    Integritetskontroll

    Det er mye lettere å analysere et hack og se etter ondsinnede skript på et nettsted hvis du tar vare på sikkerheten på forhånd. Prosedyren for integritetssjekk hjelper til med å oppdage endringer i hostingen i tide og bestemme fakta om hacking. En av de enkleste og effektive måter– legg nettstedet under versjonskontrollsystem (git, svn, cvs). Hvis du konfigurerer .gitignore riktig, ser endringskontrollprosessen ut som å kalle opp git status-kommandoen, og å søke etter ondsinnede skript og endrede filer ser ut som git diff.

    Det vil du også alltid ha sikkerhetskopi filer som du kan "rulle tilbake" nettstedet til i løpet av sekunder. Serveradministratorer og avanserte webmastere kan bruke inotify, tripwire, auditd og andre mekanismer for å spore tilgang til filer og kataloger, og overvåke endringer i filsystemet.

    Dessverre er det ikke alltid mulig å konfigurere et versjonskontrollsystem eller tredjepartstjenester på serveren. Ved delt hosting vil det ikke være mulig å installere et versjonskontrollsystem og systemtjenester. Men det spiller ingen rolle, det er ganske mange ferdige løsninger for CMS. Du kan installere en plugin eller et eget skript på nettstedet som vil spore endringer i filer. Noen CMS implementerer allerede effektiv endringsovervåking og en integritetssjekkmekanisme (for eksempel Bitrix, DLE). Som en siste utvei, hvis hostingen har ssh, kan du opprette en referansebesetning filsystem team

    Kampanje "2 for prisen av 1"

    Kampanjen er gyldig ut måneden.

    Når du aktiverer tjenesten "Nettsted under overvåking" for en nettside, kobles den andre på samme konto til gratis. Påfølgende nettsteder på kontoen - 1500 rubler per måned for hvert nettsted.

    
    Topp