Cum să eliminați manual codul rău intenționat găsit. Cod rău intenționat WordPress: Cum să scapi de amenințările nedorite? Instalarea antivirusului AI-Bolit

Verificarea periodică a site-ului pentru disponibilitate virusuri nocive necesar, aceasta este prima poruncă a oricărui webmaster care se respectă. Chiar dacă utilizați o temă curată Twenty Eleven, nu este un fapt că de-a lungul timpului nici nu s-a infectat. Acest fenomen poate apărea (și apare cel mai adesea) datorită faptului că Motor WordPress destinat inițial publicațiilor online. Deci nu strică niciodată să verifici din nou și să faci o copie a site-ului și a bazei de date.

De exemplu, am făcut (după ceva timp, desigur) o concluzie pentru mine - aveți nevoie doar de un hoster bun, iar problemele dvs. cu backup-ul vor dispărea de la sine. Nu trebuie să fac acum copii de rezervă ale bazei de date sau ale site-ului web - hosterul face totul pentru mine și în mod automat. În orice moment, dacă doriți, puteți comanda o copie a oricărei secțiuni a blogului dvs. (și nu numai), puteți descărca această copie sau restaura blogul direct din panoul de control. Adică, nu trebuie să descarc o copie de rezervă, totul se întâmplă automat - backup, restaurare etc. Acest lucru este convenabil pentru că pot urmări, nu doar zilnic, ci din oră în oră, când a apărut un virus pe blogul meu și, în consecință, pot lua măsuri pentru a-l elimina.

Voi începe cu vestea bună - cel puțin două plugin-uri pe care le-am folosit dau rezultate bune în detectarea și localizarea codului rău intenționat. Acestea sunt pluginuri AntiVirus și Exploit Scanner. Nu o să crezi cât de mult cod dăunător este pe blogul tău! Dar nu luați toate informațiile rezultate după verificare ca dogme - multe dintre liniile pe care aceste plugin-uri le detectează nu înseamnă de fapt nimic rău. Plugin-ul pune doar la îndoială câteva rânduri, asta-i tot. Pentru a vă asigura de acest lucru, verificați manual acele fragmente pe care pluginul le-a identificat ca fiind rău intenționate. Deci, la verificarea cu pluginul AntiVirus, sa dovedit că chiar și un simplu apel la funcția get_cache_file () este deja considerat suspect de către plugin. Deci, toate rezultatele verificărilor vor trebui urmărite manual. Dar acesta, de exemplu, este o legătură cu adevărat infectată și trebuie eliminată:

De unde știi dacă este un virus sau cum ar trebui să fie? Totul este foarte simplu - comparați șablonul dvs. curat (dacă aveți unul) și comparați-l (fișier cu fișier) cu cel care este instalat și a suferit deja unele modificări. Nu este necesar să faci o comparație la propriu, doar caută pentru a vedea dacă a ta are șablon curat linia pe care pluginul a evidențiat-o. Dacă există, faceți clic pe butonul „Acesta nu este un virus”, iar această linie nu va fi luată în considerare la următoarea scanare.

Și iată un exemplu al celui de-al doilea plugin pe care l-am testat - Exploit Scanner

După cum puteți vedea, totul este mult mai neglijat aici. Pentru mine, acest rezultat a fost șocant. Dar asta nu este tot. Pluginul are o funcție numită verificare. Deci, dacă îl porniți, se dovedește că blogul ar trebui să fie format din text și, cel mult, un cuplu Tabelele CSS. Deci, mi se pare că autorul pluginului a exagerat în mod clar cu securitatea aici. Este bine că pluginul arată pur și simplu fragmente suspectate infectate și nu le curăță.

După ce am analizat toate cele selectate galben linii, puteți detecta cu ușurință malware ( cod rău intenționat), ei bine, decideți singur ce să faceți cu el în continuare. Metoda de curățare este în continuare aceeași - comparați codul selectat cu o copie de rezervă a site-ului (vezi) și, dacă găsiți discrepanțe, aflați dacă ați făcut-o singur, sau cineva a făcut-o pentru dvs., ceea ce înseamnă că acest lucru nu mai este bun și se poate dovedi a fi virus. Chiar și dezvoltatorii WordPress recomandă să vă verificați site-ul pentru cod rău intenționat cu acest plugin. Dar există așa ceva inserții inofensive, de exemplu, în corpul unui iframe, pe care pluginul îl poate identifica și ca cod infectat. Dar, în realitate, fără aceste rânduri, această zonă a blogului tău nu va funcționa corect.

Cum poate malware-ul să intre chiar și în fișierele blog și ce este prin definiție? Cuvântul malware înseamnă literalmente - răutăcios software , din limba engleză software rău intenționat. Acesta este orice software care poate fi folosit pentru acces neautorizat la site și la conținutul acestuia. Probabil vă imaginați că pentru un hacker obișnuit, piratarea unui site web nu va fi dificilă, mai ales după înregistrare. După aceasta, puteți modifica conținutul blogului după cum doriți - ar fi educațional.

Malware rău intenționat poate fi, de asemenea, introdus în pluginurile din care instalați sursa necunoscuta, și în scripturi, pe care le iei și uneori fără să verifici, dar având încredere în autor. Cel mai inofensiv malware este un link către autorul oricărui modul pe care l-ați instalat pe site. Și dacă autorul însuși nu v-a avertizat că există o astfel de legătură, atunci acesta este un virus pur.

Da, l-am instalat pe un blog de testare subiect nou, iar după ștergerea unui link inofensiv către un fel de club pentru bărbați din subsolul site-ului, acesta a încetat deloc să se mai deschidă, iar inscripția a apărut pe pagina principală - „Nu aveți dreptul de a șterge linkurile”. Poftim tema liberă. Puteți citi despre cum să rupeți astfel de legături din stânga.

Baza de date poate fi folosită și pentru a rula coduri care conțin viruși. Link-urile spam sunt, de asemenea, foarte des adăugate la postări sau comentarii. Astfel de link-uri sunt de obicei ascunse folosind CSS, astfel încât un administrator neexperimentat să nu le vadă, dar sistem de căutare le distinge imediat. Desigur, aici intră în joc orice antispam, de exemplu, același care este licențiat, testat și verificat de multe ori. Un hacker poate descărca fișiere cu extensii de fișiere imagine și le poate adăuga la codul dvs pluginuri activate. Prin urmare, chiar dacă fișierul nu are extensie php, codul din acel fișier poate fi executat.

Există un alt instrument simplu cu care am început să fac cunoștință cu malware - pluginul Theme Authenticity Checker (TAC). Acesta este un instrument ușor și destul de eficient, dar vă verifică doar subiectele, chiar și cele inactive. Nu atinge restul directoarelor și acesta este dezavantajul său. Asta e ceea ce verific subiect actual cu acest plugin:

Două avertismente în firul activ și nimic mai mult. Nu există cod rău intenționat. Apropo, acestea sunt link-urile pe care le-am introdus eu. Sfaturi Google— pentru a îmbunătăți calitatea fragmentului (afișarea datelor personale, a adresei organizației etc.). Dar aceasta este doar verificarea fișierelor teme și va trebui să aflați ce se face în alte directoare fie folosind alte plugin-uri, fie servicii online. De exemplu, un serviciu (este cu adevărat de încredere) precum Yandex Webmaster sau unul similar la Google. Au funcția de a verifica orice resursă web pentru prezența incluziunilor rău intenționate și o fac eficient. Dar dacă acest lucru nu este suficient pentru dvs., atunci comparați rezultatele cu rezultatele altor servicii și trageți concluzii.

Din anumite motive, vreau să am încredere în Yandex, nu în pluginuri. O altă resursă bună este http://2ip.ru/site-virus-scanner/. După ce am verificat unul dintre blogurile mele, iată ce am găsit:

Aici puteți verifica și fişiere separate pentru prezența unui cod rău intenționat dacă aveți astfel de îndoieli. În general, serviciul nu este rău.

Din tot ce s-a spus, aș trage următoarele concluzii:

1. Pentru a preveni apariția codului rău intenționat, trebuie în primul rând să utilizați servicii dovedite pentru descărcarea fișierelor - pluginuri, teme etc.

2. Faceți în mod regulat copii de rezervă ale tot ceea ce conține site-ul - baze de date, conținut, panou de administrare, fișiere descărcate fișiere terță parte inclusiv.

3. Profită de actualizările oferite de WordPress. Cel puțin nu conțin viruși, deși nu sunt întotdeauna justificați funcțional. Dar prin actualizare, eliminați astfel orice viruși care ar putea fi prezenți.

4. Ștergeți fără regret temele, pluginurile, imaginile și fișierele neutilizate - aceasta este o altă cale de evadare pentru malware despre care s-ar putea să nu ghiciți niciodată.

5. Protejați-vă corect accesările FTP prin parolă, conectați-vă la PhpAdmin, panoul de administrare și, în general, acolo unde nimeni în afară de dvs. ar trebui să aibă acces.

6. Încercați (chiar dacă dorința dvs. este la fel de mare ca cerul) să nu schimbați sau să înlocuiți fișierele de bază WordPress - dezvoltatorii știu mai bine ce ar trebui să funcționeze și cum.

7. După detectarea și eliminarea virușilor, schimbați toate parolele. Cred că veți avea o mare dorință de a face o parolă de 148 de caractere în registre diferite și cu caractere speciale. Dar nu te lăsa prea luat parole complexe, s-ar putea să-l pierzi, iar apoi va trebui să restabiliți totul, ceea ce nu este foarte plăcut.

Toate aceste metode și componente pe care le-am descris și care vă vor ajuta să scăpați de viruși sunt, desigur, gratuite, desigur, aproape de casă și, bineînțeles, nu oferă o garanție de 100% că site-ul dvs. va fi curățat de malware. inserții. Prin urmare, dacă ești deja preocupat de curățarea blogului tău, atunci este mai bine să contactezi profesioniști, de exemplu, serviciul Sucuri (http://sucuri.net/). Aici site-ul dvs. va fi atent monitorizat și oferit recomandări practice, care vă va fi trimis prin scrisoare, iar dacă nu doriți să curățați singur site-ul, atunci specialiștii vă stau la dispoziție care vor face totul în cel mai bun mod posibil în decurs de 4 ore:

Fiecare webmaster care descoperă cod rău intenționat pe site-ul său primește o mulțime de experiențe nu tocmai plăcute. Proprietarul site-ului imediat, în panică, încearcă să găsească și să distrugă virusul și să înțeleagă cum acest lucru urât ar putea ajunge pe site-ul său. Dar, după cum arată practica, găsirea unui cod rău intenționat pe un site web nu este atât de ușoară. La urma urmei, un virus poate fi înregistrat într-unul sau mai multe fișiere, de la sumă uriașă din care este format site-ul, fie el un motor care rulează pe WordPress sau un site obișnuit pe html.

Ieri, în timp ce îmi verificam e-mailul, am găsit un e-mail de la Google care spunea că vizita anumite pagini site-ul meu poate duce la infectarea computerelor utilizatorilor cu programe malware. Acum, utilizatorilor care accesează aceste pagini prin link-uri în rezultatele căutării Google.ru li se afișează o pagină de avertizare. Acest site nu a fost adăugat la panoul meu webmasteri Google, așa că am fost anunțat prin poștă. Mai aveam câteva site-uri în panoul pentru webmasteri; când am fost acolo, am fost îngrozit să văd un avertisment despre cod rău intenționat pe încă două dintre site-urile mele.
Drept urmare, pe trei dintre site-urile mele s-a instalat un cod rău intenționat, pe care a trebuit să le găsesc și să le distrug. Unul dintre site-uri rula pe WordPress, celelalte două constau în pagini PHP obișnuite.

Este de remarcat faptul că Google a reacționat mult mai rapid decât Yandex pentru prezența unui cod rău intenționat. În panoul pentru webmasteri Yandex, nu a apărut un avertisment despre prezența unui virus pe site. Din fericire, în câteva ore am reușit să găsesc acest virus nefericit.

De regulă, cel mai adesea site-urile sunt infectate de așa-numitul virus iframe. În esență, acest virus constă din cod... . Virusul fură toate parolele de la Comandant total sau alt client ftp. În cazul meu, s-a întâmplat același lucru; codul iframe a fost scris în câteva zeci de fișiere de pe site-ul meu. Pe site, care rula pe WordPress, codul rău intenționat a reușit să se instaleze doar în footer.php.

Și așa, cum să găsiți cod rău intenționat dacă descoperiți că site-ul dvs. este infectat:

1. Accesați panoul de control al găzduirii și schimbați-vă parola. Dacă aveți mai multe site-uri, atunci facem acest lucru cu toate site-urile noastre.

2. Schimbați și ștergeți parolele din clientul ftp. Nu mai stocăm parolele în clienții ftp; le introducem întotdeauna manual.

3. Puteți merge la găzduire prin ftp și puteți vedea ce s-a schimbat în fișierele dvs. Sortați fișierele după data ultimei modificări. Acele fișiere care sunt infectate trebuie să aibă cea mai recentă și aceeași dată. Deschideți aceste fișiere și căutați codul iframe, de obicei acest cod se află la sfârșit. Practic, codul rău intenționat este scris în următoarele fișiere: index.php, index.html și fișiere cu extensia .js. Adesea, această infecție trăiește între etichete... .
Pentru site-urile auto-scrise, uitați-vă cu mare atenție la toate fișierele și folderele de scripturi; virusul este adesea scris acolo. De asemenea, habitatul preferat al acestui virus este in codurile de contra pentru site, si in codurile de publicitate.

4. Verificați fișierul .htaccess pentru cod suspect. Uneori, cod rău intenționat pătrunde în acest fișier. De obicei, există mai multe directoare în fișierele motor în care poate fi localizat fișierul .htaccess. Verificați toate aceste fișiere și asigurați-vă că codul este „curat”.

În ceea ce privește fișierele WordPress sau alt CMS, de regulă, orice CMS este format din multe fișiere și foldere și este foarte dificil să găsești cod rău intenționat în ele. De exemplu, pentru WordPress pot recomanda pluginul TAC. Acest plugin verifică fișierele din toate temele din folderul teme pentru codul terță parte. Dacă TAC găsește cod nedorit, va afișa calea către acest fișier. Astfel, este posibil să se calculeze virusul de mascare.
Descărcați pluginul TAC: wordpress.org

În general, ar trebui să aveți în vedere în mod constant toate acțiunile pe care le-ați efectuat cu fișierele site-ului dvs. Amintiți-vă ce a fost modificat sau adăugat la acest sau acel cod.

Odată ce găsiți și eliminați codul rău intenționat, nu strica să verificați computerul pentru viruși.
Și dacă site-ul dvs. a fost marcat de Google sau Yandx ca fiind infectat, atunci trebuie să trimiteți o solicitare de reverificare prin panoul pentru webmasteri. De regulă, motoarele de căutare ar trebui să elimine toate restricțiile de pe site-ul dvs. în termen de 24 de ore. Nu a durat mult până când Google a procesat cererea mea de reverificare și, după câteva ore, toate restricțiile au fost eliminate de pe site-urile mele.


Adevărul vieții este că site-ul poate fi spart mai devreme sau mai târziu. După ce a exploatat cu succes vulnerabilitatea, hackerul încearcă să pună un punct pe site prin postare directoarele de sistem piratarea shell-urilor web, a aplicațiilor de descărcare și introducerea ușilor din spate în codul de script și baza de date CMS.

Pentru a detecta codul rău intenționat în fișiere și baze de date, există soluții specializate - antivirusuri și scanere pentru găzduire. Nu sunt multe dintre ele; cele populare sunt AI-BOLIT, MalDet (Linux Malware Detector) și ClamAv.

Scanerele ajută la detectarea shell-urilor web încărcate, ușile din spate, paginile de phishing, e-mailurile de spam și alte tipuri de scripturi rău intenționate - tot ceea ce știu și este pre-adăugat la baza de date de semnături de coduri rău intenționate. Unele scanere, cum ar fi AI-BOLIT, au un set de reguli euristice care pot detecta fișiere cu cod suspect, care este adesea folosit în scripturi rău intenționate, sau fișiere cu atribute suspecte care pot fi descărcate de hackeri. Dar, din păcate, chiar dacă pe găzduire sunt folosite mai multe scanere, pot exista situații în care unele scripturi de hacker rămân nedetectate, ceea ce înseamnă de fapt că atacatorul rămâne cu o „ușă din spate” și poate sparge site-ul și îl poate prelua. control total oricând.

Scripturile moderne de malware și hacker sunt semnificativ diferite de cele de acum 4-5 ani. În prezent, dezvoltatorii de coduri rău intenționate combină ofuscarea, criptarea, descompunerea, încărcarea externă a codului rău intenționat și alte trucuri pentru a păcăli software-ul antivirus. Prin urmare, probabilitatea de a lipsi noile programe malware este mult mai mare decât înainte.

Ce se poate face în în acest caz, pentru o detectare mai eficientă a virușilor pe site și a scripturilor hacker pe găzduire? Necesar de folosit O abordare complexă: scanare automată inițială și analiză manuală ulterioară. Acest articol va discuta opțiunile pentru detectarea codului rău intenționat fără scanere.

Mai întâi, să ne uităm la ce anume ar trebui să cauți în timpul unui hack.

  • Scripturi hacker.
    Cel mai adesea, la piratare, fișierele care sunt descărcate sunt shell-uri web, backdoors, „uploaders”, scripturi pentru spam-uri, pagini de phishing + handler de formulare, uși și fișiere marcatoare de hacking (imagini din sigla grupului de hackeri, fișiere text cu un „mesaj” de la hackeri etc.)
  • Injecții (injecții de cod) în .
    Al doilea cel mai popular tip de găzduire de cod rău intenționat și hacker este injecțiile. ÎN fișierele existente website.htaccess poate injecta redirecționări mobile și de căutare, poate injecta backdoors în scripturile php/perl și poate încorpora fragmente virale javascript sau redirecționări către resurse terțe în șabloane .js și .html. Injecțiile sunt posibile și în fișierele media, de exemplu.jpg sau. Adesea, codul rău intenționat constă din mai multe componente: codul rău intenționat în sine este stocat în antetul exif fișier jpg, dar este executat folosind un mic script de control, al cărui cod nu pare suspect pentru scaner.
  • Injecții în baze de date.
    Baza de date este a treia țintă pentru un hacker. Aici, sunt posibile inserții statice, , , , care redirecționează vizitatorii către resurse terțe, îi „spionează” sau infectează computerul/dispozitivul mobil al vizitatorului ca urmare a unui atac de tip drive-by.
    În plus, în multe CMS moderne (IPB, vBulletin, modx, etc.) motoarele de șablon vă permit să executați cod php, iar șabloanele în sine sunt stocate în baza de date, astfel încât codul PHP al shell-urilor web și al ușilor din spate poate fi integrat direct în baza de date.
  • Injecții în serviciile de caching.
    Ca rezultat al configurării incorecte sau nesigure a serviciilor de cache, de exemplu, memcached, sunt posibile injecții în datele din cache „din mers”. În unele cazuri, un hacker poate injecta cod rău intenționat în paginile unui site fără a pirata direct site-ul.
  • Injecții/elemente inițiate în componentele sistemului Server.
    Dacă un hacker a obținut acces privilegiat (rădăcină) la server, el poate înlocui elemente ale serverului web sau ale serverului de cache cu unele infectate. Un astfel de server web va oferi, pe de o parte, controlul asupra serverului folosind comenzi de control și, pe de altă parte, va introduce din când în când redirecționări dinamice și cod rău intenționat în paginile site-ului. Ca și în cazul unei injecții într-un serviciu de cache, administratorul site-ului nu va putea detecta, cel mai probabil, faptul că site-ul a fost piratat, deoarece toate fișierele și baza de date vor fi originale. Această opțiune este cea mai dificil de tratat.
  • Deci, să presupunem că ați verificat deja fișierele de pe găzduire și dump-ul bazei de date cu scanere, dar nu au găsit nimic, iar virusul este încă pe pagină sau redirecționare mobilă continuă să funcționeze la deschiderea paginilor. Cum să caut mai departe?

    Căutare manuală

    Pe Unix, este greu să găsești o pereche de comenzi mai valoroasă pentru a găsi fișiere și fragmente decât find/grep.

    găsi . -nume ‘*.ph*’ -mtime -7

    va găsi toate fișierele care au fost modificate în ultima săptămână. Uneori, hackerii „răstoresc” data modificării scripturilor pentru a nu detecta scripturi noi. Apoi puteți căuta fișiere php/phtml ale căror atribute s-au schimbat

    găsi . -nume ‘*.ph*’ -сtime -7

    Dacă trebuie să găsiți modificări într-un anumit interval de timp, puteți utiliza aceeași căutare

    găsi . -nume ‘*.ph*’ -newermt 25-01-2015 ! -newermt 2015-01-30 -ls

    Pentru a căuta fișiere, grep este indispensabil. Poate căuta recursiv prin fișiere un fragment specificat

    grep -ril „stummann.net/steffen/google-analytics/jquery-1.6.5.min.js” *

    Când piratați un server, este util să analizați fișierele care au marcajul guid/suid setat

    găsi / -perm -4000 -o -perm -2000

    Pentru a determina în ce scripturi rulează acest moment si incarca Gazduire procesor, poti suna

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

    Ne folosim creierul și mâinile pentru a analiza fișierele de pe găzduire
  • Mergem la directoarele de încărcare, cache, tmp, backup, jurnal, imagini, în care ceva este scris prin scripturi sau încărcat de utilizatori și scanăm conținutul pentru fișiere noi cu extensii suspecte. De exemplu, pentru joomla puteți verifica fișierele .php din directorul images:find ./images -name ‘*.ph*’ Cel mai probabil, dacă se găsește ceva, va fi malware.
    Pentru WordPress, este logic să verificați directorul wp-content/uploads, directoarele de teme de rezervă și cache pentru scripturi.
  • Caut fișiere cu nume ciudate
    De exemplu, php, fyi.php, n2fd2.php. Fișierele pot fi căutate
    • prin combinații non-standard de caractere,
    • prezența numerelor 3,4,5,6,7,8,9 în numele fișierelor
  • Căutăm fișiere cu extensii neobișnuite
    Să presupunem că aveți un site web pe WordPress sau pentru ele fișierele cu extensii .py, .pl, .cgi, .so, .c, .phtml, .php3 nu vor fi chiar obișnuite. Dacă sunt detectate scripturi și fișiere cu aceste extensii, cel mai probabil acestea vor fi instrumente de hacker. Procentul de detecții false este posibil, dar nu este mare.
  • Căutăm fișiere cu atribute non-standard sau cu data creării
    Suspiciunea poate fi cauzată de fișiere cu atribute care diferă de cele existente pe server. De exemplu, toate scripturile .php au fost descărcate prin ftp/sftp și au utilizator utilizator, iar unele sunt create de utilizatorul www-data. Este logic să le verifici pe cele mai recente. Sau dacă data creării fișierului script este anterioară datei creării site-ului.
    Pentru a accelera căutarea fișierelor cu atribute suspecte, este convenabil de utilizat comanda unix găsi.
  • Căutăm uși pe lângă un numar mare fișiere .html sau .php
    Dacă există câteva mii de fișiere .php sau .html în director, acesta este cel mai probabil o ușă.
  • Jurnalele pentru a ajuta

    jurnalele serverului web, serviciu poștal iar FTP poate fi folosit pentru a detecta scripturi rău intenționate și hacker.

    • Corelarea datei și orei trimiterii unei scrisori (care poate fi găsită din jurnalul serverului de e-mail sau din antetul serviciului unei scrisori de spam) cu solicitările din access_log ajută la identificarea metodei de trimitere a spamului sau la găsirea scriptului expeditorului spamului.
    • Analiza jurnalului de transfer FTP xferlog vă permite să înțelegeți ce fișiere au fost descărcate în momentul hackului, care au fost modificate și de către cine.
    • Într-un log al serverului de e-mail configurat corect sau în antetul serviciului e-mailuri spam setarea corectă PHP va fi numele sau calea completă către scriptul de trimitere, ceea ce ajută la determinarea sursei spam-ului.
    • Folosind jurnalele de protecție proactivă ale CMS-urilor și pluginurilor moderne, puteți determina ce atacuri au fost efectuate pe site și dacă CMS-ul a fost capabil să le reziste.
    • Folosind access_log și error_log, puteți analiza acțiunile unui hacker dacă cunoașteți numele scripturilor pe care le-a apelat, adresa IP sau Agent utilizator. Ca ultimă soluție, puteți vizualiza solicitări POSTîn ziua în care site-ul a fost spart și infectat. Adesea, analiza vă permite să găsiți și alte scripturi hacker care au fost descărcate sau erau deja pe server în momentul hackului.
    Controlul integrității

    Este mult mai ușor să analizezi un hack și să cauți scripturi rău intenționate pe un site web dacă te ocupi în avans de securitatea acestuia. Procedura de verificare a integrității ajută la detectarea în timp util a modificărilor în găzduire și la determinarea faptului de hacking. Una dintre cele mai simple și moduri eficiente– pune site-ul sub sistem de control al versiunilor (git, svn, cvs). Dacă configurați corect .gitignore, procesul de control al modificării arată ca apelarea comenzii git status, iar căutarea de scripturi rău intenționate și fișiere modificate arată ca git diff.

    De asemenea, veți avea întotdeauna o copie de rezervă a fișierelor dvs., la care puteți „retroduce” site-ul în câteva secunde. Administratorii de server și webmasterii avansați pot utiliza inotify, tripwire, auditd și alte mecanisme pentru a urmări accesul la fișiere și directoare și pentru a monitoriza modificările din sistemul de fișiere.

    Din păcate, nu este întotdeauna posibil să se configureze un sistem de control al versiunilor sau servicii terților pe server. În cazul găzduirii partajate, nu va fi posibilă instalarea unui sistem de control al versiunilor și servicii de sistem. Dar nu contează, sunt multe soluții gata făcute pentru CMS. Puteți instala un plugin sau un script separat pe site care va urmări modificările în fișiere. Unele CMS implementează deja o monitorizare eficientă a schimbărilor și un mecanism de verificare a integrității (De exemplu, Bitrix, DLE). Ca ultimă soluție, dacă găzduirea are ssh, puteți crea un instantaneu de referință al sistemului de fișiere cu comanda

    ls -lahR > original_file.txt

    iar dacă apar probleme, creați un nou instantaneu într-un alt fișier, apoi comparați-le în WinDiff, AraxisMerge Tool sau BeyondCompare.

    Epilog

    În cele mai multe cazuri, dezvoltatorii de software antivirus și scanerele nu țin pasul cu dezvoltatorii de coduri rău intenționate, așa că atunci când diagnosticați și tratați site-uri, nu vă puteți baza doar pe soluții softwareși scenarii. Folosind o abordare euristică, instrumente bogate sistem de operareși capabilitățile CMS-ului, puteți găsi cod rău intenționat pe care antivirusurile și scanerele nu l-au putut detecta. Utilizarea analizei manuale face ca procesul de tratare a site-ului web să fie mai bun și mai eficient.

    WordPress este cel mai popular motor pentru crearea diferitelor site-uri web și bloguri de informații. Securitatea site-ului dvs. este mai mult decât securitatea datelor dvs. Acest lucru este mult mai important, deoarece este și siguranța tuturor utilizatorilor care citesc și au încredere în resursa dvs. De aceea este atât de important ca site-ul să nu fie infectat cu viruși sau orice alt cod rău intenționat.

    Vom analiza cum să protejăm WordPress de hacking într-unul dintre articolele urmatoare, iar acum vreau să vă spun cum să verificați un site WordPress pentru viruși și cod rău intenționat pentru a vă asigura că totul este în siguranță.

    Prima opțiune care vă vine în minte este că ați fost piratat de hackeri și ați construit ușile din spate în codul site-ului dvs. pentru a putea trimite spam, pune link-uri și alte lucruri rele. Acest lucru se întâmplă uneori, dar acesta este un caz destul de rar dacă actualizați software-ul la timp.

    Sunt mii teme gratuite pentru WordPress și diverse plugin-uri și poate exista deja o amenințare aici. Una este când descărcați un șablon de pe site-ul WordPress și alta este când îl găsiți pe site-ul din stânga. Dezvoltatorii fără scrupule pot încorpora diferite coduri rău intenționate în produsele lor. Riscul este și mai mare dacă descărcați gratuit șabloane premium, unde hackerii, fără a risca nimic, pot adăuga un fel de gaură de securitate prin care apoi să pătrundă și să facă ceea ce au nevoie. Acesta este motivul pentru care verificarea unui site WordPress pentru viruși este atât de importantă.

    Verificarea unui site WordPress pentru viruși

    Primul lucru pe care trebuie să-l căutați atunci când verificați un site pentru viruși este Pluginuri WordPress. Rapid și ușor, puteți să vă scanați site-ul și să găsiți zone suspecte de cod cărora merită să le acordați atenție, indiferent dacă acestea sunt în tema, plugin-ul sau nucleul Wodpress. Să ne uităm la câteva dintre cele mai populare plugin-uri:

    1.TOC

    Acest plugin foarte simplu verifică toate temele instalate pe site-ul tău pentru a vedea dacă conțin cod rău intenționat. Plugin-ul detectează legăturile ascunse criptate folosind inserarea codului base64 și, de asemenea, afișează informații detaliate despre problemele găsite. Cel mai adesea, bucățile de cod găsite nu sunt viruși, dar pot fi potențial periculoase, așa că ar trebui să le acordați atenție.

    Deschideți „Aspect” -> „TAC”, apoi așteptați până când toate temele sunt bifate.

    2. Scanner VIP

    Foarte similar cu scanerul TOC pentru subiecte, dar scoate mai multe rezultate informatii detaliate. Aceleași capacități de detectare a legăturilor cod ascunsși alte inserții rău intenționate. Doar deschideți elementul VIP Scanner din secțiunea de instrumente și analizați rezultatul.

    Poate fi suficient pentru a elimina fișiere suplimentare de exemplu desktop.ini. Sau trebuie să vă uitați mai detaliat la ceea ce se întâmplă în fișierele care utilizează base64.

    3. Anti-Malware de la GOTMLS.NET

    Acest plugin vă permite nu numai să scanați temele și nucleul site-ului pentru viruși, ci și să protejați site-ul împotriva parolelor de forță brută și a diferitelor atacuri XSS, SQLInj. Căutarea se efectuează pe baza semnăturilor și vulnerabilităților cunoscute. Unele vulnerabilități pot fi remediate pe site. Pentru a începe scanarea fișierelor, deschideți „Anti-Malvare” în meniul lateralși faceți clic pe „Run Scan”:

    Înainte de a putea executa o scanare, trebuie să vă actualizați bazele de date de semnături.

    4. Wordfence

    Acesta este unul dintre cele mai populare plugin-uri pentru Protecție WordPressși scanarea pentru cod rău intenționat. În afară de scaner, care poate găsi majoritatea marcajelor în Cod WordPress, există o protecție constantă împotriva tipuri variate atacuri și parola brute force. În timpul căutării, pluginul găsește posibile probleme cu diverse plugin-uri și teme, raportează necesitatea de a actualiza WordPress.

    Deschideți fila „WPDefence” în meniul lateral, apoi accesați fila „Scanare” și faceți clic pe „Start Scan”:

    Scanarea poate dura anumit timp, dar la finalizare veți vedea un raport detaliat al problemelor găsite.

    5. AntiVirus

    Acesta este un alt plugin simplu care va scana șablonul site-ului dvs. pentru cod rău intenționat. Dezavantajul este că doar șablonul curent este scanat, dar informațiile sunt afișate suficient de detaliat. Veți vedea toate funcțiile periculoase care sunt în temă și apoi puteți analiza în detaliu dacă prezintă vreun pericol. Găsiți elementul „AntiVirus” în setări, apoi faceți clic pe „Scanați șabloanele de teme acum”:

    6. Verificator de integritate

    De asemenea, este recomandabil să verificați integritatea Fișiere WordPress, în cazul în care virusul s-a înregistrat deja undeva. Puteți utiliza pluginul Integrity Checker pentru aceasta. Verifică toate fișierele de bază, plugin și șablon pentru modificări. La sfârșitul scanării, veți vedea informații despre fișierele modificate.

    Servicii on-line

    Există, de asemenea, mai multe servicii online care vă permit să verificați un site WordPress pentru viruși sau să verificați doar șablonul. Aici sunt câțiva dintre ei:

    themecheck.org - descărcați arhiva temei și puteți vedea toate avertismentele despre posibilele funcții rău intenționate care sunt utilizate în ea. Puteți vizualiza nu numai informații despre tema dvs., ci și despre alte teme încărcate de alți utilizatori, precum și versiuni diferite Subiecte. Orice plugin-uri găsesc poate fi găsit pe acest site. Examinare teme wordpress este de asemenea foarte important.

    virustotal.com este o resursă binecunoscută unde vă puteți verifica site-ul web sau fișierul șablon pentru viruși.

    ReScan.pro - scanarea unui site WordPress pentru viruși folosind acest serviciu este gratuită, se efectuează analize statice și dinamice pentru a detecta posibile redirecționări, scanerul deschide paginile site-ului. Verifică site-ul cu diverse liste negre.

    sitecheck.sucuri.net este un serviciu simplu de scanare a site-urilor și a subiectelor pentru viruși. Există un plugin pentru WordPress. Detectează link-uri și scripturi periculoase.

    Verificare manuală

    Nimic nu poate fi mai bun decât verificare manuală. Linux are acest minunat utilitar grep care vă permite să căutați apariții de șiruri arbitrare într-un folder cu fișiere. Rămâne să înțelegem ce vom căuta:

    eval - această funcție vă permite să executați cod PHP arbitrar, nu este folosit de produse care se respectă; dacă unul dintre pluginuri sau o temă folosește această funcție, există aproape 100% probabilitate ca acesta să conțină un virus;

    • base64_decode - funcțiile de criptare pot fi folosite împreună cu eval pentru a ascunde codul rău intenționat, dar pot fi folosite și în scopuri pașnice, așa că aveți grijă;
    • sha1 este o altă metodă de criptare a codului rău intenționat;
    • gzinflate - funcție de compresie, aceleași obiective, împreună cu eval, de exemplu, gzinflate(base64_decode(code);
    • strrev - inversează șirul nu înainte, deoarece o opțiune poate fi folosită pentru criptarea primitivă;
    • print - scoate informatii in browser, impreuna cu gzinflate sau base64_decode este periculos;
    • file_put_contents - WordPress în sine sau pluginurile pot crea în continuare fișiere în sistemul de fișiere, dar dacă tema face acest lucru, atunci ar trebui să fiți atenți și să verificați de ce face acest lucru, deoarece pot fi instalați viruși;
    • file_get_contents - folosit în cele mai multe cazuri în scopuri pașnice, dar poate fi folosit pentru a descărca cod rău intenționat sau pentru a citi informații din fișiere;
    • curl - aceeași poveste;
    • fopen - deschide un fișier pentru scriere, nu se știe niciodată în ce scop;
    • sistem - funcția execută comanda în sistem Linux, dacă o temă, plugin sau wordpress în sine face acest lucru, cel mai probabil există un virus;
    • link simbolic - creează legături simbolice în sistem, poate că virusul încearcă să facă cea principală Sistemul de fișiere accesibil din exterior;
    • copiere - copiază un fișier dintr-o locație în alta;
    • getcwd - returnează numele directorului de lucru curent;
    • cwd - modifică folderul de lucru curent;
    • ini_get - obține informații despre setări PHP, mai des în scopuri pașnice, dar nu se știe niciodată;
    • error_reporting(0) - dezactivează afișarea oricăror mesaje de eroare;
    • window.top.location.href - funcția javascript, folosit pentru redirecționări către alte pagini;
    • piratat - așa că, pentru orice eventualitate, verificăm, brusc, hackerul însuși a decis să ne spună.

    Puteți înlocui fiecare cuvânt individual într-o comandă ca aceasta:

    grep -R "piratat" /var/www/path/to/files/wordpress/wp-content/

    Sau utilizați un script simplu care va căuta toate cuvintele simultan:

    values="base64_decode(
    eval(base64_decode
    gzinflate(base64_decode(
    getcwd();
    strrev(
    chr(ord(
    cwd
    ini_get
    window.top.location.href
    copie(
    eval(
    sistem(
    link simbolic(
    error_reporting(0)
    imprimare
    file_get_contents(
    file_put_contents(
    fopen(
    tocat"

    cd /var/www/path/to/files/wordpress/wp-content/
    $ fgrep -nr --include \*.php „$valori” *

    Cod rău intenționat ajunge pe site din neglijență sau intenție rău intenționată. Scopurile codului rău intenționat variază, dar în esență provoacă daune sau interferează operatie normala site-ul. Pentru a elimina codul rău intenționat de pe WordPress, trebuie mai întâi să îl găsiți.

    Ce este codul rău intenționat pe un site WordPress?

    De aspect, cel mai adesea, codul rău intenționat este un set de litere și simboluri ale alfabetului latin. De fapt, acesta este un cod criptat prin care se realizează cutare sau cutare acțiune. Acțiunile pot fi foarte diferite, de exemplu, noile postări sunt publicate imediat pe resursă terță parte. Acest lucru înseamnă, în esență, să vă furați conținutul. Codurile au și alte „sarcini”, de exemplu, plasarea de link-uri de ieșire pe paginile site-ului. Sarcinile pot fi cele mai sofisticate, dar un lucru este clar: codurile rău intenționate trebuie vânate și eliminate.

    Cum ajung codurile rău intenționate pe un site web?

    Există, de asemenea, multe lacune pentru ca codurile să intre pe site.

  • Cel mai adesea, acestea sunt teme și pluginuri descărcate din resurse „stânga”. Deși, o astfel de penetrare este tipică pentru așa-numitele legături criptate. Codul explicit nu ajunge pe site.
  • Pătrunderea unui virus atunci când un site este piratat este cea mai periculoasă. De regulă, piratarea unui site vă permite nu numai să plasați un „cod unic”, ci și să instalați cod cu elemente malware ( malware). De exemplu, găsiți un cod și îl ștergeți, dar este restaurat după ceva timp. Există, din nou, multe opțiuni.
  • Permiteți-mi să notez imediat că lupta împotriva unor astfel de viruși este dificilă, dar îndepărtarea manuală necesită cunoștințe. Există trei soluții la problemă: prima soluție este să folosiți pluginuri antivirus, de exemplu, un plugin numit BulletProof Security.

    Această soluție dă rezultate bune, dar necesită timp, deși puțin. Există o soluție mai radicală, scăparea de coduri rău intenționate, inclusiv virusuri complexe, aceasta este pentru a restabili site-ul din cele prefabricate copii de rezervă site-ul.

    Deoarece un webmaster bun face acest lucru periodic, puteți reveni la o versiune neinfectată fără probleme. A treia soluție este pentru cei bogați și leneși, trebuie doar să contactați un „birou” specializat sau un specialist individual.

    Cum să cauți cod rău intenționat pe WordPress

    Este important să înțelegeți că codul rău intenționat de pe WordPress poate fi în orice fișier de pe site și nu neapărat în subiect de lucru. El poate veni cu un plugin, o temă sau un cod „de casă” luat de pe Internet. Există mai multe moduri de a încerca să găsiți coduri rău intenționate.

    Metoda 1: manual. Parcurgeți toate fișierele site-ului și le comparați cu fișierele unei copii de rezervă neinfectate. Dacă găsiți codul altcuiva, ștergeți-l.

    Metoda 2: Utilizarea pluginurilor de securitate WordPress. De exemplu, . Acest plugin are o caracteristică excelentă, scanarea fișierelor site-ului pentru prezența codului altor persoane, iar pluginul face față perfect acestei sarcini.

    Metoda 3. Dacă aveți un suport rezonabil de găzduire și vi se pare că există altcineva pe site, cereți-i să vă scaneze site-ul cu antivirusul. Raportul lor va lista toate fișierele infectate. Apoi, deschideți aceste fișiere în editor de textși eliminați codul rău intenționat.

    Metoda 4. Dacă poți lucra cu Acces SSH la catalogul site-ului, apoi mergeți mai departe, are propria bucătărie.

    Important! Indiferent de modul în care căutați cod rău intenționat, înainte de a căuta și apoi de a șterge codul, închideți accesul la fișierele site-ului (activați modul de întreținere). Amintiți-vă despre codurile care sunt restabilite atunci când sunt șterse.

    Căutați coduri rău intenționate folosind funcția eval

    Există o astfel de funcție în PHP numită eval. Vă permite să executați orice cod de pe linia sa. Mai mult, codul poate fi criptat. Din cauza codificării, codul rău intenționat arată ca un set de litere și simboluri. Două codificări populare sunt:

  • Baza64;
  • Rot13.
  • În consecință, în aceste codificări, funcția eval arată astfel:

    • eval(base64_decode(...))
    • eval (str_rot13 (...)) //între ghilimele interne, seturi lungi, neclare de litere și simboluri..

    Algoritmul de căutare a codului rău intenționat folosind funcția de evaluare este următorul (lucrăm din panoul administrativ):

    • accesați editorul site-ului (Aspect→Editor).
    • copiați fișierul functions.php.
    • deschideți-l într-un editor de text (de exemplu, Notepad++) și căutați cuvântul: eval.
    • Dacă îl găsiți, nu vă grăbiți să ștergeți nimic. Trebuie să înțelegeți ce „cere” să fie efectuată această funcție. Pentru a înțelege acest lucru, codul trebuie decodat. Pentru decodare există instrumente online, numite decodoare.
    Decodoare/Codificatoare

    Decodorele funcționează simplu. Copiați codul pe care doriți să-l decriptați, îl lipiți în câmpul decodorului și decodați.

    La momentul scrierii, nu am găsit un singur cod criptat găsit în WordPress. Am găsit codul de pe site-ul Joomla. În principiu, nu există nicio diferență în înțelegerea decodării. Să ne uităm la fotografie.

    După cum puteți vedea în fotografie, funcția de eval, după decodare, nu a afișat un cod groaznic care amenință securitatea site-ului, ci un link de drepturi de autor criptat de la autorul șablonului. Poate fi, de asemenea, eliminat, dar va reveni după actualizarea șablonului dacă nu utilizați .