· Злоумышленники могут быстро изменить характерные признаки или сигнатуру файла.
· Злоумышленники могут использовать сжатие, шифрование и пароли для изменения сигнатуры кода.
· Нельзя защититься от каждой возможной модификации.
Закон 5. Межсетевые экраны не защищают на 100 % от атаки злоумышленника
· Межсетевые экраны – это программные или аппаратные, или программно-аппаратные средства ЭВМ.
· Главная функция межсетевых экранов состоит в фильтрации входных и выходных пакетов.
· Успешные атаки возможны в результате ошибочных правил, несовершенной политики безопасности и проблем с обслуживанием межсетевых экранов.
Закон 6. От любой системы обнаружения атак можно уклониться
· Системы обнаружения вторжения – часто пассивные системы.
· Для злоумышленника трудно обнаружить присутствие системы обнаружения вторжения.
· Эффективность системы обнаружения вторжения снижается в результате неверной конфигурации и недостатков обслуживания.
Закон 7. Тайна криптографических алгоритмов не гарантируется
· Хорошие криптографические алгоритмы обеспечивают высокую степень защиты.
· Большинство криптографических средств не подвергаются достаточному исследованию и тестированию до начала использования.
· Единые алгоритмы используются в различных областях. Взломать их трудно, хотя и возможно.
Закон 8. Без ключа у вас не шифрование, а кодирование
· Этот закон универсален, не существует никаких исключений.
· Шифрование используется, чтобы защитить результат кодирования. Если ключ не используется, то нельзя ничего зашифровать.
· Ключи должны храниться в тайне, иначе ни о какой безопасности не может быть и речи.
Закон 9. Пароли не могут надежно храниться у клиента, если только они не зашифрованы другим паролем
· Пароли, сохраненные на компьютере клиента, легко обнаружить.
· Если пароль хранится в открытом виде (незашифрованным), то это небезопасно.
· Безопасное хранение паролей на компьютере клиента предполагает вторичный механизм обеспечения безопасности.
Закон 10. Для того чтобы система начала претендовать на статус защищенной, она должна проити независимый аудит безопасности
· Аудит – начало хорошего анализа систем безопасности.
· Системы безопасности часто не анализируются должным образом, что ведет к их дефектам.
· Внешняя проверка имеет решающее значение для защиты; ее отсутствие – дополнительное условие для атаки злоумышленником.
Закон 11. Безопасность нельзя обеспечить покровом тайны
· Скрыть что-либо – не значит обеспечить безопасность этого.
· Необходима упреждающая защита.
· Использование только скрытия информации способствует компрометации.
Часто задаваемые вопросы
Вопрос: Сколько усилий я должен приложить для применения рассмотренных законов безопасности к интересующей меня специфической системе?
Ответ: Если вы исследуете систему для определения степени ее безопасности, то вполне можете использовать законы непосредственно, предварительно оценив время, которое вы можете потратить на исследование. Если анализируемая система общедоступна, то в Интернете вы наверняка найдете примеры использования вашей системы. Вероятно, вам придется потратить достаточно времени на проверку законов безопасности. Если законы безопасности будут применяться для анализа уникальных систем, то время исследования может увеличиться.
Вопрос: В какой степени я буду защищен после самостоятельного исследования системы? Ответ: Частично это зависит от приложенных вами усилий. Если вы потратили разумное количество времени, то, вероятно, вы выявили очевидные изъяны в системе защите. Это уже гарантия вашей защищенности, поскольку начинающие хакеры именно их и будут искать. Даже если вы стали целью талантливого злоумышленника, он все равно может начать с них, и первые неудачи могут отпугнуть его. Поскольку вы, вероятно, найдете еще что-то за время своего исследования и обнародуете свои результаты, то каждый будет знать о найденных изъянах в системе защиты. Имейте в виду, что вы защищены против того, о чем вы знаете, но не против того, чего не знаете. Поэтому лучше поднять тревогу по поводу обнаруженных изъянов. Тем более что их устранение может оказаться непосильной задачей для систем с недоступными исходными текстами программ.
Вопрос: Когда я нахожу брешь в системе защиты, что я должен сделать? Ответ: Ваши действия подробно описаны в главе 18. У вас есть выбор: или обнародовать все сведения о найденной бреши, привлекая максимально возможное внимание производителя системы, или самому написать код по ее устранению, если это возможно.