Учитывая, что периодически некоторые сайты взламывают и это обнаруживается, также бывает полезно узнать, какие файлы были изменены на сайте за последнюю неделю (месяц), в которых, возможно, также скрыт вредоносный код.

Поможет Вам в этом следующий код на PHP:

<?php

  function getFileList($dir, $recurse=false)
  {
    // массив, хранящий возвращаемое значение
    $retval = array();

    // добавить конечный слеш, если его нет
    if(substr($dir, -1) != "/") $dir .= "/";

    // указание директории и считывание списка файлов
    $d = @dir($dir) or die("getFileList: Не удалось открыть каталог $dir для чтения");
    while(false !== ($entry = $d->read())) {

      // пропустить скрытые файлы
      if($entry[0] == ".") continue;
      if(is_dir("$dir$entry")) {
        $retval[] = array(
          "name" => "$dir$entry/",
          "size" => 0,
          "lastmod" => filemtime("$dir$entry")
        );
        if($recurse && is_readable("$dir$entry/")) {
          $retval = array_merge($retval, getFileList("$dir$entry/", true));
        }
      } elseif(is_readable("$dir$entry")) {
        $retval[] = array(
          "name" => "$dir$entry",
          "size" => filesize("$dir$entry"),
          "lastmod" => filemtime("$dir$entry")
        );
      }
    }
    $d->close();

    return $retval;
  }

  $dirlist = getFileList("./", true);

  foreach ($dirlist as $dir) {
    if ($dir['lastmod'] > strtotime("-1 week"))
      echo $dir['name']." - ".$dir['size']." - ".$dir['lastmod']."<br />";
  }

?>


Создайте, к примеру, файл lastmodified.php , добавьте туда вышеприведенный код и положите файл в корневую папку сайта. Далее нужно запустить его в браузере.

Если Вам нужно узнать, какие файлы были изменены за последний месяц, то поменяйте код:

    if ($dir['lastmod'] > strtotime("-1 week"))

на

    if ($dir['lastmod'] > strtotime("-1 month"))

Пользуйтесь, на здоровье.

Add comment


Security code
Refresh