Страницы

понедельник, 25 марта 2013 г.

Siemens устраняет уязвимости, обнаруженные экспертами Positive Technologies

Siemens выпустила несколько «заплаток», закрывающих ряд серьезных уязвимостей в продуктах компании. Проблемы безопасности были обнаружены в компонентах АСУ ТП — в средствах разработки и HMI. Были устранены более десятка уязвимостей, среди которых небезопасное хранение паролей, переполнение буфера, а также возможность создания «закладок» в файлах проектов SCADA.

вторник, 19 марта 2013 г.

SIEM для ИТ и ИБ

С появлением первых средств защиты информации возникли первые насущные вопросы: как узнать, что возведенные баррикады работают и защищают? как быстрее реагировать на оповещения? как понять, какие угрозы удалось предотвратить? Работает ли наш файерволл, можно узнать, выполнив ICMP ping: если правила в ACL (access control list) работают, то ответов, содержащих echo reply, быть не должно. Можно через консоль устройства просмотреть журнал событий, разбирая сотни или тысячи строк вручную и пытаясь увидеть отраженную или выявленную угрозу.

четверг, 14 марта 2013 г.

Руководство по выстраиванию звезд: kernel pool spraying и VMware CVE-2013-2406

Если вы возитесь с уязвимостями режима ядра в Windows, то рано или поздно приходится иметь дело с такой техникой, как kernel pool spraying (только не называйте ее «распыление ядерной кучи»). Думаю, умение держать под контролем поведение пула памяти ядра будет полезным для разработчика эксплойтов.

Чтобы осилить данную технику, необходимо иметь хотя бы примерное представление об устройстве пула ядра. В этой статье я постараюсь привести описание только значимых в контексте техники pool spraying деталей его реализации. Устройство пула ядра хорошо изучено, поэтому если вам все-таки нужны более глубокие познания, можете обратиться в любую поисковую службу или к ссылкам в конце статьи.

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

Существует несколько типов пулов, но все они имеют одинаковое строение (кроме особого пула (special pool), который используется утилитой проверки драйверов (driver verifier)). Каждый пул имеет управляющую структуру, называемую дескриптором пула. Помимо прочего, она хранит списки свободных блоков (chunk) пула, образующих свободное пространство пула. Сам пул состоит из страниц памяти. Они могут быть стандартными 4х-килобайтными или большими 2х-мегабайтными. Количество используемых страниц динамически регулируется.

Страницы пула ядра разделены на фрагменты разного размера – блоки (chunk). Именно блоки выделяются модулям ядра при запросе на выделение памяти из пула.

вторник, 5 марта 2013 г.

Соответствие стандартам и политикам в сканерах уязвимостей и SIEM

Английский термин compliance означает соответствие одному из высокоуровневых стандартов (таким как SOX, PCI DSS, Basel II, GLBA). Проводить проверку на соответствие этим документам необходимо для того, чтобы определить, насколько хорошо в вашей организации соблюдаются требования, описанные данными стандартами (разрешенная длина паролей, наличие внутренних регламентов и политик, время устранения уязвимостей и т. п.).

 Помимо международных стандартов существуют их отечественные аналоги, корпоративные политики и требования NIST.Проводить оценку соответствия этим документам также необходимо. Стандарты содержат наборы требований: выполнение всех требований стандарта фактически означает соответствие ему. Пример отдельного требования: «Должен иметься дисциплинарный процесс для служащих, которые произвели нарушение защиты» (ИСО/МЭК 2005 A.8.2.3).