Злонамерени скриптове. Ние търсим и премахваме зловреден код в WordPress. Неутрализиране на сървърни скриптове

WordPress е една от най-популярните системи за управление на съдържание, използвана за различни цели, от блогове до електронна търговия. Има богат избор от WordPress добавки и теми. Случва се някои от тези разширения да попаднат в ръцете на уеб администратори, след като някой нападател е работил върху тях.

За негова собствена изгода той би могъл да остави рекламни линкове или код в тях, с които да управлява вашия сайт. Много потребители на WordPress нямат много опит в уеб програмирането и не знаят как да се справят с тази ситуация.

За тях прегледах девет от най-ефективните инструменти за откриване на злонамерени промени в кода на работещ уебсайт или инсталирани добавки.

1. Проверка на автентичността на темата (TAC)

Проверка на автентичността на темата (TAC) – WordPress плъгин, който сканира всеки установена темаза подозрителни елементи като невидими връзки или Base64 криптиран код.

След като открие такива елементи, TAC ги докладва на администратора на WordPress, което му позволява самостоятелно да анализира и, ако е необходимо, да коригира изходните файлове на темата:

2. Експлойт Скенер

Exploit Scanner сканира изходния код на целия ви сайт и съдържанието на базата данни на WordPress за съмнителни включвания. Точно като TAC, този плъгин не предотвратява атаки или се бори автоматично с последствията от тях.

Той показва само откритите симптоми на инфекция на администратора на сайта. Ако искате да изтриете зловреден код, ще трябва да го направите ръчно:

3. Sucuri Security

Sucuri е добре известно решение за сигурност на WordPress. Плъгинът Sucuri Security следи файловете, качени на сайт на WordPress, поддържа свой собствен списък с известни заплахи и също така ви позволява да сканирате отдалечено сайта с помощта на безплатния скенер Sucuri SiteCheck. Отзад абонаментна таксаМожете допълнително да подсилите защитата на сайта си, като инсталирате мощната защитна стена на уебсайта Sucuri:

4. Анти-зловреден софтуер

Anti-Malware е плъгин за WordPress, който може да намира и премахва троянски скриптове, задни вратички и друг зловреден код.

Настройките за сканиране и изтриване могат да бъдат персонализирани. Този плъгин може да се използва след безплатна регистрация в gotmls.

Плъгинът редовно осъществява достъп до уебсайта на производителя, предава статистически данни за откриване на зловреден софтуер и получава актуализации. Ето защо, ако не искате да инсталирате плъгини на вашия сайт, които следят работата му, тогава трябва да избягвате използването на Anti-Malware:

5. WP антивирусна защита на сайта

WP Antivirus Site Protection е плъгин, който сканира всички файлове, качени на сайт, включително WordPress теми.

Плъгинът има собствена база данни със сигнатури, която се актуализира автоматично през интернет. Може да премахва заплахите автоматично, уведомете администратора на сайта чрез електронна пощаИ още много.

Плъгинът е инсталиран и функционира безплатно, но има няколко платени добавки, на които си струва да обърнете внимание:

6. Антивирусна програма за WordPress

AntiVirus за WordPress е лесен за използване плъгин, който може редовно да сканира вашия сайт и да ви уведомява за проблеми със сигурността по имейл. Плъгинът има персонализиран бял списък и други функции:

7. Quterra Web Malware Scanner

Скенерът на Quterra проверява уебсайт за уязвимости, инжектиране на код на трети страни, вируси, задни вратички и др. Скенерът има такива интересни функции като евристично сканиране и откриване на външни връзки.

Основните функции на скенера са безплатни, докато някои допълнителни услуги ще ви струват $60 на година:

8. Wordfence

Ако търсите цялостно решение на проблемите със сигурността на уебсайта си, не търсете повече от Wordfence.

Този плъгин осигурява постоянна защита на WordPress срещу известни видове атаки, двуфакторно удостоверяване, поддръжка за „черен списък“ с IP адреси на компютри и мрежи, използвани от хакери и спамъри, и сканиране на сайта за известни задни вратички.

Този плъгин е безплатен в основната си версия, но също така има премиум функционалност, за която производителят изисква скромна абонаментна такса:

9.Вемаху

Wemahu следи промените в кода на вашия сайт и търси злонамерен код.

Базата данни, в която е открит зловреден софтуер, се попълва с помощта на метода на краудсорсинг: потребителите сами я попълват, като изпращат резултатите от сканирането на заразени инсталации на WordPress на уебсайта на автора на приставката. Плъгинът също поддържа изпращане на отчети по имейл и други полезни функции.

Трябва да се направи заедно. Ако премахнете първоначалната причина за хакването (например уязвимост в разширението на CMS), но не премахнете всички злонамерени файлове, нападателят ще може отново да получи достъп до сайта с помощта на един от своите скриптове. Ако премахнете всички изтеглени злонамерени скриптове, но не отстраните причината за хакването, атакуващият ще може отново да хакне сайта и да изтегли скриптове в него отново.

Специалист с необходимите знания и опит трябва да извърши работа за премахване на злонамерени скриптове и да анализира причините за хакване:

  • За да премахнете злонамерени скриптове, са необходими познания по езика за програмиране PHP, както и познания за „вътрешността“ на популярните CMS (Joomla, WordPress и др.) и разширенията за тях. Тези познания са необходими за разграничаване на скриптове директно от CMS и нейните разширения от външни файлове, както и за да можете недвусмислено да определите какви действия извършват, когато се натъкнат на съмнителни скриптове.
  • За да се анализират причините за хакването, е необходим опит в администрирането на сървъра. Това е необходимо, за да се анализира състоянието на файловете в акаунта, времето, когато са били променени, както и да се сравнят тези данни със сървърните регистрационни файлове, за да се определи кои действия на нападателя са довели до хакване на сайтове.

Ето защо, ако вашият сайт е бил хакнат, препоръчително е, за да избегнете повторни хакове, да не извършвате работата сами, а да се свържете със специалист, който ще извърши необходимата диагностика и ще препоръча или извърши необходими действияза решаване на проблема и кой може да гарантира качеството на получения резултат.

Съществуват обаче редица мерки, които в някои случаи помагат за възстановяване на безопасната работа на сайта без специални познания. Ограничението на метода по-долу е, че за да възобнови работата на сайта, той изисква резервно копие от него, създадено преди хакването. Ако датата на пробива е неизвестна, можете да опитате този метод, като използвате най-стария наличен архив. Второто ограничение, като следствие от първото, е, че след възстановяване на сайта, данните, добавени към сайта след възстановяването, са създадени резервно копие (например нови статии, изображения или документи). Ако трябва да възстановите сайта, като запазите нови данни, трябва да се свържете със специалист.

Тези мерки не ни позволяват да определим причината за хакването на сайта, но всяка от тях е насочена към премахване на една от потенциалните причини за проникване. Тъй като точната причина за хакването е неизвестна, е необходимо да се извършат всички. Действията са подредени в такъв ред, че първо напълно да елиминират възможността нападателят да продължи дейността си в сайта или хостинг акаунта в понастоящем, и след това да предотврати нападател да влезе в сайта в бъдеще.

Стъпките по-долу предполагат, че имате само един уебсайт във вашия хостинг акаунт. Ако има няколко сайта в акаунта, тогава те също могат да бъдат хакнати и сайтът може да бъде хакнат чрез тях. Необходимо е или да прехвърлите сайта, с който се извършва възстановителна работа, в отделен акаунт, или да извършите възстановяване за всички сайтове, хоствани в акаунта едновременно.

Редът на действията е важен, така че е необходимо да ги изпълнявате точно в реда, в който са разположени по-долу.

  • Веднага след откриване, че даден сайт е бил хакнат, е необходимо напълно да блокирате достъпа на посетителите до него. Това, първо, ще попречи на нападателя да извършва злонамерени дейности на сайта, и второ, няма да му позволи да се намесва в работата по възстановяването. Тази стъпка е много важна, тъй като премахването на злонамерени скриптове и елиминирането на причината за хака не се случва за една нощ - като правило отнема няколко часа. Ако сайтът остане достъпен отвън, атакуващият ще може да качи отново скриптове в раздела на сайта, който вече е изчистен. В този случай нападателят може да използва различни IP адреси за свързване, така че отказът на достъп само до списък с IP адреси няма да работи. За да се гарантира, че сайтът е почистен от открити злонамерени скриптове, е необходимо напълно да се блокира достъпът на атакуващия до сайта, което може да стане само чрез пълно блокиране на сайта за всички посетители. Свържете се със службата за техническа поддръжка на хостинга, който хоства вашия сайт, за да го блокирате.
  • След като блокирате сайта, трябва да проверите компютрите, от които сте работили със сайта, с модерна антивирусна програма с актуализирани вирусни бази данни. Ако сайтът е бил хакнат чрез кражба на пароли за акаунти с помощта на вирус, трябва да се уверите, че по-нататъшната работа с хакнатия сайт се извършва от компютър, който няма вируси, в противен случай след промяна на паролите за достъп те могат да бъдат откраднати отново.
  • След като блокирате сайта и проверите за вируси, трябва да смените всички пароли за достъп до вашия акаунт: достъп през FTP, през SSH, както и достъп до контролния панел на хостинга. Ако нападател получи достъп до файловете на акаунта, използвайки един от тези методи, след като паролите бъдат променени, той вече няма да може да го направи.
  • След като промените паролите, трябва да унищожите всички сървърни процеси, работещи под акаунта, на който се поддържа сайтът. Процесите, стартирани от атакуващ във фонов режим, без да бъдат унищожени, ще могат да поставят отново злонамерени скриптове на сайта след извършване на възстановителна работа. За да не се случи това, всички процеси, изпълнявани преди блокирането на сайта, трябва да бъдат унищожени. Сайтът вече трябва да е блокиран в този момент, така че атакуващият да не може да стартира нови процеси чрез достъп до някой от неговите скриптове на сайта. За да унищожите процесите, изпълнявани във вашия акаунт, свържете се със службата за техническа поддръжка на хостинга, който хоства вашия сайт.
  • Сега е невъзможно да проникнете в сайта отвън и можете да започнете да го възстановявате.
  • Преди по-нататъшни действия изтрийте всички съществуващи файлове на сайта, за да се уверите, че няма злонамерени скриптове или CMS скриптове, в които атакуващият е вмъкнал злонамерен код. Тази стъпка също е важна, защото при възстановяване на сайт от резервно копие, файловете, които са съществували преди възстановяването, не винаги се изтриват. Ако след възстановяване от резервно копие на сайта останат стари злонамерени скриптове, нападателят ще може да влезе отново в сайта. Можете да избегнете това, като изтриете всички файлове на сайта, преди да извършите възстановяване.
  • След като изтриете всички файлове на сайта, възстановете сайта от архив, създаден преди да бъде хакнат. Често е достатъчно да възстановите само файловете на сайта, но ако след възстановяването им се наблюдават грешки в работата на сайта, е необходимо да възстановите сайта напълно: както файловете, така и базата данни.
  • След като възстановите от резервно копие, актуализирайте системата за управление на съдържанието (CMS) и разширенията до най-новите версии. Това е необходимо, за да се изключи наличието на известни уязвимости на сайта, чрез които той може да бъде хакнат. По правило актуализацията може да се извърши през секцията за администриране на CMS. За получаване пълни инструкцииЗа да актуализирате CMS, трябва да отидете на уебсайта на разработчика на системата. Важно е да актуализирате не само самата CMS, но и всички нейни разширения, тъй като хакването често се случва чрез уязвимост, присъстваща в едно от разширенията на CMS (например плъгини, теми, джаджи и т.н.). В този момент все още е невъзможно сайтът да бъде деблокиран за посетители, тъй като може все още да е уязвим. За да получите достъп до вашия сайт за актуализиране, свържете се с техническата поддръжка на хостинга, хостващ вашия сайт, и поискайте да разрешите достъп до сайта само от IP адреса на вашия компютър. Можете да разберете вашия IP адрес, например, на inet.yandex.ru.
  • След като актуализирате системата за управление на сайта и нейните разширения, отидете в раздела за администриране на сайта и променете паролата за администраторски достъп до него. Уверете се, че сред потребителите на сайта няма други потребители с администраторски привилегии (те могат да бъдат добавени от нападател) и ако бъдат намерени, ги изтрийте.
  • Сега, след като сайтът е възстановен от резервно копие и не съдържа злонамерени скриптове, CMS и неговите разширения са актуализирани до най-новите версии, които не съдържат уязвимости, а паролите за достъп до сайта и хостинг акаунта са променени, вие може да отвори отново сайта за посетители.
  • Всички горепосочени действия трябва да се извършват в съответствие с посочения ред, без пропуски или промени. Ако действията се извършват неточно, на сайта могат да останат злонамерени скриптове или уязвимости, в резултат на което след кратко време той може да бъде отново хакнат от нападател. Ако по някаква причина не е възможно да изпълните горните стъпки във формата, в която са посочени, свържете се със специалист, който да извърши работа по възстановяване на сайта след хакване.

    За да защитите сайта си от повторни хакове в бъдеще, трябва да се придържате към следните препоръки:
  • Следете актуализациите на CMS и разширенията за него на уебсайтовете на разработчиците и своевременно ги актуализирайте до най-новите версии. Ако коментар за актуализация гласи, че коригира уязвимост, инсталирайте актуализацията възможно най-скоро.
  • Работете със сайта и хостинг акаунта само от компютри, които са защитени от вируси от съвременни антивируси с постоянно актуализирани бази данни с вируси.
  • Използвайте сложни пароли, така че да не могат да бъдат отгатнати чрез търсене в речника.
  • Не запазвайте пароли за FTP и SSH в програми за свързване към сайта и не запазвайте паролата за достъп до административната област на сайта и контролния панел на хостинга във вашия браузър.
  • От време на време (например веднъж на три месеца) сменете паролите за достъп до сайта и хостинг акаунта.
  • Ако са открити вируси на компютъра, от който сте работили със сайта, сменете паролите за достъп до сайта и хостинг акаунта възможно най-бързо. Трябва да смените всички пароли: паролите за достъп през FTP, SSH, паролата от административния панел на сайта, както и паролата от контролния панел на хостинга.
  • Не предоставяйте достъп до сайта на трети страни, освен ако не сте сигурни, че те също ще следват тези указания.
  • Зловреден код попада на сайта поради небрежност или злонамерено намерение. Целите на злонамерения код са различни, но по същество той вреди или пречи на нормалното функциониране на уебсайт. За да премахнете зловреден код в WordPress, първо трябва да го намерите.

    Какво е злонамерен код на WordPress сайт?

    от външен вид, най-често злонамереният код е набор от букви и символи на латинската азбука. Всъщност това е криптиран код, чрез който се извършва това или онова действие. Действията могат да бъдат много различни, например новите ви публикации веднага се публикуват на ресурс на трета страна. Това по същество е кражба на вашето съдържание. Кодовете имат и други „задачи“, например поставяне на изходящи връзки на страниците на сайта. Задачите могат да бъдат най-сложни, но едно е ясно: злонамерените кодове трябва да бъдат преследвани и премахвани.

    Как злонамерените кодове попадат в уебсайт?

    Има и много вратички за кодове за влизане в сайта.

  • Най-често това са теми и плъгини, изтеглени от „леви“ ресурси. Въпреки това, такова проникване е типично за така наречените криптирани връзки. Явният код не се озовава на сайта.
  • Най-опасно е проникването на вирус при хакване на сайт. Като правило хакването на сайт ви позволява да поставите не само „еднократен код“, но и да инсталирате код с елементи на зловреден софтуер ( зловреден софтуер). Например, намирате код и го изтривате, но той се възстановява след известно време. Опциите отново са много.
  • Нека веднага да отбележа, че борбата с такива вируси е трудна и ръчното премахване изисква знания. Има три решения на проблема: първото решение е да използвате антивирусни добавки, например плъгин, наречен BulletProof Security.

    Това решение дава добри резултати, но отнема време, макар и малко. Има по-радикално решение да се отървете от злонамерени кодове, включително сложни вируси, което е да възстановите сайта от предварително направени резервни копия на сайта.

    Тъй като добър уеб администратор прави това периодично, можете да се върнете към незаразена версия без никакви проблеми. Третото решение е за богатите и мързеливите, просто се свържете със специализиран „офис“ или индивидуален специалист.

    Как да търсите злонамерен код в WordPress

    Важно е да разберете, че злонамереният код на WordPress може да бъде във всеки файл на сайта, а не непременно в работната тема. Той може да измисли плъгин, тема или „домашен“ код, взет от Интернет. Има няколко начина да се опитате да намерите зловреден код.

    Метод 1: Ръчно. Превъртате през всички файлове на сайта и ги сравнявате с файловете на незаразен архив. Ако намерите чужд код, изтрийте го.

    Метод 2: Използване на добавки за сигурност на WordPress. Например, . Този плъгин има страхотна функция, сканира файловете на сайта за наличие на код на други хора и плъгинът се справя перфектно с тази задача.

    Метод 3. Ако имате разумна поддръжка на хостинг и ви се струва, че има някой друг на сайта, помолете ги да сканират сайта ви с тяхната антивирусна програма. Техният доклад ще изброява всички заразени файлове. След това отворете тези файлове в текстов редактори премахване на зловреден код.

    Метод 4. Ако можете да работите с SSH достъп до директорията на сайта, давайте, има собствена кухня.

    важно! Без значение как търсите злонамерен код, преди да търсите и след това да изтриете кода, затворете достъпа до файловете на сайта (включете режима на поддръжка). Не забравяйте за кодовете, които сами се възстановяват, когато бъдат изтрити.

    Търсете злонамерени кодове с помощта на функцията eval

    В PHP има такава функция, наречена eval. Позволява ви да изпълните всеки код на неговия ред. Освен това кодът може да бъде криптиран. Именно поради кодирането злонамереният код изглежда като набор от букви и символи. Две популярни кодировки са:

  • Base64;
  • Гниене13.
  • Съответно в тези кодировки функцията eval изглежда така:

    • eval(base64_decode(...))
    • eval (str_rot13 (...)) //във вътрешни кавички, дълги, неясни набори от букви и символи..

    Алгоритъмът за търсене на зловреден код с помощта на функцията eval е следният (работим от административния панел):

    • отидете в редактора на сайта (Външен вид→Редактор).
    • копирайте файла functions.php.
    • отворете го в текстов редактор (например Notepad++) и потърсете думата: eval.
    • Ако го намерите, не бързайте да изтриете нищо. Трябва да разберете какво „иска“ да бъде изпълнена тази функция. За да се разбере това, кодът трябва да бъде декодиран. За декодиране има онлайн инструменти, наречени декодери.
    Декодери/Кодери

    Декодерите работят просто. Копирате кода, който искате да дешифрирате, поставяте го в полето за декодер и декодирате.

    По време на писането не намерих нито един криптиран код в WordPress. Намерих кода от уебсайта на Joomla. По принцип няма разлика в разбирането на декодирането. Да погледнем снимката.

    Както можете да видите на снимката, функцията eval след декодиране не показва ужасен код, който застрашава сигурността на сайта, а криптирана връзка за авторски права от автора на шаблона. Той също може да бъде премахнат, но ще се върне след актуализиране на шаблона, ако не използвате .

    В заключение бих искал да отбележа, за да не получа вирус на сайта:

    • Зловреден код в WordPress често идва с теми и добавки. Затова не инсталирайте шаблони и добавки от „леви“, непроверени ресурси, а ако го направите, проверете ги внимателно за наличие на връзки и изпълнителни функции на PHP. След като инсталирате плъгини и теми от „незаконни“ ресурси, проверете сайта с антивирусен софтуер.
    • Не забравяйте да правите периодични архиви и да извършвате други.

    1. Разопаковайте го в папката на сайта.
    2. следвайте връзката your_site/fscure/
    3. всичко

    Какво може да направи той?

    1. Автоматично търсене на вируси по сигнатури.
    2. Търсене на низ във файлове
    3. Изтриване на файлове
    4. Коригирайте зловреден код с помощта на регулярни изрази

    Скриптът няма да свърши цялата работа вместо вас и изисква някои минимални познания. Препоръчително е да направите резервно копие на сайта преди работа.

    Как работи?

    При първото стартиране той създава индекс от файлове. Файлът fscure.lst е в папката. Показва списък с файлове, съдържащи потенциално злонамерени подписи. „Потенциално злонамерен“ означава, че ще трябва да решите дали е вирус или не. Списъкът с подписи е конфигуриран във файла config.php, константа SCAN_SIGN. С настройките по подразбиране скриптът не проверява js файлове и не съдържа подписи за тях.

    Най-често срещаните проблеми

    1. не създава индекса fscure.lst. Може да се случи, ако няма достатъчно права. Поставете 777 в папката fscure

    2. 5xx грешка. Най-често "504 Gateway Time-out". Скриптът няма време за обработка и се срива поради изчакване. В този случай има няколко начина за ускоряване на работата му. Скоростта зависи главно от размера на индекса. Това е във файла fscure.lst. Обикновено файл до 5 MB може да бъде обработен в 90% от случаите. Ако няма време, можете да намалите "алчността" на скрипта, като забраните сканирането *.jpg;*.png;*.css в конфигурацията.
    Във файла config.php.

    // разделител; define("FILES_EXCLUDE","*.js;*.jpg;*.png;*.css");

    3. Хостингът издава предупреждение като
    (HEX)base64.inject.unclassed.6: u56565656: /var/www/u65656565/data/www/34535335353.ru/fscure/index.php

    В сценария няма вирус и никога не е имало. И (HEX)base64.inject.unclassed.6 е конструкция като "echo base64_decode(", която често се среща и сама по себе си е доста безвредна. Въпреки това, в последна версия, замених този код.

    Какво да направите, ако не сте успели да откриете вируса сами?

    Можете да се свържете с мен за помощ. Цените ми са скромни. Давам гаранция за работата си 6 месеца. Цената на работата е 800 рубли. за 1 сайт. Ако има няколко сайта в акаунта ви, цената се определя индивидуално.

    Ако сте успели да направите всичко сами, ще бъда благодарен за финансова награда или връзка към моя сайт.

    Моите реквизити:
    yandex
    41001151597934

    webmoney
    Z959263622242
    R356304765617
    E172301357329

    Истината на живота е, че сайтът може да бъде хакнат рано или късно. След успешно използване на уязвимостта, хакерът се опитва да стъпи на сайта, като поставя хакерски уеб обвивки и програми за изтегляне в системни директории и въвежда задни врати в кода на скрипта и CMS базата данни.

    Скенерите помагат за откриване на заредени уеб обвивки, задни вратички, фишинг страници, спам имейли и други видове злонамерени скриптове - всичко, което знаят и е предварително добавено към базата данни със сигнатури за злонамерен код. Някои скенери, като AI-BOLIT, имат набор от евристични правила, които могат да откриват файлове с подозрителен код, който често се използва в злонамерени скриптове, или файлове с подозрителни атрибути, които могат да бъдат изтеглени от хакери. Но, за съжаление, дори ако на хостинга се използват няколко скенера, може да има ситуации, при които някои хакерски скриптове остават неоткрити, което всъщност означава, че атакуващият остава със „задна врата“ и може да хакне сайта и да получи контрол над него пълен контролпо всяко време.

    Съвременните зловреден софтуер и хакерски скриптове се различават значително от тези отпреди 4-5 години. Понастоящем разработчиците на зловреден код комбинират обфускация, криптиране, декомпозиране, външно зареждане на зловреден код и други трикове, за да заблудят антивирусния софтуер. Следователно вероятността да пропуснете нов зловреден софтуер е много по-висока от преди.

    Какво може да се направи в този случай за по-ефективно откриване на вируси в сайта и хакерски скриптове в хостинга? Необходимо е да се използва интегриран подход: първоначално автоматизирано сканиране и по-нататъшен ръчен анализ. Тази статия ще обсъди опциите за откриване на зловреден код без скенери.

    Първо, нека да разгледаме какво точно трябва да търсите по време на хакване.

  • Хакерски скриптове.
    Най-често при хакване файловете, които се изтеглят, са уеб шелове, бекдори, „качващи програми“, скриптове за спам съобщения, фишинг страници + манипулатори на форми, вратички и хакерски маркери (снимки от логото на хакерската група, текстови файловесъс „съобщение“ от хакери и др.)
  • Инжекции (инжекции на код) в съществуващи .
    Вторият най-популярен тип хостване на зловреден и хакерски код са инжекциите. Мобилните пренасочвания и пренасочванията за търсене могат да бъдат инжектирани в съществуващи .htaccess файлове на сайта, задните врати могат да бъдат инжектирани в php/perl скриптове, а вирусните javascript фрагменти или пренасочвания към ресурси на трети страни могат да бъдат вградени в .js и .html шаблони. Инжекциите са възможни и в медийни файлове, например.jpg или. Често злонамереният код се състои от няколко компонента: самият злонамерен код се съхранява в exif хедъра на jpg файла и се изпълнява с помощта на малък контролен скрипт, чийто код не изглежда подозрителен за скенера.
  • Инжектиране на база данни.
    Базата данни е третата цел за хакер. Тук са възможни статични вмъквания, , , , които пренасочват посетителите към ресурси на трети страни, „шпионират“ ги или заразяват компютъра/мобилното устройство на посетителя в резултат на drive-by атака.
    В допълнение, в много съвременни CMS (IPB, vBulletin, modx и т.н.) модулите за шаблони ви позволяват да изпълните php код, а самите шаблони се съхраняват в базата данни, така че PHP кодът на уеб обвивки и задни вратички може да бъде вграден директно в базата данни.
  • Инжекции в кеширащи услуги.
    В резултат на неправилна или опасна конфигурация на услугите за кеширане, например memcached, са възможни инжекции в кеширани данни „в движение“. В някои случаи хакер може да инжектира злонамерен код в страниците на сайта, без директно да хакне сайта.
  • Инжекции/инициирани елементи в компоненти на сървърна система.
    Ако хакерът е получил привилегирован (root) достъп до сървъра, той може да замени елементи от уеб сървъра или кеширащия сървър със заразени. Такъв уеб сървър, от една страна, ще осигури контрол върху сървъра чрез контролни команди, а от друга страна, от време на време ще въвежда динамични пренасочвания и зловреден код в страниците на сайта. Както в случай на инжектиране в услуга за кеширане, администраторът на сайта най-вероятно няма да може да открие факта, че сайтът е бил хакнат, тъй като всички файлове и базата данни ще бъдат оригинални. Тази опция е най-трудна за лечение.
  • Така че, нека приемем, че вече сте проверили файловете на хостинга и дъмпа на базата данни със скенери, но те не са открили нищо и вирусът все още е на страницата или мобилното пренасочване продължава да работи при отваряне на страници. Как да търсим по-нататък?

    Ръчно търсене

    В unix е трудно да се намери по-ценна двойка команди за намиране на файлове и фрагменти от find / grep.

    намирам . -име ‘*.ph*’ -mtime -7

    ще намери всички файлове, които са били променени през последната седмица. Понякога хакерите „изкривяват“ датата на модификация на скриптовете, за да не открият нови скриптове. След това можете да търсите php/phtml файлове, чиито атрибути са променени

    намирам . -име ‘*.ph*’ -време -7

    Ако трябва да намерите промени в определен интервал от време, можете да използвате същата находка

    намирам . -name ‘*.ph*’ -newermt 2015-01-25 ! -newermt 2015-01-30 -ls

    За да търсите във файлове, grep е незаменим. Може да търси рекурсивно във файлове за определен фрагмент

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

    Когато хакнете сървър, е полезно да анализирате файлове, които имат зададен флаг guid/suid

    намери / -perm -4000 -o -perm -2000

    За да определите кои скриптове се изпълняват в момента и зареждат процесора на хостинга, можете да се обадите

    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

    Използваме мозъка и ръцете си, за да анализираме файлове на хостинг
  • Отиваме в директориите за качване, кеш, tmp, архивиране, журнал, изображения, в които нещо е написано чрез скриптове или качено от потребители, и сканираме съдържанието за нови файлове с подозрителни разширения. Например за joomla можете да проверите .php файловете в директорията images:find ./images -name ‘*.ph*’ Най-вероятно, ако бъде намерено нещо, то ще бъде злонамерен софтуер.
    За WordPress има смисъл да се проверява директорията wp-content/uploads, директориите с теми за архивиране и кеширане за скриптове.
  • Търсят се файлове със странни имена
    Например php, fyi.php, n2fd2.php. Файловете могат да се търсят
    • - чрез нестандартни комбинации от знаци,
    • - наличието на числа 3,4,5,6,7,8,9 в името на файла
  • Търсим файлове с необичайни разширения
    Да речем, че имате уебсайт на WordPress или за тях файловете с разширения .py, .pl, .cgi, .so, .c, .phtml, .php3 няма да са съвсем обикновени. Ако бъдат открити скриптове и файлове с тези разширения, най-вероятно те ще бъдат хакерски инструменти. Процентът на фалшивите засичания е възможен, но не е висок.
  • Търсим файлове с нестандартни атрибути или дата на създаване
    Подозрението може да бъде причинено от файлове с атрибути, които се различават от съществуващите на сървъра. Например, всички .php скриптове са качени чрез ftp/sftp и имат потребителски потребител, а някои са създадени от потребителския www-data. Логично е да проверите най-новите. Или ако датата на създаване на скриптовия файл е по-ранна от датата на създаване на сайта.
    За да ускорите търсенето на файлове с подозрителни атрибути, е удобно да използвате командата Unix find.
  • Ние търсим врати, използвайки голям брой .html или .php файлове
    Ако има няколко хиляди .php или .html файла в директорията, това най-вероятно е врата.
  • Дневници за помощ

    Уеб сървър, имейл услуга и FTP регистрационни файлове могат да се използват за откриване на злонамерени и хакерски скриптове.

    • Корелация на датата и часа на изпращане на писмото (което може да се намери от дневника пощенски сървърили служебна заглавка на спам писмо) със заявки от access_log помощ за идентифициране на метода на изпращане на спам или намиране на скрипта на изпращача на спам.
    • Анализът на регистрационния файл за прехвърляне на FTP xferlog ви позволява да разберете кои файлове са били изтеглени по време на хакването, кои са били променени и от кого.
    • В правилно конфигуриран регистрационен файл на пощенски сървър или в заглавката на услугата на спам имейл, ако PHP е правилно конфигуриран, ще има име или пълен път до изпращащия скрипт, което помага да се определи източникът на спам.
    • Използвайки регистрационните файлове на проактивна защита на съвременни CMS и плъгини, можете да определите какви атаки са били извършени на сайта и дали CMS е успял да им устои.
    • Използвайки access_log и error_log, можете да анализирате действията на хакер, ако знаете имената на скриптовете, които той е извикал, IP адреса или потребителския агент. В краен случай можете да видите POST заявките в деня, в който сайтът е бил хакнат и заразен. Често анализът ви позволява да намерите други хакерски скриптове, които са били изтеглени или вече са били на сървъра по време на хакването.
    Контрол на целостта

    Много по-лесно е да анализирате хак и да търсите злонамерени скриптове на уебсайт, ако предварително се погрижите за неговата сигурност. Процедурата за проверка на целостта помага за навременното откриване на промени в хостинга и определяне на факта на хакване. Един от най-простите и ефективни начини– поставете сайта под система за контрол на версиите (git, svn, cvs). Ако конфигурирате правилно .gitignore, процесът на контрол на промените изглежда като извикване на командата git status, а търсенето на злонамерени скриптове и променени файлове изглежда като git diff.

    Също така винаги ще имате резервно копиефайлове, към които можете да „върнете назад“ сайта за няколко секунди. Сървърните администратори и напредналите уеб администратори могат да използват inotify, tripwire, auditd и други механизми за проследяване на достъпа до файлове и директории и за наблюдение на промените във файловата система.

    За съжаление, не винаги е възможно да конфигурирате система за контрол на версиите или услуги на трети страни на сървъра. В случай на споделен хостинг няма да е възможно да се инсталира система за контрол на версиите и системни услуги. Но няма значение, има доста готови решения за CMS. Можете да инсталирате плъгин или отделен скрипт на сайта, който ще проследява промените във файловете. Някои CMS вече прилагат ефективен мониторинг на промените и механизъм за проверка на целостта (например Bitrix, DLE). В краен случай, ако хостингът има ssh, можете да създадете референтен каст файлова системаекип

    Промоция „2 на цената на 1“

    Промоцията е валидна до края на месеца.

    Когато активирате услугата "Обект под наблюдение" за един уебсайт, вторият към същия акаунт се свързва безплатно. Следващи сайтове по сметката - 1500 рубли на месец за всеки сайт.

    
    Връх