Sunday, November 1, 2009

Проблемы обеспечения ИТ безопасности.


Данная статья несколько отличается от обычного круга материалов посвященных информационной безопасности.
Здесь не будет рассказа о новых продуктах уважаемых вендоров, красочных описаний внедрений новых систем и хвалебных отзывах о них. Эта статья не о новых угрозах и способах борьбы с ними. Эта статья о том , обычно остается за кадром и чем мало кто рассказывает. Она начинается там где остальные рассказчики заканчивают. Если бы мы говорили о сказке то можно было бы сказать, что я расскажу вам о том что происходит в сказке после фразы «и жили они долго и счастливо».
Итак, рассказ будет посвящен жизни систем и решений обеспечения ИТ безопасности после их внедрения и тем выводам и рекомендациям на которые эта жизнь наводит.
А жизнь это как раз обеспечение той ИТ безопасности ,о которой так много говорят, этими самыми системами , которых так много продают.

Колесо стандарта.
Начнем с самого начала - со стандарта ISO 27001, который нам диктует, как надо управлять информационной безопасностью.
В данном стандарте существует модель PDCA, описывающая этот процесс.

В самой логике модели заложено, то что это «колесо» должно вертеться, совершая оборот за оборотом, приводя к переоценке рисков после каждого внедрения компенсирующих мероприятий (а проще говоря технических средств и мероприятий для обеспечения безопасности ).
К сожалению, в реальной жизни, «колесо» получается несколько квадратным – совершит один два оборота и замирает. Компания считает себя полностью защищенной, почивает на лаврах собственной значимости и уверенности во внедренных решениях.
Хотя, именно постоянная эксплуатация систем обеспечения ИТ безопасности и постоянный мониторинг, позволяют точно проводить оценку рисков и правильно внедрять компенсирующие мероприятия, т.е. эффективно обеспечивать информационную безопасность компании..
В целом, эффективное обеспечение безопасности подразумевает наличие каких-то параметров эффективности. В данной статье мерой эффективности будут скорость и величина снижения рисков, а также финансы, затраченные на безопасность.
И если с рисками все понятно, то расходы на безопасность стоит рассмотреть подробнее
Расходы на безопасность.
Итак, расходы на обеспечение ИТ безопасности компании складываться из двух основных компонентов: первоначальных инвестиций в покупку системы и последующих затрат на поддержку и сопровождение. По первичным затратам более менее ясно. Компания идет на них с пониманием и с оценкой их необходимости, но вот расходы на дальнейшую поддержку трудно предсказать, а тем временем их стоимость порой может превышать стоимость самого внедрения.
Во сколько же обходится обеспечение ИТ безопасности средней компании?
60 - 80 тыс USD ежегодно.
В эту сумму входит примерно: 10 сенсоров системы обнаружения/предотвращения вторжений IPS/IDS, пара-тройка сканеров безопасности на 500 IP и одна система SIM. Не так уж много и далеко не все что находится в хозяйстве рачительного безопасника.
Стоит ли безопасность этих денег? Конечно – Да. Это бесспорно, безоговорочно и обжалованию не подлежит!
Но никто не мешает нам оптимизировать эти расходы исходя из практического опыта обеспечения безопасности. Кроме того, мы попробуем решить вопрос по оптимизации и другой статьи затрат – затрат на внедрения новых систем.
Итак, стандарт рассмотрели, меры оценки эффективности выбрали, целями оптимизации задались
Разнообразие систем обеспечения безопасности и моновендороность
Давайте рассмотрим, о каких системах обеспечения безопасности идет речь, дабы понять масштаб вопроса.
На данный момент системы обеспечения информационной безопасности обычно относят к одной или нескольким следующим категориям:
  • Защита периметра (Firewalls).
  • Системы обнаружения/предотвращения вторжений (IDS/IPS) как на уровне сети (LAN , WIFI), так и серверов (HIPS).
  • Прокси и реверс — прокси.
  • Системы контент — фильтрации.
  • Система управления обновлениями рабочих станций и серверов.
  • Антивирусная защита рабочих станций и серверов.
  • Web- антивирус и почтовые антивирусы.
  • Обеспечение безопасного удаленного доступа (IPsec and SSL vpn’s).
  • Защита web приложений (WAF).
  • Аутентификация, авторизация и учет (AAA).
  • Резервное копирование и восстановление.
  • PKI инфраструктура.
  • Системы шифрования и обеспечения целостности.
  • Система сбора и анализа событий безопасности (SIM).
  • Сканеры уязвимостей (как внутри корпоративной сети, так и ее периметра).
  • Системы IDM (Identity Management).
  • Системы SSO (Single Sign On).
  • Системы RMS (Rights Management System).
  • Системы защиты от утечек информации (DLP).
  • Системы управления всем этим хозяйством включая системы корреляции.
Список приличный, не так ли? Как вы понимаете, об этом задумались не только мы, но и вендоры, что привело к первому важному вопросу нашей статьи: Моно или мульти вендорность?
Итак, рассмотрим все плюсы и минусы моновендорности.
Итак, первый оборот колеса безопасности- внедрение новых систем. Давайте взглянем на это с точки зрения указанных выше мер эффективности обеспечения безопасности. Для начала определим тройку, на мой взгляд, основных подходов к построению систем обеспечения ИТ безопасности.
  1. Внедрение сложных многокомпонентных систем с самого начала (построение безопасности с 0 при достаточном финансировании)
  2. Эволюционный подход: замена существующих систем ИТ безопасности мощным интегрированным решением Enterprise level
  3. Эволюционный подход с сохранением устаревших систем после внедрения новой и последующей их совместной эксплуатацией
Внедрение сложных многокомпонентных систем с самого начала
Достаточно популярный подход, который опирается на устоявшиеся мнения:
  • Зачем разводить зоопарк разных систем
  • Лучше купить сразу правильное Enterprise решение
  • Несерьезно для такой солидной компании как наша заниматься внедрением простеньких систем, у нас же есть хороший бюджет на безопасность (Этот аргумент уже не столь часто звучит в новых экономических реалиях)
Исходя из данных мнений плюсы такого подхода, а также его простота очевидны.
А вот, те потенциальные проблемы, которые за этим скрываются:
  • Невозможность правильной формулировки требований ввиду отсутствия опыта эксплуатации систем в существующей инфраструктуре компании и ее бизнес процессах.
  • Возложение ответственности на вендора , интегратора или консультанта за выбор системы и ее конфигурацию (которые де факто по букве контракта ее не несут)
  • Завышенные представления о системе
  • Потеря времени при внедрении систем безопасности и во время опытной эксплуатации, которые не учтены в предложениях по интеграции
  • Отсутствие учета будущих угроз при формировании требований к будущей системе обеспечения ИТ безопасности.
Ну а теперь вместо слов, применим нашу меру эффективности – снижение рисков:
Как видно из графика перед началом реализации некоего проекта была проведена оценка рисков и принято решение минимизировать риск, оцененный значением 30. А далее идут стандартные вехи многих проектов: принятие решения, подписание контракта по результатам тендера, начало внедрения, опытная и, наконец, продуктивная эксплуатация.
Как видно из графика, риски начинают значительно компенсироваться только после окончания опытной эксплуатации. А ведь только тендерная процедура, не говоря уже о внедрении и опытной эксплуатации, занимает более месяца, а то и двух. И все это время риски не только не минимизируются, но и растут с изменением характера угроз, появления новых, на минимизацию которых решение изначально не рассчитывалось.
Эволюционные подходы.
Теперь рассмотрим два других подхода, по сути являющиеся вариациями эволюционной модели с небольшими отличиями в финальной фазе реализации.
Что, собственно, дает эволюционный подход и что это такое применительно к системам обеспечения безопасности ? В первую очередь, это накопление опыта эксплуатации систем в конкретной компании и в конкретных бизнес процессах .
Это идеальный путь выработки требований к сложным системам.
Основные плюсы эволюционного подхода развития систем безопасности в компании :
  • Снижение рисков безопасности с первой минуты (ввиду использования простых решений , не требующих сложной интеграции)
  • Переоценка требований к системе и ее возможностей.
  • Выявление ошибочных решений при небольших вложениях
  • Накопление опыта эксплуатации данной системы безопасности
  • Обучение персонала
В обоих подходах общие достоинства и недостатки за исключением одного показателя – общей надежности систем обеспечения безопасности компании
Ну и наш график эффективности:

Легенда графика говорит об open-source решениях, но это скорее пример, так как в качестве простого решения обеспечения безопасности может, и часто выступает, просто недорогое решение.
Основное отличие данного графика от предыдущего, именно в предварительной и частичной минимизации рисков простой системой с последующей ее заменой Enterprise решением. Более того, после запуска основного (Enterprise) решения в продуктивную эксплуатацию для минимизации изменившихся, за время внедрения, рисков можно и нужно начинать внедрение новой системы снижающей возросшие риски.
Обучение персонала.
Ест один маленький момент, который я намеренно не раскрывал во всех трех подходах, но который очень важен для их финансовой эффективности. Это вопрос - обучение персонала.
Сложившаяся на данный момент практика обучения персонала после выполнения подрядчиком всех работ по установке и интеграции решения, на мой взгляд, требует переворота вверх тормашками. А именно, обучения персонала до начала всех работ и возможно даже до начала тендерной процедуры.
Это снимет следующие потенциальные проблемы
  • Проблема того, что персонал, которому предстоит работать с будущей системой, узнает о ее маленьких нюансах после установки
  • Неполная занятость и понимание персонала во время интеграционных работ (полностью полагаются на поставщика ) + рост дополнительных расходов на консультантов (а их время ой как дорого)
  • невозможность точной формулировки требований к системе и завышенные (или заниженные) представления о ней (а это частая ошибка еще на этапе тендера)
  • плохо учтены особенности эксплуатации системы
Итак ,система установлена и работает. Все обучены, деньги на интеграции сэкономлены , риски снижены – эффективность просто потрясающая … казалось бы все. А вот как часто мы задумываемся о надежности?
Надежность систем обеспечения безопасности
Одной из задач информационной безопасности как раз и является контроль надежности информационных систем компании – ответит мне подкованный читатель, - тут и BCP (Business Continuity Plan) и учения по восстановлению после сбоя.
Да это все так, но вот какова надежность самих систем обеспечения безопасности?
Некоторые постулаты ясны изначально:
  • Вероятность выхода из строя систем безопасности зависит от их сложности
  • Системы безопасности обязаны быть надежнее классических ИТ систем и ,соответственно , кроме стандартных мер обеспечения надежности нужно применять нестандартные.
Понимание других проблем приходит из опыта эксплуатации:
  • Проблемы, связанные с закрытостью и нетривиальностью систем безопасности.
  • Недостаточная проработка решения с точки зрения эксплуатации (особенно характерно для аплайнсов, для которых часто используется дешевая аппаратная платформа с отсутствием возможности быстрой ее замены в случае выхода из строя).
  • Проблемы, связанные с недостаточной безопасностью самих систем безопасности.
  • Системы резервного копирования не предусмотрены, либо их возможности сильно ограничены.
  • Отсутствие самодиагностики для некоторых важных компонентов систем обеспечения ИТ безопасности.
    Поскольку статья-то практическая, я не могу обойтись без примеров:
    • Системы IDS - не все из них способны понять что SPAN- сессия разобрана
    • Некоторые SIM не поднимают тревогу, что система не шлет события
    • Системы сканирования могут отказывать после очередного обновления и требовать для установки XP c 1 SP
    • Встроенные в системы управления средства резервного копирования не заслуживают никакой критики (нет резервирования системных таблиц БД)
    • Громоздкость сканеров уязвимостей и их сложность. Отсутствие встроенных функций калибровки сканеров уязвимости путем сканирование системы с заранее известными брешами в безопасности.
Как мы можем практически улучшить показатели надежности систем обеспечения безопасности?
Использованием простых однокомпонентных и устаревших систем, как дополнительное средство обеспечения надежности. Как видно из графика, в случае выхода из строя основной системы обеспечения безопасности, риски безопасности по-прежнему будут скомпенсированы устаревшей системой. Более того, если основная система будет восстановлена максимально быстро, устаревшая система скомпенсирует риски безопасности в полном объеме и падения общего уровня защищенности информации компании не произойдет.
Ну что ж, мы правильно внедрили высоконадежные решения безопасности. Учли все факторы и т.д., и т.п.
И наконец-то у нас долгожданное спокойствие?
Не тут то было. Наша компания, как положено для средней - крупной корпорации продолжает развиваться и … возникает необходимость внедрить новую ИТ систему.
Внедрение новых ИТ систем и безопасность.
А это влечет за собой как интеграцию новой системы в корпоративную среду с переоценкой рисков безопасности, так и выполнения данных работ внешним поставщиками с доступом к вашей инфраструктуре и, наконец, удаленная поддержка данной системы поставщиком
В быстро растущей компании этот процесс происходит непрерывно и нам надо преодолевать возникающие сложности. И какие же практические решения возникших сложностей?
  • Необходимо разработать детальные требования ИТ безопасности для новых систем и вносить его как приложения к контракту на поставку решения и интеграцию
  • Обязательно проводить аудит безопасности решения перед передачей его в коммерческую эксплуатацию
  • Неприменимость рассмотрения поставляемой систему во время аудита как BlackBox - это ведет к неминуемому снижению уровня информационной безопасности компании в целом.
Будем честны до конца, вот какие потенциальные проблемы у вас возникнут при применении вышеуказанных рекомендаций:

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

Итак, система внедрена, проверена и тут возникает необходимость ее удаленной поддержки.
Существующая практика – осуществление поддержки продуктивных систем компании поставщиками.
Достаточно серьезной проблемой безопасности в данном случае являться как само предоставление удаленного доступа к продуктивному оборудованию, так и контроль действий поставщика в момент проведения работ.
Классическое на данный момент решение VPN on demand с одновременной активацией аккаунта поддержки на обслуживаемой системе не позволяет на 100% контролировать действия поддержки и проводить разбирательства в случае аварии на продуктивной системе.
Рекомендуемое и уже используемое решение – это терминальный сервер с расширенными функциями мониторинга и логирования протоколов удаленного управления (RDP, SSH, X-Window). На данный момент существуют какEnterprise решения, так и возможность реализовать подобное решение на недорогих компонентах для применения его в достаточно крупных компаниях.
Ключевой фактор успеха в таком нелегком деле как обеспечение информационной безопасности это конечно люди.
Профессионализм сотрудников
Ключевой фактор успеха в таком нелегком деле как обеспечение информационной безопасности это конечно люди.
Как же обеспечить высокий уровень квалификации персонала, слаженность их действий и постоянный уровень готовности?
На мой взгляд, ответом на этот вопрос, будет требование того, чтобы группа, отвечающая за информационную безопасность, осуществляла эксплуатацию как можно большего количества систем обеспечения безопасности. Это позволит сотрудникам группы досконально знать все уровни защищаемых информационных систем, поддерживать технические навыки и знания в актуальном состоянии и, самое главное, давать выполнимые рекомендации.
Итог
Казалось бы, рекомендации, рассмотренные в данной статье, идут в разрез со всем тем, что предлагают вендоры на рынке и направлением движения рынка. Ведь последние слово индустрии это - Security as a Service, предоставляемыми лидерами отрасли. При помощи данного сервиса крупные вендоры готовы за вас развивать инфраструктуру, анализировать уязвимости, эксплуатировать ваши системы безопасности и даже расследовать инциденты. Да все это так. Но когда стоимость высококлассных специалистов родной страны опускается до стоимости технической поддержки из Индии, когда годовая стоимость поддержки простых систем безопасности у вендора стоит больше чем само решение, я думаю самое время пересмотреть сложившиеся тенденции.

Sunday, October 18, 2009

Security requirements for new Information systems

Any company that taking care about information security should have a some security requirements or standard.
Usually it's huge and very formal document created for using within the company. It's OK.
But, what's happens when some new information system (product, solution ) have purchased from foreign supplier and going to integration with your corporate environment? Sure thing this new system must pass your security audit. Lucky you if everything ok. But what could you do if not? Even if couple of words about security exist inside contract or agreement with supplier you will spent a lot of time pushing him to close security holes and slow down whole integration and whole project.
From my point of view the best way to save your time and money is to create short and concrete document calling "Security requirement for new IS " and make whole this document a part of agreement with supplier.
Sample of this document you can find below :

General IS Security Requirements
1.Information systems (IS) should be installed with maximum possible level of security (“hardened” mode)
2.All unused or service accounts (including OS/application standard ones) should be disabled or deactivated
3.On IS must be started only those services and applications which are required for functioning of this IS or Company’s business-processes
4.Unauthorised installation and initiation of services which provide functioning of the data transmission network (i.e. DHCP, DNS, all type of PROXY, NTP, SMTP relay, Gating/Routing, LPD, VPN, etc) are strictly forbidden
5.All integrated IS should pass an obligatory technical audit in Infosec group, considering such phases:
System architecture concordance on the phase of supplier's choice or technical decision
Audit of technical document on the chosen decision or system
IT audit prior to putting IS into operation in accordance with Company’s statutory acts
6.After making considerable alterations to the system (equipment, OS or application upgrades) it obligatory to conduct technical audit like in p.5
7.Test and development systems/instances should not contain any confidential information, either contain it in coded, incomplete and/or distorted way

Privileged access requirements
1.Remote privileged user authentication should be forbidden everywhere where it is technically feasibly
2.Remote privileged access is allowed only in case of production necessity, considerable reasons and only with the use of secure protocols (ssh, sftp/scp, SecureVNC, etc)
3.All actions, which do not require privileged rights for its execution should be made on behalf of less privileged accounts

Audit requirements
1.All implementing IS should synchronize system time with the specially selected NTP-server, which is a part of network infrastructure
2.Logging should be switched on. If it is possible, log files should be stored in encrypted way at least three months locally, whereupon must be copied and kept remotely, at least, three years in specially designed system
3.Log files should contain at least the following information:
-Successful or unsuccessful registration attempts in the system
-Name of the executed operation
-Object of the operation
-User login
-Result of operation
-Date and time of the event
-All privileged users’ actions (at least system and administrative accounts)


Updates and antivirus software requirements
1.Security updates should be installed as soon as they become available. If its possible, such updates should be tested on test IS prior to installation
2.In case of unstable work of updates, supplier or company, carrying out IS support, owes in strictly stipulated in Agreement on support terms (but less than in seven days) to propose and implement alternative decision of the security issue
3.For IS based on Windows OS it is obligatory to use anti-virus software with the regular automatically bases updates
4.Operating systems and application software should be of the latest stable release or updated to those versions which provide maximal level of protection (absence of known vulnerabilities, described in different security bulletins, bugtracks)


Password and authentication requirements
1.Implementing IS should provide the obligatory authentication mechanism for users. Use of the systems which do not support this mechanism is forbidden
2.IS should not give out any information about system type and version or any prompts or “system banners” prior to successful completion of authentication procedures
3.Verification of input information (login, password) is carried out only after its complete input. In case of an error, the system must not specify, whether user name or password entered incorrectly. Password should not be displayed while being entered
4.Logical access to IS resources should be granted only after the successful user identification and authentication
5.It is forbidden to save password undisguised in IS, executable files, scripts, databases, on servers, etc.
6.Password storage and transmission between client and authentication server should be carried out in protected by cryptographic algorithms way or with the use of protected communication channels
7.Created or acquired IS should comply the following requirements:
To grant users an opportunity to choose their password independently (letter-digital combinations) and change it at any time
To control changing of the primary password set by administrator during first logon to the system and checks up its quality in compliance with certain requirements (length, structure requirements - small or capital letters, digits, non-trivial password, etc)
To provide forced changing of password through the preliminary set interval of time
To have an opportunity to notify users in advance about the necessity of password changing (by means of reports/prompts or emails)
If user password was not changed until the date, set in advance, the system should have an opportunity to block user account
Provides storage for user's password history, at least, for the last 12 months for prevention of repeated use
To have an opportunity to set amount of unsuccessful login attempts, whereupon user account should be blocked for certain period
To have an opportunity to predefine user session duration, whereupon it should be interrupted
8.Password file or database owe kept separately from application programs using cryptographic methods. Only proof algorithms should be used


Data storing and exchange requirements
External systems
1.Any confidential data exchange process through external channels should be carried out with the use of encrypted data channel, with the use of one of the following protocols:
HTTPS with key not less than 128 bit
SFTP
S/MIME with the use of PGP
Х25 data exchange channel or VPN
2.Remote software support can be carried out by suppliers only with the use of VPN
3.Whether it is impossibility to use transmission methods, described in p.6.1, any confidential or sensitive information should be encrypted with the use of proof cryptographic algorithms
4.If IS requires an access to the Company systems or databases, located in Company's intranet, these IS must consist at least of two servers (WEB/Gateway server/Reverse proxy and Application Server) for placing them in DMZ or Application Zone. It is also necessary that exchange by information between these servers was in encrypted
5.If IS supposed to work with customer individual information (mail for subscribers, state of accounts, baskets of electronic shops, etc) then encrypted protocols should be used (https, iiop/ssl)

DMZ
6.IS, located in DMZ, must not contain any confidential information in order to avoid its loss as a result of hack attacks from public networks
7.IS which is assumed to place in DMZ should be built exceptionally on products and operating systems, satisfying all security requirements and having good producer's support
8.Setting up of the servers, operating under OS Microsoft in DMZ is forbidden, except for the cases when supplier guarantees compensation of all direct and indirect damages in case of system compromising

Company’s network
9.Only secure protocols of interaction between servers and information systems should be used, if it is possible


Service Level Agreements
1.In case of finding out critical OS/application vulnerabilities, IS supplier owe if it is possible to undertake certain actions on the removal of these vulnerabilities (development or installing of patches/updates) within the time described in SLA, but noе more than 7 days from the moment of vulnerability detection/proper patch release

Friday, October 2, 2009

security asceticism-cmd port scanner

So, you have nothing except windows command promt and need to scan some IP and Port range?
And sure thing without any software installation.
It's easy ! Just type:

9/23/09
FOR /L %i IN (1,1,255) DO FOR /L %j IN (1,1,20)DO telnet 127.0.0.%i %j

Where 127.0.0. - first 3 of your IP range octets. i - range (1,1,255) of last IP octet.
j- port range.

In this sample i scan ip range 127.0.0.1 - 127.0.0.255 and port range from 1 till 20.

Tip; Do Not try to scan a big range - it takes ages!