Чтение онлайн

на главную - закладки

Жанры

Защита от хакеров корпоративных сетей

авторов Коллектив

Шрифт:

Вопрос: После нападений террористов 11 сентября на США особое значение приобрел вопрос использования террористами средств криптографии. Появились высказывания о предоставлении правительственным органам возможности расшифровки зашифрованных сообщений при помощи «потайной калитки», встроенной во все криптосистемы. Почему так нельзя сделать? Ответ: Наличие «потайной калитки» в криптографических алгоритмах, при помощи которой любой может расшифровать сообщение, – головная боль для всех пользователей криптографии. Вероятнее всего, ключи от «потайной калитки» будут храниться в одном месте, на которое тут же нацелятся хакеры. Как только хранилище ключей будет скомпрометировано, а рано или поздно это произойдет, все данные можно считать скомпрометированными. Кроме того, необходимо будет создать новую

бюрократическую машину, управляющую доступом через «потайную калитку». Возможно, она будет создана по образу и подобию нынешней организации подключения подслушивающих устройств. Потребуется также создание групп надзора, следящих за соблюдением законности. Дополнительно потребовалось бы дооснастить все эксплуатируемые криптосистемы «потайной калиткой», возможно, в виде комбинации открытого ключа и ключа доверия. Реализация новых программ шифрования потребовала бы месяцы на разработку и годы на внедрение. В этих условиях усилия хакеров сосредоточатся на взломе криптографических алгоритмов при помощи ключа доверия, в лучшем случае поставив под вопрос безопасность криптосистем.

Вопрос: Почему оказалось легко взломать CSS, технологию шифрования, используемую для защиты DVD-дисков от неавторизованного корирования? Ответ: Защита от копирования DVD-дисков была легко взломана в основном из-за того, что Xing Technologies хранило свой ключ в открытом виде. Ранее уже говорилось о недопустимости этого. Данные, записываемые на DVD-Video-диск, шифровались алгоритмом CSS (Content Scrambling System – система скремблирования содержания) с использованием 40-битного ключа. Зная 40-битный ключ Xing Technologies, одни хакеры смогли атакой «грубой силы» быстро взломать ключи еще на 170 лицензий. Таким способом джинн был выпущен из бутылки, если можно так выразиться, потому что шифр внутреннего формата многих производителей оказался раскрытым. Располагая таким большим количеством ключей, другие хакеры смогли написать программу DeCSS, которая позволяла копировать с DVD-диска зашифрованные данные на другой носитель в расшифрованном виде. В конечном счете схема CSS была обречена на провал. Нельзя полагать, что никто не сможет прочитать ключ, если он размещен в миллионах DVD-проигрывателей.

Глава 7 Непредвиденные входные данные

В этой главе обсуждаются следующие темы:

Опасность непредвиденных входных данных

Поиск обусловненных непредвиденными входными данными уязвимостей

Методы поиска и устранения уязвимостей, обусловленных непредвиденными входными данными

Использование средств безопасности языков программирования для обработки непредвиденных данных

Инструментарий обработки непредвиденных данных

· Резюме

· Конспект

· Часто задаваемые вопросы

Введение

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

Все Интернет-приложения должны быть доступны удаленным пользователям сети. Недостатки в программировании приложения из-за отсутствия опыта, ошибок или какой-либо неучтенной аномалии могут сделать его небезопасным. Сложные приложения часто разрабатываются поэтапно, небольшими модулями. При объединении модулей в единый проект возможные несогласованности в алгоритмах их работы влияют на уязвимость приложения в целом.

...

Служба компьютерной безопасности предупреждает!

Противостояние между

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

Уязвимость приложения сильно увеличивается, если в нем не предусмотрена защита от неверных входных данных. Список уязвимостей можно найти в описании любого сканера CGI (cgichk, whisker и т. д.). (CGI (Common Gateway Interface) – общий шлюзовой интерфейс. Разработанный NCSA сетевой стандарт, предназначенный для создания серверных приложений HTTP.) Большинство известных сканеров CGI уязвимы к атакам, основанным на вводе входных данных в непредусмотренном формате.

Опасность непредвиденных входных данных

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

Три класса атак основаны на непредвиденных входных данных.

1. Переполнение буфера. Когда злоумышленник вводит больше данных, чем предусмотрено разработчиком, то приложение может неправильно обработать избыточные данные. Языки С и С++ являются примером языков программирования, написанные на которых программы никак не отреагируют на избыточные данные, если программист не предусмотрел их обработку. Языки программирования Perl и PHP автоматически справляются с избыточностью данных, увеличивая размер области для хранения переменных. (Дополнительные сведения по переполнению буфера приведены в главе 8.)

2. Вызов системных функций. Введенные в приложение данные могут использоваться для вызова системных функций взаимодействия с ресурсом, который явным образом в приложении не описан, или изменить логику их работы. Системные функции позволяют запустить другое приложение, получить доступ к файлу и т. п.

3. Изменение логики работы приложения. Иногда входные данные представляются в формате, способно изменить логику работы приложения. Например, в результате представления данных в особом формате может быть нарушена работа алгоритмов аутентификации, изменены запросы языка структурированных запросов SQL (Structured Query Language – международный стандартный язык для определения реляционных баз данных и доступа к ним), а также получен доступ туда, куда обычно злоумышленник получить доступ не может.

Следует отметить, что четкой границы между этими классами атак нет. Поэтому некоторые атаки могут одновременно принадлежать нескольким классам одновременно.

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

Известны более изощренные атаки, которые основаны на включении во входные данные специальных метасимволов, имеющих особый смысл для приложения или операционной системы. В ядре базы данных Microsoft Jet была выявлена уязвимость: включение в SQL-запрос вертикальных линий (I) позволяло злоумышленнику выполнить в коде VBA (Visual BasicforApplications) системные команды. Этот же механизм лежит в основе популярной службы удаленных данных RDS (Remote Data Services), которая, как доказано практикой, является широко распространенной проблемой информационного сервера Интернет IIS (Internet Information Server) Windows NT.

Поделиться:
Популярные книги

Барон устанавливает правила

Ренгач Евгений
6. Закон сильного
Старинная литература:
прочая старинная литература
5.00
рейтинг книги
Барон устанавливает правила

Проданная невеста

Wolf Lita
Любовные романы:
любовно-фантастические романы
5.80
рейтинг книги
Проданная невеста

Шестой Дозор

Лукьяненко Сергей Васильевич
6. Дозоры
Фантастика:
городское фэнтези
8.07
рейтинг книги
Шестой Дозор

Чайлдфри

Тоцка Тала
Любовные романы:
современные любовные романы
6.51
рейтинг книги
Чайлдфри

Начальник милиции. Книга 4

Дамиров Рафаэль
4. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 4

Фараон

Распопов Дмитрий Викторович
1. Фараон
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Фараон

По воле короля

Леви Кира
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
По воле короля

Скандальный развод, или Хозяйка владений "Драконье сердце"

Милославская Анастасия
Фантастика:
попаданцы
фэнтези
5.00
рейтинг книги
Скандальный развод, или Хозяйка владений Драконье сердце

Метатель. Книга 4

Тарасов Ник
4. Метатель
Фантастика:
боевая фантастика
попаданцы
постапокалипсис
рпг
фэнтези
5.00
рейтинг книги
Метатель. Книга 4

Черный дембель. Часть 2

Федин Андрей Анатольевич
2. Черный дембель
Фантастика:
попаданцы
альтернативная история
4.25
рейтинг книги
Черный дембель. Часть 2

Закон ученого

Силлов Дмитрий Олегович
Снайпер
Фантастика:
героическая фантастика
боевая фантастика
5.00
рейтинг книги
Закон ученого

Сумеречный Стрелок 4

Карелин Сергей Витальевич
4. Сумеречный стрелок
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Сумеречный Стрелок 4

Шипучка для Сухого

Зайцева Мария
Любовные романы:
современные любовные романы
8.29
рейтинг книги
Шипучка для Сухого

Не грози Дубровскому!

Панарин Антон
1. РОС: Не грози Дубровскому!
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Не грози Дубровскому!