no way to compare when less than two revisions

Различия

Показаны различия между двумя версиями страницы.


wiki:articles:pib [10/01/2014 07:27] (текущий) – создано - внешнее изменение 127.0.0.1
Строка 1: Строка 1:
 +^**Некоторые принципы информационной безопасности в среде Linux**^
  
 +**Операционные системы: SlackWare 13.1, Debian 6.**
 +
 +=====Монтирование файловых систем=====
 +
 +Один из простейших способов сокрытия данных:
 +Алгоритм:
 +  - Создается пустой файл необходимых размеров;
 +  - Форматируется (mkfs) в определенную файловую систему;
 +  - Монтируется как отдельное устройство (с loop параметром).
 +
 +**Преимущества:**
 +  - Простота использования;
 +  - Перед монтированием в папку можно накидать безобидной информации, которая будет скрыта после монтирования и восстановится после размонтирования.
 +**Недостатки:**
 +  - Секретная информация была и остается на поверхности жесткого диска, а значит, с приложением усилий, может быть извлечена;
 +  - //Bash//, как известно, хранит историю команд, по которой можно догадаться о последних действиях. Избежать проблем можно несколькими путями:**а)** выключить ведение истории вообще; **б)** понизить количество строк ведения истории в ОЗУ и //.bash_history// (переменная //$HISTSIZE//) в) создать скрипт, удаляющий и (или) переписывающий //.bash_hystory//, а затем – удаляющий сам себя. Самым безопасным способом будет изменение значения //$HISTSIZE//, поскольку, чем меньше будет записано на винт, тем лучше.
 +  - Само по себе наличие монтируемого файла. Можно попытаться спрятать файл в системную папку и заменить им какой-либо системный файл, который практически не используется в работе системы. Минус этого способа в том, что все родные файлы //nix// систем имеют незначительный объем, и наличие 10-и гигабайтного ///usr/bin/html2text// вызовет вопросы. Правда, можно сделать некоторое количество небольших «системных» файлов, которые будут объединятся при монтировании.
 +
 +Впрочем, нормальный способ, в расчете на то, что охотник за секретной информацией ваша жена.
 +
 +=====Создание файла заглушки=====
 +
 +Способ, обратный первому – секретные файлы записываются обычно в директорию, а при необходимости – данная директория закрывается подмонтируемой заглушкой в виде форматированного файла.
 +Алгоритм:
 +  - Создаем секретную директорию и небольшой файлик-заглушку;
 +  - Записываем в директорию секретную информацию, а в заглушку – бесполезную информацию;
 +  - Если поток секретных данных непрерывен – заглушка монтируется в момент опасности. Если поток данный регулярный – заглушка монтируется автоматически.
 +**Преимущества:**
 +  - Простота использования;
 +  - Спрятать файл-заглушку небольшого размера проще в дебрях ОС.
 +
 +**Недостатки:**
 +  - Обязательно физическое наличие строки в //fstab//, монтирующего заглушку при загрузке ОС и (или) скрипта, управляющего вкл/выкл заглушку в нужный момент (при загрузке ОС).
 +  - Если не автоматизировать процесс монтирования (п. 1), то при изъятии системного блока или перезагрузке, папка с секретными данными останется неприкрытой.
 +
 +=====Методы стеганографии=====
 +
 +<note tip>Стеганография (от греч. στεγανός — скрытый + γράφω — пишу; буквально «тайнопись») — это наука о скрытой передаче информации путём сохранения в тайне самого факта передачи. Этот термин ввел в 1499 году Иоганн Тритемий в своем трактате «Стеганография» (Steganographia), зашифрованном под магическую книгу.
 +В отличие от криптографии, которая скрывает содержимое секретного сообщения, стеганография скрывает сам факт его существования. Как правило, сообщение будет выглядеть как что-либо иное, например, как изображение, статья, список покупок, письмо или судоку. Стеганографию обычно используют совместно с методами криптографии, таким образом, дополняя её.
 +Преимущество стеганографии над чистой криптографией состоит в том, что сообщения не привлекают к себе внимания. Сообщения, факт шифрования которых не скрыт, вызывают подозрение и могут быть сами по себе уличающими в тех странах, в которых запрещена криптография. Таким образом, криптография защищает содержание сообщения, а стеганография защищает сам факт наличия каких-либо скрытых посланий.[[http://ru.wikipedia.org/wiki/%D0%A1%D1%82%D0%B5%D0%B3%D0%B0%D0%BD%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D1%8F | Источник ]]</note>
 +
 +**Использование Steghide**.
 +Программа, которая умеет, перечитывая содержимое //jpg// файла, вставлять в него любую информацию, защищая полученный файл паролем. Причем, графический файл с вшитой информацией изменяется незначительно, как по объему, так и по качеству изображения. Работает за счет заполнения пустых и(или) малоактуальных битов файла-контейнера.
 +//Преимущества://
 +  - В большом массиве фотографий, трудно отобрать файлы с зашифрованной информацией, особенно, если картинки разносортные и получены из различных источников (нарисованы, скачаны и тд);
 +  - Расшифровать зашифрованную в файле информацию можно только зная пароль, указанный при шифровании;
 +  - Поддержка //jpeg, .bmp, .wav, и .au//;
 +  - Поддержка большого количества алгоритмов шифрования.
 +  - Легко запустить порчу такой базы данных, достаточно «зашуметь» изображения, информация будет безвозвратно уничтожена.
 +
 +**Недостатки:**
 +  - Ограничения по объему кодируемой информации по отношению к объему исходного файла. Причем больше всего умещается строковой информации (0,7-1 : 1), меньше всего – графической и бинарной (0,1-0,3-1).
 +  - При завершении количества свободных бит, используются младшие биты изображения, а иногда и старший бит, что может вызвать «шум» на изображении.
 +  - Неизвестно, что оставляет стеганограф в заголовке файлов, при запуске на поток проверки всех подряд джейпегов директории. На основании «левой» информации проводится стегоанализ.
 +
 +**Использование Outguess.**
 +Стеганограф аналогичен //Steghide//, работает с форматами //.jpeg, .ppm, и .pnm//.
 +**Использование MP3Stego**. Формат – //mp3//. Считается лучшим по сравнению с графической стеганографией.
 +
 +=====Монтирование области RAM=====
 +
 +Один из наиболее удачных методов хранения данных. При нарушении спокойствия, достаточно нажать на Reset или обесточить компьютер.
 +Алгоритм аналогичен монтированию обычной файловой системы:
 +  - Создаем диск в ///dev/ram//;
 +  - Форматируем;
 +  - Монтируем;
 +  - Работаем.
 +Одной из возможностей использования этого метода является непосредственное хранение данных на виртуальном рамдиске, при условии, что объемы ОЗУ позволяют это.
 +**Преимущества:**
 +  - Возможно бесследное уничтожение секретной информации, если это необходимо;
 +  - В любой момент можно вывести нужную информацию на ПЗУ;
 +  - Повышение скорости управления данными.
 +**Недостатки:**
 +  - При сбое в питании информация будет уничтожена;
 +  - Необходимо иметь «срочную кнопку» для моментального отключения целевого компьютера.
 +
 +=====Использование систем шифрования=====
 +
 +По сути дела, каждая система шифрования состоит из набора программ, которые, кроме непосредственного шифрования, в определенной последовательности выполняют те же самые действия, которые описаны в пунктах выше – монтирование/размонтирование разделов, стеганография, запись в ОЗУ. Кроме этих стандартных возможностей, в пакет входят утилиты зачистки – замещения всей области удаляемого файла на нули или другой последовательностью нулей и единиц, зачистки своп-пространства.
 +В поле наблюдения попали три основных среды шифрования – **TrueCrypt, DriveCrypt и BestCrypt**.
 +В тестировании я использовал систему //BestCrypt//. Поддерживает //AES, Blowfish, Twofish// и //ГОСТ 28147-89// – итого 4 алгоритма. принцип работы: создает зашифрованный файл с монтированием по паролю. Внутри такого файла создается скрытое пространство (//hidden_part//), которое монтируется параллельно (бесткрипт определяет его по паролю). Скрытое пространство хорошо тем, что, например, получив в распоряжение основной зашифрованный файл и брутфорсировав его пароль, можно только догадываться о существовании скрытого раздела, так как физически отдельно он нигде не существует.
 +<note warning>**Возможный минус**: зарегистрирована в Федеральном агентстве правительственной связи и информации, а значит, – есть возможность расшифровки данных представителями ФАПСИ.</note>
 +
 +Алгоритм:
 +  - качаем сырец;
 +  - распаковываем;
 +  - собираем;
 +  - устанавливаем.
 +
 +Почему-то не создалась нужная директория, создаем, запускаем еще раз:
 +
 +<code>xolod:/usr/src/bcrypt-1.8-3# /etc/init.d/bcrypt start
 +Initializing BestCrypt.
 +touch: невозможно выполнить touch для `/var/lock/subsys/bcrypt': Нет такого файла или каталога</code>
 +
 +<code>xolod:/usr/src/bcrypt-1.8-3# mkdir /var/lock/subsys
 +xolod:/usr/src/bcrypt-1.8-3# /etc/init.d/bcrypt start
 +Initializing BestCrypt.</code>
 +
 +Pапускаем //bctool//, ужасаемся обилию возможностей, идем в интернет, удивляемся полному отсутствию русскоязычных статей (кроме мало-мальского описания виндового бесткрипта на руборде) и большому – английских. У нас что? Не шифруют? Находим отличный мануал на сайте производителя (почему-то с опечатками);
 +
 +Cоздаем новый раздел на винте (100 мегабайт, //Blowfish//, с публичным описанием):
 +
 +xolod:/usr/src/bcrypt-1.8-3# bctool new /home/mosolkow/secret_area -s 100M -a BlowFish -d DON'T_TRY!_:o)
 +generating random seed, randomly move your mouse or press keys to speed the process
 +random seed generation: 1024\1024 bits (100%)
 +new password:
 +verify password:
 +Container successfuly created
 +Please do not forget to format the container</code>
 +
 +Форматируем в //ext3//:
 +
 +<code>xolod:/usr/src/bcrypt-1.8-3# bctool format /home/user/secret_area -t ext3
 +password:
 +mke2fs 1.41.3 (12-Oct-2008)
 +Filesystem label=
 +OS type: Linux
 +Block size=1024 (log=0)
 +Fragment size=1024 (log=0)
 +25688 inodes, 102396 blocks
 +0 blocks (0.00%) reserved for the super user
 +First data block=1
 +Maximum filesystem blocks=67371008
 +13 block groups
 +8192 blocks per group, 8192 fragments per group
 +1976 inodes per group
 +Superblock backups stored on blocks:
 +        8193, 24577, 40961, 57345, 73729
 + 
 +Writing inode tables: done
 +Creating journal (4096 blocks): done
 +Writing superblocks and filesystem accounting information: done
 + 
 +This filesystem will be automatically checked every 25 mounts or
 +180 days, whichever comes first.  Use tune2fs -c or -i to override.</code>
 +
 +Создаем дополнительный скрытый раздел внутри уже созданного секретного (50% от него) с параллельным форматированием:
 +
 +<code>xolod:/usr/src/bcrypt-1.8-3# bctool make_hidden /home/user/secret_area 50% -t ext3
 +Enter existing password:
 +Enter password for hidden part:
 +verify password:
 +generating random seed, randomly move your mouse or press keys to speed the process
 +random seed generation: 1024\1024 bits (100%)
 +mke2fs 1.41.3 (12-Oct-2008)
 +Filesystem label=
 +OS type: Linux
 +Block size=1024 (log=0)
 +Fragment size=1024 (log=0)
 +12824 inodes, 51200 blocks
 +0 blocks (0.00%) reserved for the super user
 +First data block=1
 +Maximum filesystem blocks=52428800
 +7 block groups
 +8192 blocks per group, 8192 fragments per group
 +1832 inodes per group
 +Superblock backups stored on blocks:
 +        8193, 24577, 40961
 + 
 +Writing inode tables: done
 +Creating journal (4096 blocks): done
 +Writing superblocks and filesystem accounting information: done
 + 
 +This filesystem will be automatically checked every 22 mounts or
 +180 days, whichever comes first.  Use tune2fs -c or -i to override.</code>
 +
 +Монтируем секретный контейнер (аналогично – скрытую часть):
 +<code>
 +xolod:/usr/src/bcrypt-1.8-3# bctool mount -t ext3 /home/mosolkow/secret_area /home/mosolkow/secret
 +password:
 +Container successfuly mounted
 +xolod:/usr/src/bcrypt-1.8-3#</code>
 +
 +Размонтирование:
 +
 +<code>xolod:/usr/src/bcrypt-1.8-3# bctool umount /home/mosolkow/secret
 +Container successfuly unmounted</code>
 +
 +В дополнение ко всему хотелось бы привести **некоторые возможности этой системы**:
 +
 +
 +1. Возможности монтирования:
 +
 +<code>-m mode set mountpoint access mode, e.g. -m 755
 +-u user set mountpoint owner (can be used by root only), e.g.
 +-u jukka -g group set mountpoint group (can be set by root only), e.g.
 +-g bros -r mount container read-only</code>
 +
 +2. Возможности программы:
 +
 +<code>Linking container to device (virtual drive)
 +Raw mode link to device (virtual drive)
 +Encrypted swap space
 +Монтирование на отдельные носители в тч и RAM (raw block device)</code>
 +
 +С такой свободой действий легко можно создавать сложную систему защиты информации, используя комплексные методы, стремясь к тому, чтобы стоимость по расшифровке стала выше стоимости самой информации :). Например, монтировать раздел стандартным путем, внутри него создать зашифрованный раздел с помощью //BestCrypt//, внутри этого раздела – зашифрованный раздел с помощью //PGP// или //DriveCrypt//. Можно на каком то этапе, для разрыва связей, использовать //RAM//.
 +
 +
 +----
 +Автор: [[http://wiki.slackware.su/wiki:user:pilgrim | pilgrim]]\\
 +[[http://slackware.su/forum/index.php/topic,428.0/topicseen.html | - Обсуждаем на форуме -]]  
Навигация
Печать/экспорт
QR Code
QR Code wiki:articles:pib (generated for current page)