После прохождения курса Стандарты инфрмационной безопасности мне предложено получение Удостоверения о повышении квалификации от НИУ ВШЭ по программе Менеджмент информационной безопасности. Программа включает в себя ряд курсов которые я уже ранее проходил. Какой порядок действий в данном случае? Как прозводится перезачет результатов? И какие экщамены мне надо еще доздать чтобы получить удостоверение? |
Средства анализа и управления
Рождение проекта с открытыми исходными текстами
Моя консультационная компания активно применяет Nessus и Snort. Мы также используем ACID для управления системами обнаружения вторжений. Нам требовалось аналогичное средство для управления сканированиями Nessus. Хотя в NPI имеются некоторые очень удобные возможности, он все же не вполне удовлетворял наши потребности. Нам нужно было инициировать сканирования через web-интерфейс, а не только просматривать последние результаты. Мы также пришли к выводу, что ручной импорт результатов каждого сканирования труден и отнимает много времени. У нас десятки сканирований, которые нужно выполнять в самое разное время, и, поскольку они обычно принадлежат различным организациям, их следует отслеживать раздельно. На самом деле мы хотели иметь средство, управляющее различными конфигурациями сканирования, планирующее их, выполняющее их автоматически и импортирующее результаты в соответствующую базу данных.
Мы не смогли найти средства с открытыми исходными текстами, удовлетворяющего всем перечисленным требованиям, поэтому мы оказались перед выбором: искать подходящий коммерческий продукт или выполнить собственную разработку. Как оказалось, даже коммерческие сканеры уязвимостей предлагали не совсем то, что требовалось для планирования и отслеживания данных сканирования различных клиентов. Очевидно, написание нового сканера уязвимостей "с нуля" было бы непродуктивным. Поэтому была выдвинута идея разработки дополнительного модуля для Nessus в качестве проекта с открытыми исходными текстами. Мы рассмотрели ряд вопросов, чтобы понять, насколько это целесообразно. Если вы собираетесь писать свою программу с открытыми исходными текстами, вам следует сделать то же, принимая во внимание следующие факторы.
Нет ли уже чего-то подходящего?
Прежде всего, поищите в Web, нет ли каких-либо средств, делающих то, что вам нужно. Посмотрите в таких местах, как Sourceforge.net и Freshmeat.net, используйте Google и другие поисковые машины. Велика вероятность, что для решения вашей задачи что-то уже существует. Если будет найдено "почти, но не совсем то", возможно, это можно использовать в качестве основы или вспомогательного средства при создании своей программы, как мы и сделали в случае NPI. Даже если ничего не существует, можно найти некоторые ответы на часто задаваемые вопросы или сайты с полезной для проекта информацией. Во время исследования вы можете также найти людей с аналогичной проблемой, желающих участвовать в проекте.
Имеет ли ваша программа широкую область применения?
Если решаемая проблема специфична для вашей организации, то, вероятно, нет смысла связываться с проблемами выпуска ее как продукта с открытыми исходными текстами. Пошлите несколько сообщений в подходящие телеконференции, чтобы проверить, есть ли к данной теме какой-то интерес. При отсутствии интереса можно остановиться на внутреннем проекте. Однако даже в небольших отраслях обычно имеются схожие потребности в приложениях, а Интернет сделал мир еще меньше. Подумайте обо всех случаях, когда вы искали что-то весьма необычное и все же находили, потому что кто-то в Web решил, что это стоит опубликовать. Поэтому, если есть хоть какой-то интерес, учреждайте проект с открытыми исходными текстами!
Разрешено ли вам выпускать свой продукт как открытое ПО?
Если задуманный проект входит в ваши обязанности наемного работника, убедитесь, что вам разрешат открыть исходные тексты. Если это часть большой собственной программы организации, то маловероятно, что исходные тексты позволят открыть. Однако, если это самостоятельная программа, то с учетом выгод дополнительной критики и помощи сторонних разработчиков, а также бесплатной рекламы, вполне вероятно, что руководство возражать не будет. Проясните этот вопрос, прежде чем начать распространение исходных текстов, если дорожите своей работой.
Мы прошли через этот процесс и решили, что по приведенным выше соображениям стоит разработать собственное дополнение к Nessus как проект с открытыми исходными текстами. Мы назвали эту программу Nessus Command Center (NCC). Вы присутствуете на публичной премьере этой программы.
Nessus Command Center (NCC) |
---|
Авторы/основные контакты: Tony Howlett, Brian Credeur, Matt Sisk, Lorell Hathcock Web-сайт: http://www.netsecuritysvcs.com/ncc Платформы: Linux, большинство UNIX Рассмотренная версия: . 01b Список почтовой рассылки: Общая дискуссия и вопросы о NCC. Направьте электронное письмо со словом "subscribe" в теле или в теме по адресу ncc@netsecuritysvcs.com. |
Появление NCC обусловлено имевшейся у нас потребностью в средствах управления для автоматизации сканирования и более качественного анализа результатов. Описанное выше средство NPI вполне успешно импортирует данные Nessus в базу данных, но не решает вопросов планирования, да и интерфейс оставляет желать лучшего. Чтобы не изобретать колесо, мы применили в нашем проекте web-интерфейса составные части NPI и добавили модули управления и планирования. Проект преследовал цель создания следующих сущностей:
- Платформа управления для Nessus-сканирования. Нам требовалось средство отслеживания сканирований для различных организаций с различными конфигурациями и даже различных групп организаций. Как консультационная компания, мы имеем дело с множеством различных организаций. У нас даже есть посредники, заказывающие для других организаций сканирование с использованием нашей инфраструктуры. Мы хотели получить единую панель управления всеми этими разнородными сущностями, сохраняя их разделенность.
- База данных расписаний и интерфейс для Nessus. Первой целью была разработка способов каталогизации данных сканирований, планирования сканирований и их автоматического выполнения. Мы хотели иметь возможность отслеживать различные сущности, так как сканирования будут проводиться в интересах многих организаций. Должен существовать административный уровень для создания и планирования сканирований, а также потенциальная возможность для клиентов входить и модифицировать определенные части своей конфигурации сканирования, такие как время, сканируемые хосты и т.д. База данных должна поддерживать web-интерфейс, так как наши заказчики и агенты, обращающиеся к системе для настройки своих сканирований, могут располагаться вне нашего межсетевого экрана.
- Интерфейс базы данных для результатов Nessus. Эта цель уже была частично достигнута в программе NPI, но мы хотели улучшить интерфейс, который представлялся нам рудиментарным и не поддерживал, например, многопользовательский доступ с различными уровнями полномочий. Мы планировали использовать NPI в качестве основы для этой части программы. А так как NPI имеет лицензию GPL, и наша программа будет иметь лицензию GPL, это не будет создавать никаких проблем.
- Web-интерфейс для настройки всех параметров Nessus. На самом деле, это необязательное требование. При изучении проблемы мы обнаружили, что в большинстве сканирований применяется лишь около пяти различных конфигураций. Однако было бы удобно иметь возможность настраивать все возможные параметры сканирования Nessus прямо из Web, не загружая клиента Nessus. Это позволяет вводить параметры сканирования прямо из офиса заказчика или из любого другого места. Мы осмотрелись и обнаружили еще один проект с открытыми исходными текстами, называемый Inprotect, который предлагал web-интерфейс для Nessus. Код был выпущен с лицензией GPL, поэтому мы могли использовать его в качестве руководства к нашим действиям в этой области. В связи со сложной природой данной задачи мы решили, что эта возможность не будет присутствовать в бета-версии.