Я работаю над php-сайтом, и он регулярно заражается Malware. Я прошел все этапы безопасности, но не смог. Но я знаю, как это каждый раз заражает мой код. Это происходит при запуске моего индексного файла php, как показано ниже.
<script>.....</script><?
Может кто-нибудь, пожалуйста, помогите мне, как я могу удалить начальный код блока для каждого файла индекса в папках моего сервера? Я буду использовать cron для этого.
Я уже рассмотрел вопрос regex для удаления javascript-вредоносного ПО, но не нашел того, что хочу.
Вы должны изменить пароль FTP на свой сайт, а также убедиться, что в фоновом режиме нет программ, которые открывают TCP-соединения на вашем сервере, позволяя удалённому чуваку изменять файлы вашего сайта. Если вы находитесь в Linux, проверьте запущенные процессы и убейте / удалите все подозрительные.
Вы также можете сделать все файлы сервера ReadOnly с помощью ROOT …
Во всяком случае, виноват троян / вредоносный / неавторизованный ftp-доступ, а не JavaScript.
Кроме того, это вопрос SuperUser …
Клиенты регулярно звонят мне, дезинфицируют их не поддерживаемые, зараженные вредоносными программами вредоносные сайты PHP, на серверах, на которые у них нет контроля.
Если я могу получить доступ к оболочке, вот сценарий, который я написал для запуска:
( set -x; pwd; date; time grep -rl zend_framework --include=*.php --exclude=*\"* --exclude=*\^* --exclude=*\%* . |perl -lne 'print quotemeta' |xargs -rt -P3 -n4 sed -i.$(date +%Y%m%d.%H%M%S).bak 's/<?php $zend_framework=.*?>//g'; date ; ls -atrFl ) 2>&1 | tee -a ./$(date +%Y%m%d.%H%M%S).$$.log`;
Это может занять некоторое время, но ТОЛЬКО модифицирует файлы PHP, содержащие сигнатуру <?php $zend_framework=
Он создает резервную копию зараженных версий .php
для .bak
чтобы при повторном сканировании они пропустили их.
Если я не могу получить доступ к оболочке, например. Только FTP, тогда я создаю короткий файл clean.php, содержащий в основном этот код для php для exec, но часто веб-сервер не выполняет выполнение скрипта, прежде чем он будет проходить через все подкаталоги.
КРАТКОЕ ОПИСАНИЕ вашей проблемы:
Я поместил это в crontab / at job, чтобы запустить, например. каждые 12 часов, если возможен такой доступ к планированию процесса непосредственно на сервере, в противном случае есть еще более запутанные подходы в зависимости от того, что разрешено, например. вызывая очистку php извне время от времени, но каждый раз sort --random
его с разными папками через sort --random
(потому что через 60 секунд или около того он все равно будет завершен веб-сервером).
Не ищите шаблон, который говорит вам, что это вредоносное ПО, просто исправьте все свое программное обеспечение, закройте неиспользуемые порты, следуйте тому, что люди сказали вам здесь, вместо того, чтобы пытаться очистить код с помощью регулярного выражения или подписи …