Опубликован: 20.02.2006 | Доступ: свободный | Студентов: 2942 / 490 | Оценка: 4.22 / 3.75 | Длительность: 33:08:00
ISBN: 978-5-9556-0087-1
Лекция 1:

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

Лекция 1: 12345678 || Лекция 2 >

Достоинства ПО с открытыми исходными текстами

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

Стоимость

По этому показателю трудно превзойти бесплатную вещь! Хотя открытое ПО не обязательно бесплатное, по большей части оно является таковым. Наиболее распространенной лицензией ПО с открытыми исходными текстами служит лицензия GNU GPL, которая является лицензией бесплатного программного обеспечения. Другое открытое ПО может быть условно бесплатным или даже оплачиваемым авансом, как коммерческие серверы, доступные от RedHat. Но в любом случае ПО с открытыми исходными текстами доступно за часть стоимости коммерческих аналогов. Это существенно помогает при обосновании новых проектов по безопасности в вашей организации. Значительно легче получить одобрение для нового решения, если требуется лишь немного времени и, возможно, новый компьютер для работы программного обеспечения. Фактически, в зависимости от уровня ваших полномочий, можно реализовать его, не делая экономических обоснований.

Расширяемость

По определению, ПО с открытыми исходными текстами модифицируемо и расширяемо, при условии, что вы обладаете достаточной программистской подготовкой. Многие программы с открытыми исходными текстами поддерживают встроенные интерпретируемые языки, позволяющие создавать небольшие дополнительные модули, не обладая обширными познаниями в программировании. Nessus, сканер уязвимостей с открытыми исходными текстами, поддерживает язык сценариев NASL ( далее в книге вы найдете описание этого языка и научитесь писать специальные тесты системы безопасности). Snort, упомянутая выше система обнаружения вторжений с открытыми исходными текстами, позволяет создавать свои собственные определения сигналов тревоги. Это означает, что для контроля специфических требований организации можно легко написать соответствующую командную процедуру. Например, если имеется особо важный для организации файл customer.mdb, который должны использовать только определенные подразделения, то можно написать правило Snort, которое следит за перемещением этого файла в сети и предупреждает вас при подозрении на нарушение безопасности.

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

Безопасность

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

Независимость

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

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

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

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

Поддержка пользователей

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

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

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

Важный момент состоит в том, что вы общаетесь с людьми, которые хорошо знакомы с программным обеспечением (возможно даже с реальными разработчиками). Можно спросить у них о новых свойствах или прокомментировать недавние добавления. Вы в конце концов будете общаться с самыми яркими и наиболее опытными людьми в отрасли. Я многое узнал, просто следя за общением в списках почтовой рассылки.

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

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

Наконец, если вы действительно считаете, что должны заплатить за поддержку, то существуют компании, которые делают именно это для ПО с открытыми исходными текстами. Многочисленные Linux-компании предлагают поддерживаемые версии этой операционной системы. Для многих из наиболее популярных приложений также существуют компании, которые оказывают для них поддержку. Вы можете купить упакованную коробку с системой обнаружения вторжений Snort у нескольких компаний, которые будут поддерживать вас и предоставлять регулярные обновления. Таким образом, вы сможете получить такую же поддержку, которую предлагают коммерческие продукты, но сохранить при этом все преимущества открытого ПО.

Продолжительность жизни продукта

При использовании коммерческого ПО вы полностью во власти корпорации, которая владеет выбранным вами продуктом. Если это большая компания, такая как Microsoft, то вы, вероятно, в хорошем положении. Однако даже Microsoft может попытаться войти в рыночный сегмент, а затем бросить его и соответствующую линию продуктов. Более мелкие компании могут уходить из бизнеса, их могут покупать и поглощать. В наше время это происходит все чаще. Если компания, которая купила производителя, имеет конкурирующие продукты, то, скорее всего, они избавятся от одной из линий. Если они решат отбросить ваш продукт, то вам не повезло с будущей поддержкой. При закрытых исходных текстах продукта не существует возможности задать какие-либо вопросы или сделать в нем какие-либо обновления, если компания-производитель выходит из игры.

Проекты с открытыми исходными текстами никогда до конца не умирают. Это не значит, что они не переходят в спящий режим. Проекты постоянно уходят на обочину по мере того, как участники заканчивают университет или переходят к новому этапу своей карьеры. Это особенно распространено для небольших программ и инструментов. Более крупные программы (которые составляют большинство упомянутых в этой книге продуктов) всегда кем-то поддерживаются. Фактически иногда происходит борьба за власть в иерархии, чтобы контролировать проект. Однако если кому-то не нравится направление развития проекта, ничто не мешает создать свое ответвление и перевести проект в желаемое русло. Даже в маленьких проектах, где имеется только один разработчик, который больше не развивает его активно, можно просто продолжить с того места, где он был остановлен. А если вам надо исправить что-то или добавить свойство, то исходные тексты доступны и позволяют это сделать. С ПО с открытыми исходными текстами вы никогда не зависите от прихотей рынка или финансовых интересов компаний.

Обучение

Если вы хотите узнать, как работает программное средство безопасности или усовершенствовать свои навыки программирования, то ПО с открытыми исходными текстами прекрасно подходит для этого. Стоимость небольшая, поэтому не приходится выкладывать пару тысяч долларов за обучение. Если вы делаете это самостоятельно, то потребуется только компьютер для работы и соединение с Интернетом для загрузки программного обеспечения (или компакт-диск, приложенный к этой книге). Если вы делаете это для организации, то это самый дешевый учебный курс, который когда-либо санкционировался. Кроме того, организация получит дополнительную выгоду, так как вы сможете использовать новые знания для улучшения ее информационной безопасности, не тратя на это лишние деньги.

Конечно, вдумчивые программисты любят ПО с открытыми исходными текстами, так как они могут попасть прямо в сердце программы, и увидеть, как она работает. Это - лучший способ изучения, когда можно увидеть все исходные тексты, которые обычно хорошо документированы. Можно вносить изменения, добавлять новые свойства и расширять базовый код, что невозможно для программ с закрытыми исходными текстами. Самое большее, чего вы можете достичь с последними, - стать опытным пользователем; с открытыми исходными текстами вы сможете быть новатором и созидателем, если, конечно, захотите.

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

Репутация

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

Лекция 1: 12345678 || Лекция 2 >
Роман Попов
Роман Попов

После прохождения курса Стандарты инфрмационной безопасности мне предложено получение Удостоверения о повышении квалификации от НИУ ВШЭ по программе Менеджмент информационной безопасности. Программа включает в себя ряд курсов которые я уже ранее проходил. Какой порядок действий в данном случае? Как прозводится перезачет результатов? И какие экщамены мне надо еще доздать чтобы получить удостоверение?

Александр Путятинский
Александр Путятинский

Добрый день по окончании данного курса выдается сертификат?