
Власник сайту відкриває Google та вводить назву свого домену і бачить у видачі суцільні японські ієрогліфи. Сторінки виглядають як інтернет-магазин різних товарів, переважно це годинники, сумки, взуття — і все це японською мовою. Але варто зайти на сайт напряму — і все виглядає нормально, без жодних ознак злому. Саме так проявляє себе Japanese SEO Hack — один з найпоширеніших і найпідступніших видів веб-зловмисного ПЗ, який може роками паразитувати на репутації та SEO вашого сайту, залишаючись непоміченим для власника.
Japanese SEO Hack (також відомий як Japanese Keyword Hack, Japanese SEO Spam або Japanese Symbol Spam, японський seo-вірус) — це різновид чорного SEO, при якому зловмисники використовують ваш сайт для просування сторонніх ресурсів у пошукових системах. Зокрема, вони генерують тисячі сторінок з японськомовним контентом та афілійованими посиланнями на фейкові інтернет-магазини, що продають підроблені брендові товари.
Ключова особливість цієї атаки — клоакінг (cloaking): звичайним відвідувачам сайт виглядає нормально, а ось пошукові роботи (Googlebot) бачать зовсім інший контент — сторінки, набиті японськими ключовими словами та спамними посиланнями. Саме тому власники сайтів часто дізнаються про зараження із запізненням на тижні або навіть місяці.
За даними дослідників, лише між травнем 2022 і груднем 2024 року було виявлено понад 690 000 фейкових інтернет-магазинів, пов'язаних з кампаніями чорного SEO, включно з Japanese Keyword Hack.
Атака не є суто «вордпресівською» проблемою. Вразливими є сайти на будь-якій CMS, якщо вони:
Особлива небезпека спільного хостингу: якщо сусідній сайт на тому ж сервері заражений WordPress або Joomla, вірус може перекинутись на ваш OpenCart чи Drupal через спільну файлову систему. Один скомпрометований акаунт в такому середовищі — і під загрозою всі сайти на сервері.
Розберемо механіку атаки покроково — те, що насправді відбувається у вашій файловій системі.
Зловмисники проникають на сайт через одну з типових вразливостей:
Після першого проникнення зловмисник завантажує PHP-шели — файли з обфускованим (зашифрованим) кодом, які дають повний доступ до файлової системи. Ці файли маскуються під легітимні:
wp-cron.php
wp-blog-header.php
goods.php
class-wp-locale.php
xmlrpc.php (підмінений)
Типовий шел містить вбудований файловий менеджер, через який зловмисник може переглядати, завантажувати, редагувати та видаляти будь-які файли на сервері — прямо через браузер.
Всередині такого файлу ви побачите щось подібне:
<?php
$_F=__FILE__;$_X='base64_decode';
eval($_X('...довгий рядок base64...'));
?>
Або складніше обфускування через комбінацію eval(), base64_decode(), gzinflate(), str_rot13(), gzuncompress() — кілька шарів шифрування, щоб уникнути виявлення антивірусами.
Це один з найважливіших кроків. Зловмисник вносить зміни у файл .htaccess, щоб реалізувати клоакінг — різний контент для ботів і людей:
RewriteCond %{HTTP_USER_AGENT} (Googlebot|bingbot|Yahoo)
RewriteRule .* /spam-sitemap.xml [L]
Також у .htaccess додаються правила для:
Додатково може з'явитися php.ini зі зміненими директивами безпеки:
safe_mode = Off
disable_functions = NONE
open_basedir = OFF
exec = ON
shell_exec = ON
Це відключає ключові захисні механізми сервера.
Зловмисник модифікує основні PHP-файли вашого сайту — index.php, category.php, header.php та інші — додаючи на початку зашифрований код:
<?php if(!function_exists('_verifyUser')){function _verifyUser(){...}} ?>
Цей код обробляє запити від пошукових ботів і повертає їм згенерований спам-контент, тоді як звичайний відвідувач бачить оригінальну сторінку.
Вірус створює власний sitemap.xml (наприклад, sitemap_japan.xml або sm_index.xml), наповнений тисячами URL на кшталт:
https://yoursite.com/セール-時計/
https://yoursite.com/ブランド-バッグ-激安/
https://yoursite.com/ferfsedf/fdsfdferc.html
Цей sitemap автоматично надсилається до Google Search Console (якщо зловмисник встиг додатися туди як власник). В результаті Google швидко індексує тисячі спам-сторінок, прив'язаних до вашого домену.
Щоб не втратити доступ після "прибирання", зловмисник:
uploads, cache, tmp)Перевірте результати Google за запитом site:yourdomain.com. Якщо бачите:
Ваш сайт, скоріш за все, заражений.

# Файли, змінені за останні 30 днів
find /var/www/html -type f -name "*.php" -mtime -30 | sort
# Пошук характерних сигнатур шкідливого коду
grep -rl "base64_decode" /var/www/html --include="*.php"
grep -rl "eval(gzinflate" /var/www/html --include="*.php"
grep -rl "str_rot13" /var/www/html --include="*.php"
# PHP-файли в папці uploads (там їх не повинно бути)
find /var/www/html/wp-content/uploads -name "*.php"
# Пошук підозрілих .htaccess файлів
find /var/www/html -name ".htaccess" | xargs grep -l "RewriteCond.*User-Agent"
⚠️ Важливо: перед будь-якими змінами зробіть повний бекап сайту і бази даних.
Якщо є підозра на активне зараження — тимчасово переведіть сайт в режим обслуговування або обмежте доступ через .htaccess, щоб вірус не поширювався далі і не перезаражував очищені файли.
Google Search Console: Settings → Users and permissions → видаліть всіх невідомих власників і користувачів.
WordPress: Users → All Users → видаліть підозрілих адмінів.
Разом з цим з .htaccess видаліть токени верифікації — рядки виду:
google-site-verification: [token]
Замініть всі .htaccess файли чистими версіями за замовчуванням. Для WordPress достатньо зайти в Settings → Permalinks і натиснути «Save Changes» — система сама перегенерує коректний .htaccess.
Перевірте наявність php.ini у корені сайту — якщо є, видаліть або відновіть до стандартного вигляду.
# Знайти всі PHP у папці uploads і видалити
find /var/www/html/wp-content/uploads -name "*.php" -delete
# Знайти файли з типовими іменами шелів
find /var/www/html -name "goods.php" -o -name "wp-cron.php" -newer /var/www/html/wp-includes/version.php
Порівняйте файли ядра CMS з оригінальними дистрибутивами:
Відкрийте підозрілі PHP-файли в текстовому редакторі. Зверніть особливу увагу на початок файлів — зловмисники зазвичай вставляють код саме там. Шукайте:
<?php eval(base64_decode('...'));
<?php @eval($_POST['...']);
<?php if(isset($_POST[...
Якщо бачите обфускований код перед <?php оригінального файлу — видаляйте його.
У phpMyAdmin виконайте пошук по таблицях:
-- Пошук японських символів у контенті
SELECT ID, post_title FROM wp_posts WHERE post_content LIKE '%セール%';
-- Пошук eval у контенті
SELECT ID, post_title FROM wp_posts WHERE post_content LIKE '%eval(%';
-- Пошук підозрілих мета-полів
SELECT * FROM wp_postmeta WHERE meta_value LIKE '%base64%';
wp-config.php / config.php)wp-config.php)У Google Search Console:
Якщо зловмисник створив спам-папку (наприклад, yourdomain.com/spam-products/), скористайтесь опцією «Remove all URLs with this prefix».
Не намагайтесь «вичистити» кожен рядок вручну — краще перевстановіть ядро CMS з чистого дистрибутиву. Те саме — для всіх плагінів і тем (тільки з офіційних джерел).
Після всього вищезазначеного запустіть кілька незалежних сканерів (Sucuri, Wordfence, AI Bolit). Лише переконавшись у чистоті — подавайте sitemap до Google та надсилайте запит на перегляд в Search Console.
Переважна більшість заражень відбувається через незакриті вразливості у плагінах і темах. Включіть автоматичне оновлення або перевіряйте наявність оновлень щотижня.
Якщо у вас кілька сайтів — тримайте їх у окремих DirectAdmin/cPanel акаунтах з окремими FTP-юзерами. Один зламаний акаунт не повинен мати доступ до файлів інших сайтів.
Забороніть виконання PHP у директорії для завантажень. Для Apache додайте до uploads/.htaccess:
<Files "*.php">
deny from all
</Files>
Увімкніть 2FA для всіх адмін-акаунтів. Це суттєво знижує ризик брутфорсу.
Cloudflare (навіть безкоштовний план) або Sucuri Firewall блокує значну частину атак ще до того, як запит досягає сервера.
Налаштуйте сповіщення про зміни у файловій системі. Для WordPress — плагіни Wordfence або iThemes Security. Для серверного рівня — інструменти на кшталт AIDE або Tripwire.
Автоматичний щоденний бекап з ротацією — обов'язково. Зберігайте копії поза сервером (Google Drive, S3, окремий FTP).
Якщо ваш OpenCart розміщений на спільному хостингу з WordPress або Joomla — ризик перехресного зараження дуже реальний. Специфічні моменти:
system/cache, system/storage, image/cache на наявність .php файлівadmin/ через IP-whitelist в .htaccess або в налаштуваннях сервера/admin) на унікальнийindex.php і catalog/controller/common/header.php — перші кандидати для ін'єкційconfig.php та admin/config.php на цілісністьJapanese SEO Hack — це добре організована бізнес-схема, яка побудована на шкідливих скриптах. Зловмисники паразитують на SEO-репутації тисяч сайтів по всьому світу, будуючи мережі афілійованих посилань на сумнівний товар. Їх інструменти постійно еволюціонують: нові методи обфускації, нові вектори атак, нові способи закріплення.
Але більшість заражень трапляється з банальних причин — застарілий плагін, слабкий пароль, nulled тема. Технічна захищеність на 90% складається з елементарної гігієни: оновлення, сильні паролі, окремі акаунти, моніторинг.
Якщо ваш сайт вже заражений — не панікуйте. Дотримуйтесь наведеного алгоритму послідовно, не поспішайте, і переконайтесь у повноті очищення перед тим, як сигналізувати Google про відновлення. Найгірше, що можна зробити — це "прибрати" видимі симптоми, залишивши бекдор, через який зловмисник повернеться наступного дня.
Ми провели порівняння двох моделей SSD, яке базується на бенчмарках UserBenchmark, Versus та Pangoly..
Cпособи перевірки правильності налаштування cookie Google Consent Mode v2, перевірка налаштування зг..
Компанія Anthropic офіційно представила Claude Desktop - повноцінний десктопний додаток свого популя..
Інструкція про те як створити вебхук Monobank для відстеження руху коштів по рахунку. Правильна реал..