выставить все файлам владельца root
find . -type f -exec chown root:root {} \;
выставить 755 всем каталогам и 644 всем файлам:
find . -type d | xargs chmod 755 или если есть каталоги с пробелами find . -type d -exec chmod 755 {} ';' для файлов: find . -type f | xargs chmod 644 или если есть файлы с пробелами find . -type f -exec chmod 644 {} ';'
ПОчистить кеши, а вдруг уже какая-то зараза есть: rm engine/cache/* rm engine/cache/system/*
Чтобы DLE смог писать всякие кеши и делать бекапы:
find uploads/ -type d -exec chmod 777 {} ';'
chmod 777 torrents/
chmod 777 backup/
chmod 777 engine/cache/
chmod 777 engine/cache/system/
chmod 777 engine/data/xfields.txt
chmod 777 engine/data/xprofile.txt
И все вместе, чтобы тупо скопировать:
rm engine/cache/*
rm engine/cache/system/*
find . -type d -exec chmod 755 {} ';'
find . -type f -exec chmod 644 {} ';'
find uploads/ -type d -exec chmod 777 {} ';'
chmod 777 torrents/
chmod 777 backup/
chmod 777 engine/cache/
chmod 777 engine/cache/system/
chmod 777 engine/data/xfields.txt
chmod 777 engine/data/xprofile.txt
Просмотр всех пользователей системы:
cut -d: -f1 /etc/passwd
Просмотр всех не системных пользователей:
cat /etc/passwd | awk /bash/{print} | cut -d: -f1
Просмотр пользователей, залогиненных в системе
who
тут показано имя пользоавтеля, терминал и IP
Поиск php-файлов по владельцу:
find . -type f -iname "*.php" -user www-data
Если зальют шелл, владельцем этого файла станет пользователь от имени которого работал php-процесс, по умолчанию это www-data
Если надо поставить права рекурсивно конкретным файлам по маске, делаем так:
<code>find . -type f -name *rc -exec chown root:root {} \; Поиск шелла в картинках: </code>find . -type f |xargs grep '<?php' Поиск всех не php-файлов, в которых вшит код php: find /var/www ! -regex '.*php' -type f |xargs grep '<?php' На всякий случай сменить root-пароль на mysql
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('secret_password');
А вот поиск с пропуском большого каталога: nice -n 19 ionice -c 3 find . \( -path uploads/photos -o -path uploads/post \) -prune -o ! -regex '.*php' -type f |xargs grep '<?php'
Поиск текста "eval" во всех файлах с расширением .php с заданной директории:
Поиск "eval" среди файлов, у которых выставлены права 777
Простой поиск php-скриптов в заданной папке
Поиск .php файлов, созданных или измененных за последние 7 дней, мне всегда помогала именно она:
Далее пробегаемся по списку файлов, смотрим их содержимое и, если найден shell удаляем его.