Файл: Защита сетевой инфраструктуры предприятия (Программная реализация алгоритма шифрования).pdf
Добавлен: 26.05.2023
Просмотров: 78
Скачиваний: 3
СОДЕРЖАНИЕ
Глава 1. Теоретические основы защиты данных в информационных системах
1.1. Информационная безопасность: сущность, цели и задачи
1.2. Виды угроз информационной безопасности
Глава 2. Методы обеспечения безопасности в информационных системах
2.2. Аппаратно-программные средства защиты данных
2.3. Программная реализация алгоритма шифрования
В Рутокен ЭЦП PKI реализована инновационная модель для использования в корпоративных проектах. Возможности расширенной поддержки различных международных криптографических алгоритмов, наличие высоких скоростных характеристик каналов передачи данных RSA1024 и RSA2048. Не рекомендуется использовать Рутокет ЭЦП PKI в решениях с повышенными требованиями к скорости аппаратной реализации ГОСТ 28147-89 и ГОСТ Р 34.11-94. Полная совместимость с классическими моделями Рутокен ЭЦП.
Внешний вид устройства электронной подписи Рутокет ЭЦП PKI представлен на рис. 5.
Рисунок 5. Рутокен PKI
Предназначение.
Рутокен ЭЦП предназначен для безопасной двухфакторной аутентификации пользователей, генерации и защищенного хранения ключей шифрования и ключей электронной подписи, выполнения шифрования и самой электронной подписи «на борту» устройства, а также хранения цифровых сертификатов и иных данных.
Возможности Рутокен ЭЦП позволяют выполнять криптографические операции таким образом, что закрытая ключевая информация никогда не покидает пределы токена. Таким образом, исключаются возможности компрометации пользовательского ключа и увеличивается общая безопасность текущей информационной системы и общей безопасной работы пользователей с ней.
Принцип работы.
Рутокен ЭЦП обеспечивает двухфакторную аутентификацию в пользовательских компьютерных системах. Для выполнения успешной аутентификации определенного пользователя необходимо выполнение следующих условий:
– знание пользователем специального PIN-кода для доступа к ресурсам вычислительной системы;
– физическое наличие самого токена.
Это обеспечивает гораздо более высокий уровень информационной безопасности по сравнению с использованием традиционного доступа по паролю.
Основой Рутокен ЭЦП является современный надежно защищенный специальный микроконтроллер и встроенная надежно защищенная память, в которой организовано максимально безопасное хранение данных пользователя, к которым относятся: пароли, пользовательские ключи шифрования и подписи, используемые сертификаты защиты и т.д.
Электронный идентификатор Рутокен ЭЦП поддерживает основные российские и международные стандарты в области обеспечения информационной безопасности. Это позволяет легко, без дополнительных усилий, встраивать его поддержку в существующие пользовательские информационные системы [13].
Встроенный контроль и индикация .
Рутокен ЭЦП обеспечивает надежный контроль целостности микропрограммы (прошивки).
Контроль целостности системных областей используемой памяти в Рутокен ЭЦП.
Проверка целостности RSF-файлов перед любым их использованием владельцем Рутокен ЭЦП.
Счетчики изменений в файловой структуре и изменений любых PIN-кодов для контроля несанкционированных изменений выполненных с Рутокен ЭЦП.
Проверка правильности функционирования криптографических алгоритмов Рутокен ЭЦП.
Светодиодный индикатор с режимами работы информирует пользователя о готовности устройства к работе, выполнении операций, нарушении в системной области памяти устройства.
Также, среди средств защиты сетевой инфраструктуры предприятия можно воспользоваться средствами антивирусных программ.
Антивирусная программа (антивирус) - специализированная программа для обнаружения компьютерных вирусов, а также нежелательных программ вообще и восстановления заражённых такими программами файлов, а также для профилактики - предотвращения заражения файлов или операционной системы вредоносным кодом.
Детальный перечень антивирусных программ представлен в таблице 1. Среди множества современных антивирусных программ можно выделить следующие программы: avast! Free Antivirus; Avira Free Antivirus; AVG AntiVirus Free.
Таблица 1
Антивирусные программы
№ п/п |
Тип |
Наименование |
1 |
Настольные, серверные |
AhnLab V3 Internet Security; Avast Antivirus; AVG; Avira Internet Security; BitDefender; BullGuard; ClamWin; Clam AntiVirus; Comodo Antivirus; Comodo Internet Security; Dr. Web; ESET NOD32; F-Secure; F-PROT; Fortinet; G Data; VIPRE; Advanced SystemCare; iolo System Shield; K7 Total Security; Kaspersky Anti-Virus; Kaspersky Internet Security; KingSoft Mac Internet Security; Malwarebytes' Anti-Malware; McAfee VirusScan |
2 |
Мобильные, планшетные |
AhnLab Mobile Security; Avast Antivirus; AVG AntiVirus; Avira Free Android Security; Bitdefender Mobile Security; BullGuard Mobile Security; CM Security; Comodo Mobile Security; Dr. Web Mobile Security Suite; ESET Mobile Security; F-Secure; G Data MobileSecurity; Lookout Mobile Security; McAfee Mobile Security; PSafe TOTAL Android; FireAMP Mobile Trend Micro Mobile Security; TrustPort Mobile Security; VirusBarrier |
avast! Free Antivirus - популярный бесплатный антивирус, специально разработанный для широкого использования на домашних компьютерах [1]. Пользователи, установившие avast! Free Antivirus, получают полную защиту от вирусов и шпионских программ в режиме реального времени, а также ряд других полезных инструментов для обеспечения безопасности компьютера, рис. 6.
Рисунок 6. Интерфейс антивируса avast! Free Antivirus
Экраны avast! Free Antivirus, работающие в режиме реального времени, постоянно отслеживают происходящие изменения в файловой системе, трафик, электронную почту, вычислительную сеть, P2P, интернет-чаты и т.д. Удобный интерфейс этого антивируса обеспечивает быстрый доступ к настройкам его параметров.
Новая технология Nitro в продуктовой линейке Avast создана для снижения нагрузки на системные ресурсы и обеспечит самую надежную защиту системы ПК без ущерба для скорости его работы и производительности:
– CyberCapture - обнаруживает потенциальные угрозы персональным данным в режиме реального времени с помощью средств лаборатории онлайн-угроз Avast.
– интеллектуальное сканирование – используется для интеллектуальной проверки персонального компьютера на наличие всех типов проблем в одно нажатие.
Avira Free Antivirus - бесплатный (для частных пользователей) антивирус, предлагающий эффективную защиту против компьютерных вирусов. Avira Free Antivirus находит и уничтожает вирусы и трояны, в том числе и еще неизвестные макровирусы. Есть возможность постоянного мониторинга системы, рис. 7.
Рисунок 7. Интерфейс антивируса Avira Free Antivirus
К наиболее сильным сторонам практического использования Avira Free Antivirus следует отнести хорошо отработан механизм детектирования полиморфных вирусов.
AVG AntiVirus Free - популярный антивирус, бесплатный для домашнего использования. Гарантированные производителем быстрые обновления используемой вирусной базы данных, простота практического использования, низкие системные требования - основные преимущества данного антивируса.
От платной версии AVG AntiVirus Free отличает отсутствие нескольких некритических функций и отсутствием прямой технической поддержки [1]. AVG AntiVirus Free содержит инструменты сканирования компьютера, монитор в режиме реального времени, сканер электронной почты, систему автоматического обновления антивирусной базы и другие полезные компоненты.
Таким образом, использование средств антивирусных программ позволяет повысить надежность сетевой инфраструктуры предприятия и защитить оперативные данные.
2.3. Программная реализация алгоритма шифрования
В качестве одного из мероприятий обеспечения надежной защиты сетевой инфраструктуры предприятия на уровне передачи данных можно рекомендовать использовать алгоритмы шифрования.
Алгоритм шифрования RC4 представляет собой широко используемый потоковый шифр, применяемый в протоколах TLS (защита Internet-трафика) и WEP (защита WLAN-сетей). Несмотря на высокую скорость работы и простоту реализации, алгоритм шифрования RC4 обладает некоторыми слабостями, из-за которых в целях информационной безопасности не рекомендуется его использовать. Общая схема алгоритма RC4 представлена на рис. 8.
При некоторых условиях данный шифр является очень уязвимым на взлом. Например, когда не выполняется отброс начальных байтов гаммирующей последовательности или когда используются связанные или неслучайные ключи. Компания Microsoft рекомендует при возможности отключать RC4 [9]. Алгоритм шифрования RC4 позволяет сгенерировать псевдослучайный поток битов, называемый гаммирующей последовательностью или гаммой. Как и в любом другом потоковом шифре, шифрование в RC4 выполняется при помощи использования специализированной операции XOR над открытым текстом и гаммой.
Расшифровка выполняется при помощи операции XOR над шифротекстом и гаммой. Таким образом, самым принципиальным моментом в алгоритме шифрования RC4 является то, каким образом будет генерироваться гамма.
В самую первую очередь пользователь должен создать секретный ключ, длина которого, обычно, должна находиться в пределах от 5 до 32 байт. Затем происходит непосредственная инициализация S-блока (Key-scheduling algorithm).
Рисунок 8. Общая схема алгоритма RC4
Сначала берётся массив из 256 байтов (S-блок) и последовательно выполняется заполнение целыми числами от 0 до 255. Потом выполняется перемешивание данного массива. Причем, перемешивание зависит только от используемого ключа в том смысле, что результат будет перемешиваться и всегда жёстко детерминирован после выбора ключа.
Ядро алгоритма шифрования состоит из функции генерации ключевого потока. Эта функция генерирует последовательность битов, которая затем объединяется с открытым текстом посредством суммирования по модулю два.
Дешифрация состоит из регенерации этого ключевого потока и суммирования его с шифрограммой по модулю два, восстанавливая исходный текст.
Другая главная часть алгоритма – функция инициализации, которая использует ключ переменной длины для создания начального состояния генератора ключевого потока.
Алгоритм шифрования: 1) Функция генерирует последовательность битов (ki); 2) Затем последовательность битов посредством операции «суммирование по модулю два» (xor) объединяется с открытым текстом (mi). В результате получается шифрограмма (ci): ci=mi+ki.
Алгоритм расшифровки: 1) Повторно создаётся (регенерируется) поток битов ключа (ключевой поток) (ki); 2) Поток битов ключа складывается с шифрограммой (ci) операцией «xor». В силу свойств операции «xor» на выходе получается исходный (не зашифрованный) текст (mi): mi=ci+ki=(mi+ki)+ki
RC4 – фактически класс алгоритмов, определяемых размером его блока. Этот параметр n является размером слова для алгоритма. Обычно, n = 8. Для повышения безопасности необходимо увеличить эту величину. Внутреннее состояние RC4 состоит из массива размером 2n слов и двух счетчиков, каждый размером в одно слово [23]. Массив обозначается как S-бокс. Он всегда содержит перестановку 2n возможных значений слова. Два счетчика обозначены через i и j.
Внутреннее состояние RC4 представляется в виде массива размером 2n и двух счётчиков. Массив известен как S-блок, и далее будет обозначаться как S. Он всегда содержит перестановку 2n возможных значений слова. Два счётчика обозначены через i и j.
Инициализация RC4 состоит из двух частей: инициализация S-блока; генерация псевдо-случайного слова K.
Практическая реализация алгоритма шифрования была выполнена по средствам использования средств языка программирования С++. Для практической реализации алгоритма шифрования RC4 был создан соответствующий класс программный class RC4_CRYPTS{}
class RC4_CRYPTS{
byte LINE[256];
unsigned int i,j;
inline void Swaps(int, int);
public:
byte GetXors();
void Inits(byte *key, int len);
void Crypts(byte *data, int size);
};
Процедура инициализации входного массива данных представлена следующей функцией
void RC4_CRYPTS::Inits(byte *key,int len)
{
if(!len) len=strlen((char*)key);
for(i=0; i<256; i++) LINE[i]=i;
for(i=j=0; i<256; i++) {
j=(j+LINE[i]+key[i%len])&255;
Swaps(i,j);
}
i=j=0;
}
Непосредственная перестановка реализована в виде функции Swaps()
void RC4_CRYPTS::Swaps(int i,int j)
{
byte t=LINE[i]; LINE[i]=LINE[j]; LINE[j]=t;
}
Полный текст разработанной программы представлен в Приложении. Результат выполнения программы (шифрование) представлен на рис. 9. Результат выполнения программы (расшифровка текста) представлен на рис. 10.
Рисунок 9. Результат выполнения программы (шифрование)