Защита от хакеров корпоративных сетей. Коллектив авторов
Чтение книги онлайн.

Читать онлайн книгу Защита от хакеров корпоративных сетей - Коллектив авторов страница 69

СКАЧАТЬ среди ряда дополнительных, поиск различий на всем диске может оказаться предпочтительным для первоначальной локализации файла, представляющего интерес. Иногда метод грубой силы может оказаться привлекательнее тонких методов исследования, особенно если на их подготовку потребуется дополнительное время.

Сравнение атрибутов файла

      Один из методов поиска модифицированных файлов, позволяющих избежать копирования файлов, основан на использовании их атрибутов. К атрибутам файла относятся дата, время создания и модификации файла и разрешения работы с ним. Некоторые из них могут оказаться полезными для определения только что измененных файлов.

      Ниже представлен уместный фрагмент кода файла ext2_fs.h инсталляции Red Hat 6.2 Linux:

      /*

      * Structure of an inode on the disk

      */

      struct ext2_inode {

      __u16 i_mode; /* File mode */

      __u16 i_uid; /* Owner Uid */

      __u32 i_size; /* Size in bytes */

      __u32 i_atime; /* Access time */

      __u32 i_ctime; /* Creation time */

      __u32 i_mtime; /* Modification time */

      __u32 i_dtime; /* Deletion Time */

      __u16 i_gid; /* Group Id */

      __u16 i_links_count; /* Links count */

      __u32 i_blocks; /* Blocks count */

      __u32 i_flags; /* File flags */

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

      Какие атрибуты интересны для нас? В большинстве случаев это один из атрибутов времени и размер файла. Любой из них может быть определен переадресовыванием вывода команды ls – al в файл до и после наступления анализируемого события с последующим сравнением двух файлов, как это показано в следующем примере:

      [elliptic@ellipse]$ diff /tmp/before /tmp/after

      2,3c2,3

      < drwxrwxr-x 2 ryan ryan 7168 Jun 16 01:55 .

      < drwxrwxrwt 9 root root 1024 Jun 16 01:55 ..

      

      > drwxrwxr-x 2 ryan ryan 7168 Jun 16 01:56 .

      > drwxrwxrwt 9 root root 1024 Jun 16 01:56 ..

      97c97

      < -rw-r—r– 1 ryan ryan 31533 Jun 16 01:55 fs.h

      

      > -rw-r—r– 1 ryan ryan 31541 Jun 16 01:56 fs.h

      Из примера видно, что файл fs.h изменился. Этот способ сравнения содержимого директории обнаруживает изменение любого атрибута файла. Быстрый способ простого отслеживания изменения атрибута времени заключается в использовании команды ls – al, показанной в следующем примере. Команда ls – al в примере соединена программным каналом с командой more:

      [elliptic@ellipse]$ ls -alt | more

      total 2224

      drwxrwxrwt 9 root root 1024 Jun 16 01:56 ..

      drwxrwxr-x 2 ryan ryan 7168 Jun 16 01:56 .

      -rw-r—r– 1 ryan ryan 31541 Jun 16 01:56 fs.h

      -rw-r—r– 1 ryan ryan 7295 Jun 16 01:55 a.out.h

      -rw-r—r– 1 ryan ryan 2589 Jun 16 01:55 acct.h

      -rw-r—r– 1 ryan ryan 4620 Jun 16 01:55 adfs_fs.h

      …и т. д. Файлы, модифицированные последними, выводятся СКАЧАТЬ