forumСоздать тему

В HTML и PHP на сайте добавились неизвестные строки, нужно срочно найти

MMelis Ö***Эксперт
Должность
Специалист по социальным сетям
Отрасль
Э-коммерция
Тип организации
Компания на 120 человек
Дата регистрации
февр. 2022 г.
Сообщение
14

Doki · Настройка управления логами · 2025

#1

Клиент сказал, что сайт стал тормозить, я начал проверять. Смотрю через инспектор элемента в браузере — внизу страницы висит какой-то странный JS-код. Удаляю его, обновляю страницу — он снова появляется. Иду напрямую в файл, открываю через FTP — там его нет. Значит, внедряется динамически.

Открываю PHP-файлы в текстовом редакторе, ищу нужные скрипты, в некоторых вижу оранжевую строку — в начале стоит @, это же не техника обфускации? Удалил, а она снова появляется. Чувствую себя несправедливо, теряю контроль над своим же компом.

Вы знаете, может, они залезли через SQL-инъекцию в базу? Или другим путем? Хочу разобраться, что тут происходит, прежде чем жаловаться хостингу.

ŞŞerife K***УчастникУчастник сообщества
Дата регистрации
июль 2024 г.
Сообщение
186
Самый полезный#2

Это похоже на инъекцию через базу данных. Если кода нет напрямую в файловой системе но он появляется при загрузке страницы, возможно они сохранили опции в БД через SQL-инъекцию. Если у вас WordPress проверьте поля siteurl home, gplus_profile и т.д. в таблице wp_options. Сделайте дамп базы и поищите через grep функции PHP вроде '%base64%' '%eval%' '%preg_replace%'. Символ @ подавляет ошибки, любимая штука малвари. 2) Проверьте логи FTP — увидите, кто заходил за последние 7 дней. 3) Проверьте права доступа к wp-config.php (должно быть 644 а не 777). 4) Проверьте даты изменения всех файлов, посмотрите за последние 30 дней.

RRecep S***Участник
Должность
Планирование производства
Отрасль
Розница
Тип организации
индивидуальный предприниматель
Дата регистрации
сент. 2023 г.
Сообщение
103
#3

sQL-инъекция — это классика могли сделать запрос к пользователям и вставить админские данные в таблицы wp-postmeta. удалите плагин, тот который не обновляли. или дропните таблицу... нет не то, что-то всегда случается...

NNecati E***УчастникУчастник сообщества
Дата регистрации
янв. 2024 г.
Сообщение
3
#4

Шаги: 1) Зайдите в базу через phpmyadmin 2) Возьмите wp_options, проверьте всё 3) Проверьте wp_postmeta, посмотрите, нет ли чужих meta_key 4) Логи FTP (в панели хостинга) 5) Поле post_content в таблице wp_posts — если постов много и они норм, или там есть скрипты, удалите 6) Отключите все плагины и темы 7) Обновите WordPress

MMustafa K***ЭкспертУчастник сообщества
Дата регистрации
янв. 2025 г.
Сообщение
3
#5

Прочитал, что ты теряешь контроль над компьютером... вроде как слишком драматично переживаешь. SQL-инъекция — штука простая если не санитизируешь запросы, база тоже взламывается. Разберись «какой плагин не обновил» и всё решится.

AAlperУчастник
Должность
Директор по полевым продажам
Тип организации
кооператив
Дата регистрации
март 2024 г.
Сообщение
102

Doki · Инфраструктура электронной коммерции · 2026

#6

У меня есть метод проверки: восстановите полный бэкап на стейджинге WordPress, обновите плагины и темы, потом посмотрите, осталось ли. Если на стейджинге нет — значит, проблема в файловой системе, если есть — в базе. Работайте в том направлении, куда хотите идти.

ZZehra Y***Участник
Должность
Директор по маркетингу
Отрасль
Производство мебели
Тип организации
компания из 20 человек
Дата регистрации
май 2024 г.
Сообщение
324
#7

Я не совсем понял проблему но... что такое база данных? Что такое FTP? Мне что теперь нужно изучать MySQL, чтобы это решить? Или кто-то обязательно поможет?

VVeli N***Эксперт
Должность
Системный администратор
Отрасль
Упаковка
Тип организации
компания в составе холдинга
Дата регистрации
май 2022 г.
Сообщение
359
#8

При выполнении этого часто совершают одну ошибку. Если не зафиксировать это письменно с самого начала потом возникнут споры.

Если напишете результат здесь, это поможет и другим.

UUğur S***Участник
Должность
Региональный директор
Отрасль
Химия
Тип организации
индивидуальный предприниматель
Дата регистрации
сент. 2024 г.
Сообщение
22
#9

Эта тема в архиве.

SSena P***Новый участник
Должность
Логистическое планирование
Отрасль
Строительство
Тип организации
сеть магазинов
Дата регистрации
июль 2026 г.
Сообщение
389

Doki · Интерфейсный дизайн · 2023

#10

ответ выше точно предал суть вопроса. в общем начните с небольшого эксперимента, не привязывайте всё сразу.

CCemУчастник
Должность
Агентство · менеджер проектов
Тип организации
сеть магазинов
Дата регистрации
июнь 2024 г.
Сообщение
103

Doki · перенос инфраструктуры · 2023

#11

Извините, но это верно не во всех случаях. Изменение платежных данных никогда не подтверждается через тот же канал.

EElif B***Участник
Должность
Координатор курьерской службы
Отрасль
Медицинские услуги
Тип организации
компания в составе холдинга
Дата регистрации
дек. 2023 г.
Сообщение
228
#12

Краткое резюме для новичков: Когда пытаешься изменить всё сразу, ничего не приживается.

На этом всё извините, если затянул.

İİbrahim T***ЭкспертУчастник сообщества
Дата регистрации
март 2025 г.
Сообщение
22
#13

Давайте немного раскрою техническую сторону. Если делаете впервые, начните с малого, масштабирование потом.

Надеюсь это будет полезно.

OOrhan B***ВетеранУчастник сообщества
Дата регистрации
янв. 2023 г.
Сообщение
26
#14

У меня та же ситуация, поэтому и спрашиваю. Любой пункт, не зафиксированный письменно, в будущем обе стороны будут помнить по-разному.

Это мое мнение, не утверждаю, что оно единственно верное.

YYasemin S***УчастникУчастник сообщества
Дата регистрации
февр. 2024 г.
Сообщение
42
#15

Пишу это, чтобы вы не совершили ту же ошибку. Чем сложнее отменить решение, тем медленнее его принимайте.

Забытые тестовые среды становятся входом в систему чаще, чем продакшн. Я бы пошел этим путем.

BBeren B***Участник
Должность
Сетевой администратор
Отрасль
Энергетика
Тип организации
среднее предприятие
Дата регистрации
дек. 2023 г.
Сообщение
14
#16

На это стоит обратить внимание. Большинство инцидентов начинается не с уязвимости, а с украденного пароля.

Оставлю как заметку, пригодится.

EElif Z***Эксперт
Должность
Планирование производства
Отрасль
стекло
Тип организации
среднее предприятие
Дата регистрации
февр. 2023 г.
Сообщение
164
#17

Вы правы. Ответ сильно зависит от отрасли, универсального правила нет.

Большая часть потерь времени копится на задачах, ожидающих согласования.

İİbrahim P***Участник
Должность
HR-специалист
Отрасль
Консалтинг
Тип организации
индивидуальный предприниматель
Дата регистрации
июль 2024 г.
Сообщение
48
#18

Вы правы. Когда пытаешься изменить всё сразу ничего не приживается.

Надеюсь это будет полезно.

AAycan U***УчастникУчастник сообщества
Дата регистрации
июль 2023 г.
Сообщение
2
#19

я сталкивался с тем же. то что делают все, не значит что это правильно.

доступность резервной копии в той же сети и под той же учетной записью делает ее частью цели атаки но проверено опытом.

AAyşe Ç***Участник
Должность
Директор по информационной безопасности
Отрасль
Строительство
Тип организации
кооператив
Дата регистрации
февр. 2025 г.
Сообщение
27
#20

Согласен. Если разрешение и объем тестирования не зафиксированы письменно, тест не начинать.

Большинство инцидентов начинается не с уязвимости, а с украденного пароля. Надеюсь, это будет полезно.

Написать ответ