Уязвимости операционных систем windows

Уязвимости операционных систем windows

Дельта принтеры крайне требовательны к точности изготовления комплектующих (геометрия рамы, длины диагоналей, люфтам соединения диагоналей, эффектора и кареток) и всей геометрии принтера. Так же, если концевые выключатели (EndStop) расположены на разной высоте (или разный момент срабатывания в случае контактных концевиков), то высота по каждой из осей оказывается разная и мы получаем наклонную плоскость не совпадающая с плоскостью рабочего столика(стекла). Данные неточности могут быть исправлены либо механически (путем регулировки концевых выключателей по высоте), либо программно. Мы используем программный способ калибровки.
Далее будут рассмотрены основные настройки дельта принтера.
Для управления и настройки принтера мы используем программу Pronterface.
Калибровка принтера делится на три этапа:

1 Этап. Корректируем плоскость по трем точкам

Выставление в одну плоскость трех точек — A, B, C (расположенных рядом с тремя направляющими). По сути необходимо уточнить высоту от плоскости до концевых выключателей для каждой из осей.
Большинство (если не все) платы для управления трехмерным принтером (В нашем случае RAMPS 1.4) работают в декартовой системе координат, другими словами есть привод на оси: X, Y, Z.
В дельта принтере необходимо перейти от декартовых координат к полярным. Поэтому условимся, что подключенные к двигателям X, Y, Z соответствует осям A, B, C.(Против часовой стрелки начиная с любого двигателя, в нашем случае смотря на логотип слева — X-A, справа Y-B, дальний Z-C) Далее при слайсинге, печати и управлении принтером в ручном режиме, мы будем оперировать классической декартовой системой координат, электроника принтера сама будет пересчитывать данные в нужную ей систему. Это условность нам необходима для понятия принципа работы и непосредственной калибровки принтера.

Точки, по которым мы будем производить калибровку назовем аналогично (A, B, C) и позиция этих точек равна A= X-52 Y-30; B= X+52 Y-30; C= X0 Y60.

Алгоритм настройки:

  1. Подключаемся к принтеру. (В случае “крагозяб” в командной строке, необходимо сменить скорость COM порта. В нашем случае с 115200 на 250000 и переподключится)

    После чего мы увидим все настройки принтера.
  2. Обнуляем высоты осей X, Y, Z командой M666 x0 y0 z0.
    И сохраняем изменения командой M500. После каждого изменения настроек необходимо нажать home (или команда g28), для того что бы принтер знал откуда брать отсчет.
  3. Калибровка принтера производится “на горячую”, то есть должен быть включен подогрев стола (если имеется) и нагрев печатающей головки (HotEnd’а) (Стол 60град., сопло 185 град.) Так же нам понадобится щуп, желательно металлический, известных размеров. Для этих задач вполне подойдет шестигранный ключ (самый большой, в нашем случае 8мм, он предоставляется в комплекте с принтерами Prizm Pro и Prizm Mini)
  4. Опускаем печатающую головку на высоту (условно) 9мм (от стола, так, что бы сопло еле касалось нашего щупа, т.к. высота пока что не точно выставлена.) Команда: G1 Z9.
  5. Теперь приступаем непосредственно к настройке наших трех точек.
    Для удобства можно вместо g- команд создать в Pronterface четыре кнопки, для перемещения печатающей головки в точки A, B, C, 0-ноль.
  • Последовательно перемещаясь между тремя точками (созданными ранее кнопками или командами) выясняем какая из них находится ниже всего (визуально) и принимает эту ось за нулевую, относительно нее мы будем менять высоту остальных двух точек.
  • Предположим, что точка A у нас ниже остальных. Перемещаем головку в точку B(Y) и клавишами управления высотой в Pronterface опускаем сопло до касания с нашим щупом, считая величину, на которую мы опустили сопло (в лоб считаем количество нажатий на кнопки +1 и +0.1)
    Далее командой меняем параметры высоты оси Y: M666 Y <посчитанная величина>
    M666 Y0.75
    M500
    G28
  • Ту же операцию проделываем с оставшимися осями. После чего следует опять проверить высоту всех точек, может получится, что разброс высот после первой калибровки уменьшится, но высота все равно будет отличатся, при этом самая низкая точка может изменится. В этом случае повторяем пункты 6-7.
  • 2 Этап. Исправляем линзу

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

    Корректируется этот параметр т.н. дельта радиусом, который подбирается экспериментально.

    Калибровка:

    1. Отправляем головку на высоту щупа в любую из трех точек стола. Например G1 Z9 X-52 Y-30
    2. Сравниваем высоту центральной точки и высоту точек A,B,C. (Если высота точек A, B, C разная, необходимо вернутся к предыдущей калибровки.)
    3. Если высота центральной точки больше остальных, то линза выпуклая и необходимо увеличить значение дельта радиуса. Увеличивать или уменьшать желательно с шагом +-0,2мм, при необходимости уменьшить или увеличить шаг в зависимости от характера и величины искривления (подбирается экспериментально)
    4. Команды:
      G666 R67,7
      M500
      G28
    5. Подгоняем дельта радиус пока наша плоскость не выровняется
    3 Этап. Находим истинную высоту от сопла до столика

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

    • Командой M114 выводим на экран значение фактической высоты нашего HotEnd’а
    • Командой M666 L получаем полное значение высоты (Параметр H)
    • После чего вычитаем из полной высоты фактическую высоту.
    • Получившееся значение вычитаем из высоты щупа.

    Таким образом мы получаем величину недохода сопла до нижней плоскости, которое необходимо прибавить к полному значению высоты и и записать в память принтера командами:
    G666 H 235.2
    M500
    G28

    2 Способ:
    Второй способ прост как валенок. С “потолка”, “на глаз” прибавляем значение высоты (после каждого изменение не забываем “уходить” в home), добиваясь необходимого значения высоты, но есть шанс переборщить со значениями и ваше сопло с хрустом шмякнется об стекло.

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

    Уязвимости Windows. Взгляд изнутри

    Уязвимости Windows. Взгляд изнутри

    Уязвимости Windows. Взгляд изнутри

    Предлагаем Вашему вниманию вторую часть статьи О.М. Бойцева об уязвимостях ОС Windows, которые наиболее часто используются злоумышленниками.Первую часть статьи читайте в № 1-2 журнала «Информационная безопасность» за 2006 г.

    Нулевой сеанс: добро пожаловать!

    Наверное, многие из читателей не раз встречались с выражение типа «удаленный взлом через NetBIOS». Ну что ж, попытаемся внести ясность и наполнить данное выражение смыслом. Нулевой сеанс, который реализуется посредством протокола NetBIOS, используется в Windows-сетях для диагностических целей, что, впрочем, не исключает его использования в совершенно другом «амплуа». Дело в том, что создание нулевого сеанса не требует аутентификации соединения, что может быть с легкостью использовано в злонамеренных целях. Чтобы установить null session (нулевой сеанс, или анонимное подключение), необходимо ввести пустое имя пользователя и пустой пароль, при этом для анонимного подключения всегда открыт специальный ресурс IРС$ (inter-process communication). Для того чтобы соединиться с ресурсом IPC$, выполняется следующая команда: c:\>net use \\[IP-адрес]\ipc$ «» /user:»»

    Анонимный доступ имеет ряд ограничений, но с помощью этого инструмента возможно многое, а именно: просматривать и модифицировать отдельные ветви реестра; запускать User Manager и просматривать список существующих пользователей и групп; запускать Event Viewer и другие средства удаленного администрирования. В системах NT4 и Win2k и по сей день можно встретить данный непропатченный баг. Кстати, ликвидировать возможность подключения через IPC$ можно занесением значения «1» в ключ реестра «HKEY_LOCAL_MACHINE \System\CurrentControlSet\Control\ LSA Name: RestrictAnonymous», также желательно прикрыть в настройках вашего брандмауэра 139-й порт, который, собственно, и является дверью для IPC$.

    Функции хэширования паролей

    Для хранения и обработки таких атрибутов пользователя, как пароли в ОС Windows NT и ей подобных, используется SAM (Security Accounts Manager — администратор учетных записей в системе защиты). SAM размещает всю информацию в одноименной базе данных, которая находится по адресу %SystemRoot%\system32\config. Забегая вперед, необходимо сказать, что именно SAM-файл является наиболее ценным трофеем, пропустив который через соответствующий софт, можно получить пароли от текущих учетных записей. Но в данном случае, учитывая тему статьи, нас в большей степени интересует не взлом как таковой, а баг, посредством которого брут (от англ. brute — грубый, в контексте brute force — взлом грубой силой) имеет место быть.

    В ОС Windows NT для защиты паролей используются две однонаправленные хэш-функции (хеш-функция — алгоритм, используемый для генерации хеш-кодов цифровых объектов, в нашем случае паролей). В системе Windows присутствуют LM-хэш (Lan Manager хэш) и NT-хэш (Windows NT). Наличие двух аналогичных функций необходимо для совместимости со старыми ОС. Алгоритм LM-хэш изначально был разработан Microsoft для операционной системы OS/2, он интегрирован в Windows 95/98, Windows for Workgroups и частично в Windows 3.1. Хэш Windows NT был разработан специально для ОС Microsoft Windows NT. На страже LM-хэша стоит известный алгоритм шифрования DES; NT-хэш держится на алгоритме шифрования MD4. Как при локальном, так и при удаленном способах входа в систему, SRM (Security Reference Monitor — «смотрящий» за безопасностью — служба, работающая в режиме ядра, контролирующая безопасность системы посредством таких компонентов, как LSA — Local Security Authority; уже упомянутого SAM -Security Accounts Manager; AD -Active Directory и ряда других) сначала пытается идентифицировать NT-хэш. Если его нет,тогда SRM пытается проверить подлинность LM-хэша. А теперь внимание! Вот, собственно, и момент истины. Создание LM-хэша происходит по алгоритму, который вряд ли кто-либо осмелится назвать криптостойким. Посмотрим, как «элегантные брюки превращаются в шорты»:

    1.Пароль преобразуется в 14-символьную строку.

    2.Комбинация символов переводится в верхний регистр.Полученное 14-байтовое значение разбивается на две 7-байтовых части.

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

    Эпикриз: независимо от длины выбранного пароля «окно» обрежет его до 14 символов, после чего переведет полученное значение в верхний регистр. Все, что надо сделать «злоадмину», — это взломать два семисимвольных пароля;-).

    Прокомментировать такой расклад можно по-разному, и было бы удивительно, если бы никто не возразил: «Постойте, все не так уж и плохо, как Вы тут нам написали! Ведь для исправления сложившейся ситуации Microsoft выпустила гораздо более защищенный протокол NTLMv2, присутствующий уже в 3-м Service Pack-е для Windows NT 4.0. и, наконец, в Windows 2000 и XP для сетевой аутентификации был введен протокол Kerberos, криптостойкость которого на порядок выше!» Оно-то так. Но дело в том, что для совместимости со старыми системами в Windows опять-таки используются все предыдущие протоколы. И если компьютеры Windows 2000/XP не в состоянии идентифицировать друг друга через Kerberos, они автоматически переходят на использование все тех же NTLM или LMЕ.

    Содержание

    • Содержание
    • Введение
    • I ПРОБЛЕМА УЯЗВИМОСТИ ОПЕРАЦИОННЫХ СИСТЕМ
    • 1.1 Причины уязвимостей
    • 1.2 Уязвимости ОС Windows
    • 1.3 Уязвимости ОС UNIX
    • 1.4 Статистика найденных уязвимостей
    • 1.5 Уязвимости Windows 10
    • 1.6 Уязвимости Windows 8.1
    • 1.7 Уязвимости Windows 7
    • 1.8 Уязвимости в Windows XP
    • II МОДЕЛЬ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПО ОБНАРУЖЕНИЮ И УСТРАНЕНИЮ УЯЗВИМОСТЕЙ
    • Заключение
    • Литература

    Введение

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

    ОС Windows является наиболее популярной. Как видно на рисунке 1.1, чаще всего пользователи используют ОС Windows 7, сразу за ней следует Windows 10. Эти системы обладают огромным функционалом, но, из-за этого также имеют массу уязвимостей.

    Рис.1.1 — Статистика использования ОС

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

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

    Таким образом, необходимо рассмотреть наиболее распространенные уязвимости в ОС Windows , виды их применения, а также способы устранения.

    I ПРОБЛЕМА УЯЗВИМОСТИ ОПЕРАЦИОННЫХ СИСТЕМ

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

    1.1 Причины уязвимостей

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

    Обычно уязвимость позволяет атакующему «обмануть» операционную систему — заставить её совершить действие, на которое нет прав. Это делается путём внедрения каким-либо образом в модули данных или кода в такие места, что операционная система воспримет их как «свои». Некоторые уязвимости появляются из-за недостаточной проверки данных, вводимых пользователем, и позволяют вставить в интерпретируемый код произвольные команды ( SQL-инъекция , XSS ). Другие уязвимости появляются из-за более сложных проблем, таких как запись данных в буфер без проверки его границ ( переполнение буфера ).

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

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

    Для обеспечения защищённости и целостности системы необходимо постоянно следить за ней: устанавливать обновления, и использовать инструменты, которые помогают противодействовать возможным атакам. Уязвимости обнаруживались во всех основных операционных системах, включая Microsoft Windows, Mac OS, различные варианты UNIX (в том числе GNU/Linux) и OpenVMS. Так как новые уязвимости находят непрерывно, единственный путь уменьшить вероятность их использования против системы — постоянная бдительность.

    1.2 Уязвимости ОС Windows

    Наиболее распространённая в настоящее время на подключенных к интернету компьютерах операционная система Microsoft Windows содержит множественные опасные уязвимости. Чаще всего хакерами используются уязвимости в IIS, MS SQL и Internet Explorer, а также системах обработки файлов и сервисах сообщений самой операционной системы.

    Уязвимость в IIS, подробно описанная в Microsoft Security Bulletin MS01-033, является одной из наиболее часто используемых уязвимостей Windows. В последние годы было написано множество сетевых червей , пользующихся данной уязвимостью, но одним из наиболее известных является CodeRed . CodeRed был впервые обнаружен 17 июля 2001 года, и, по некоторым оценкам, заразил около 300 тысяч компьютеров, помешал работе множества предприятий и нанёс значительный финансовый ущерб компаниям по всему миру. Хотя Microsoft и выпустила вместе с бюллетенем MS01-033 патч , закрывающий используемую червём уязвимость, некоторые версии CodeRed до сих пор продолжают распространяться.

    Сетевой червь Spida , обнаруженный спустя почти год после появления CodeRed, использовал для своего распространения открытость в MS SQL. Некоторые стандартные инсталляции MS SQL не защищали паролем системный аккаунт «SA», позволяя любому человеку с доступом к системе через сеть запускать на ней на исполнение произвольные команды. При использовании этой уязвимости, червь открывает аккаунту «Guest» полный доступ к файлам компьютера, после чего производит загрузку самого себя на заражаемый сервер.

    Сетевой червь Slammer , обнаруженный в конце января 2003 года, использовал более простой способ заражения компьютеров под управлением Windows с работающим сервером MS SQL, а именно — уязвимость при переполнении буфера в одной из подпроцедур обработки UDP-пакетов. Поскольку червь был достаточно мал — всего 376 байт — и использовал протокол UDP, предназначенный для быстрой пересылки малых объёмов данных, Slammer распространялся с невероятной скоростью. По некоторым оценкам, Slammer поразил порядка 75 тысяч серверов по всему миру за первые 10 минут эпидемии.

    Три этих характерных сетевых червя использовали уязвимости и открытости в программах, работающих на разных версиях Microsoft Windows, в то время как обнаруженный 11 августа 2003 года червь Lovesan использовал для своего распространения гораздо более опасную уязвимость при переполнении буфера в одном из основных компонентов самой Windows. Эта уязвимость подробно описана в Microsoft Security Bulletin MS03-026.

    Sasser , впервые появившийся в мае 2004 года, использовал еще одну уязвимость в компоненте ядра Windows, в службе Local Security Authority Subsystem Service (LSASS). Информация об этой уязвимости была опубликована в Microsoft Security Bulletin MS04-011. Sasser распространялся молниеносно и заразил миллионы компьютеров, причинив огромный финансовый ущерб.

    1.3 Уязвимости ОС UNIX

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

    Годами одной из наиболее популярных открытостей в мире UNIX была служба finger. Эта служба позволяет пользователям вне какой-либо сети видеть, кто в настоящее время к этой сети подключен, с каких компьютеров и какие сетевые ресурсы используются. Finger полезен, но раскрывает слишком много интересной хакерам информации (таблица 1.1).

    Таблица 1.1 – Результат работы службы finger .

    Из этой таблицы всем умеющим пользоваться службой finger становится доступна следующая информация: к сети подключено три пользователя, но два из них не обращались к ресурсам уже более двух суток, в то время как последний отошел от своего компьютера 22 минуты назад. Логины, которые демонстрирует сервис finger, можно использовать в процессе подбора комбинации логин-пароль. Это самый элементарный путь проникновения в систему, поскольку множество пользователей подбирают себе пароли на основе все тех же логинов (например, добавляя в конце логина какие-либо цифры).

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

    Программа sendmail, изначально созданная Эриком Олмэном (Eric Allman), представляет собой еще один пример популярной цели для хакеров. Sendmail была разработана для осуществления пересылки электронной почты через интернет. Из-за большого числа операционных систем и компьютерных конфигураций Sendmail постепенно стала чудовищно сложной программой с длительной и поучительной историей обнаружения критических уязвимостей. Все тот же червь Morris использовал для своего распространения эксплойт уязвимости в sendmail наравне с уязвимостью в службе finger.

    В мире UNIX есть множество других часто используемых уязвимостей в программных пакетах вроде SSH, Apache, WU-FTPD, BIND, IMAP/POP3 и в различных частях ядра ОС.

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

    1.4 Статистика найденных уязвимостей

    Таблица 1.2 – Статистика найденных уязвимостей.

    Общее число уязвимостей за 2017 год

    Общее число уязвимостей за 2016 год

    Общее число уязвимостей за все время ведения статистики

    Windows Server 2016

    Таблица 1.2 — Продолжение

    Windows Server 2008

    Windows Server 2012

    Как показывает статистика, самое большое количество уязвимостей наблюдалось в ОС Linux . А среди ОС семейства Windows – в последней версии продукта от Microsoft , Windows 10.

    1.5 Уязвимости Windows 10

    Windows 10 — операционная система для продуктов корпорации Microsoft, впервые появилась в 2014 году. Общее число пользователей по данным весны 2017 года перевалило за 500 миллионов.

    Windows до сих пор многими людьми считается самой «дырявой» ОС. Как показал нам Android, это уже не так. По данным за 2017 год Windows 10 содержит 255 уязвимостей, в то время как у ее знаменитого соперника macOS —236.

    Рис. 1.5.1 — Статистика уязвимостей в Windows 10

    Из зафиксированных на данный момент 40 уязвимостей, которые привели к DoS, нет тех, что набрали 10 баллов, потому берем для рассмотрения те, что идут следом (рисунок 1.5.1).

    Уязвимость №1 (Рис. 1.5.2)

    atmfd.dll в библиотеке Adobe Type Manager позволяло удаленно организовать DoS посредством созданного OpenType шрифта.

    Уязвимость №2 (Рис. 1.5.2)

    HTTP.sys позволял устроить DoS через созданные запросы HTTP 2.0.

    Уязвимость №3 (Рис. 1.5.2)

    Неустановленный вектор использования уязвимости, приводивший к DoS.

    Рис. 1.5.2 –Табличное представление уязвимостей категории «DoS» в Windows 10

    Из зафиксированных на данный момент 42 уязвимостей, которые привели к обходу, нет тех, что набрали 10 баллов, потому берем для рассмотрения те, что идут следом.

    Уязвимость №1 (Рис. 1.5.3)

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

    Уязвимость №2 (Рис. 1.5.3)

    Task Scheduler (планировщик задач) позволял локальному пользователю обойти ограничения системных файлов и удалить любой их них. Вектор не установлен.

    Уязвимость №3 (Рис. 1.5.3)

    CSRSS не могу правильно управлять маркерами процесса, что позволяло локальному пользователю получить привилегии через созданное приложение.

    CSRSS — Процесс исполнения клиент-сервер.

    Рис. 1.5.3 — Табличное представление уязвимостей категории «Обход чего-либо» в Windows 10

    4 уязвимости из 110 набрали 10 баллов.

    Уязвимость №1 (Рис. 1.5.4)

    ОС позволяла злоумышленникам получить контроль над системой, когда Windows Search не удавалось обработать объекты в памяти.

    Уязвимость №2 (Рис. 1.5.4)

    ОС позволяла взломщику удаленно исполнить команду на машине жертвы посредством того, как Windows Search обрабатывал объекты памяти.

    Уязвимость №3 (Рис. 1.5.4)

    ОС позволяла удаленное исполнение кода, когда ей не удавалось правильным образом обработать DNS ответы.

    Рис 1.5.4 — Уязвимости категории «Исполнение кода» в Windows 10

    Из 14 уязвимостей повреждения памяти нет таковых, что заслужили 10 баллов. Рассмотрим тех, что идут следом.

    Рис 1.5.5 — Табличное представление уязвимостей категории «Повреждение памяти» в Windows 10

    Уязвимость №1 (Рис. 1.5.5)

    The Imaging Component позволял злоумышленнику повредить память через созданный им документ.

    Уязвимость №2 (Рис. 1.5.5)

    Animation Manager позволял исполнить код за счет созданного веб-сайта.

    Уязвимость №3 (Рис. 1.5.5)

    Media Foundation позволял исполнить код за счет созданного веб-сайта.

    Доступ к информации

    Среди 140 уязвимостей не было критичных. Максимальный балл — 7.2.

    Уязвимость №1 (Рис. 1.5.6)

    Драйверы в режиме ядра могли дать аутентифицированному злоумышленнику возможность исполнить созданное им приложение для получения информации или даже DoS.

    Уязвимость №2 (Рис. 1.5.6)

    GDI (Graphics Device Interface) позволял обойти механизм защиты ASLR через неустановленный вектор.

    Уязвимость №3 (Рис. 1.5.6)

    ActiveSyncProvider позволял взломщику обнаружить учетные данные жертвы, используя неудачную попытку Universal Outlook установить безопасное соединение.Рис. 1.5.6 — Табличное представление язвимостей категории «Доступ к информации» в Windows 10

    Из 127 только 2 уязвимости набрали 10 баллов.

    Уязвимость №1 (Рис. 1.5.7)

    Драйверы в режиме ядра давали пользователю возможность получить привилегии через созданное им приложение.

    Уязвимость №2 (Рис. 1.5.7)

    Графические компоненты в ядре позволяли локальному пользователю получить привилегии через созданное им приложение.

    Уязвимость №3 (Рис. 1.5.7)

    Драйвер CLFS позволяли локальному пользователю получить привилегии через созданное им приложение.

    CLFS — Common Log File System, подсистема, доступная как в режиме пользователя, так и в режиме ядра, необходимая для создания транзакционных логов. Рис 1.5.7 — Уязвимости категории «Увеличение привилегий» в Windows 10

    Максимальный балл в данной категории для данной ОС составил 9.3.

    Уязвимость №1 (Рис. 1.5.8)

    Компонент Windows Uniscribe предоставлял возможность удаленно исполнить код за счет неудачной попытки обработать объекты памяти.

    Уязвимость №2 (Рис. 1.5.8)

    Microsoft JET Database Engine давал взломщику полный контроль над системой, за счет определенного способа обработки им объектов памяти.

    Уязвимость №3 (Рис. 1.5.8)

    Microsoft JET Database Engine давал взломщику полный контроль над системой, за счет определенного способа обработки им объектов памяти.Рис 1.5.8 — Уязвимости категории «Переполнение» в Windows 10

    На данный момент самой большой проблемой в ОС Windows 10 является безопасность данных. Как мы видим по вышеуказанным данным именно уязвимостей, дающих доступ к информации и увеличивающих привилегии, зафиксировано больше всего. Вокруг десятки кружится целый вихрь споров, скандалов и судебных исков, по большей степени связанных с обновлениями, которые не спрашивают разрешения у пользователя. Также серьезные опасения вызывает факт сбора практически любой пользовательской информации с целью «улучшения работы». Многим, это нарушение конфиденциальности не понравилось.

    1.6 Уязвимости Windows 8.1

    Windows 8.1 — операционная система пользовательского типа семейства Windows NT, выпущенная 17 октября 2013. Является переходной между Windows 8 и Windows 10.

    Рис. 1.6.1 — Статистика уязвимостей в Windows 8.1

    Всего — 52. 10 баллов — 0 (рис. 1.6.1).

    Уязвимость №1 ( рис. 1.6.2 )

    usp10.dll в Uniscribe позволял добавить в файл шрифта EMF+ запись, что открывало возможность исполнить код или привести к DoS.

    Уязвимость №2 ( рис. 1.6.2 )

    MSXML 3.0 позволял через созданный XML контент устроить DoS.

    Уязвимость №3 ( рис. 1.6.2 )

    atmfd.dll в библиотеке Adobe Type Manager позволял удаленному злоумышленнику устроить DoS через созданный им OpenType шрифт.Рис.1.6.2 — Уязвимости категории «DoS» в ОС Windows 8. 1

    56 уязвимостей всего, из которых 0 набрали 10 баллов.

    Уязвимость №1 ( рис. 1.6.3 )

    ОС позволяло взломщику обойти протоколы безопасности песочницы приложений и провести некие действия в реестре через созданное приложение.

    Уязвимость №2 ( рис. 1.6.3 )

    ОС позволяло взломщику обойти протоколы безопасности песочницы приложений и провести некие действия в файловой системе через созданное приложение.

    Уязвимость №3 ( рис. 1.6.3 )

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

    Из 155 всего 7 уязвимостей набрали 10 баллов.

    Уязвимость №1 ( рис. 1.6.4 )

    ОС позволяло взломщику получить контроль над системой, когда Windows Search не справлялся с обработкой объектов памяти.

    Уязвимость №2 ( рис. 1.6.4 )

    ОС позволяло взломщику получить контроль над системой, когда Windows Search не справлялся с обработкой объектов памяти.

    Уязвимость №3 ( рис. 1.6.4 )

    ОС позволяла удаленно исполнить произвольный код, поскольку не могула обработать DNS ответы.

    Рис 1.6.4 — Уязвимости категории «Исполнение кода» в ОС Windows 8.1

    Всего уязвимостей обнаружено было 24, но 10 баллов не набрала не одна.

    Уязвимость №1 ( рис. 1.6.5 )

    Компонент Imaging позволял удаленному взломщику исполнить код через созданный документ.

    Уязвимость №2 ( рис. 1.6.5 )

    Animation Manager позволял удаленному взломщику исполнить код через созданный веб-сайт.

    Уязвимость №3 ( рис. 1.6.5 )

    Media Foundation позволял удаленному взломщику исполнить код через созданный веб-сайт.

    Рис. 1.6.5. — Уязвимости категории «Повреждение памяти» в ОС Windows 8.1

    Доступ к информации

    Всего обнаружено 152 уязвимости. 0 набрали 10 баллов.

    Уязвимость №1 ( рис. 1.6.6 )

    Драйверы режима ядра ОС позволяли локальному аутентифицированному пользователю исполнить созданное приложение для получения информации.

    Уязвимость №2 ( рис. 1.6.6 )

    Реализация Group Policy (групповая политика) не правильно распределяла пароли, что давало возможность завладеть учетными данными и получить привилегии, используя доступ к SYSVOL.

    Уязвимость №3 ( рис. 1.6.6 )

    win32k.sys в драйверах режима ядра давал возможность локальным пользователям завладеть информацией из памяти ядра через приложение.

    Рис 1.6.6 — Уязвимости категории «Доступ к информации» в ОС Windows 8.1

    Всего — 161. 10 баллов — 2.

    Уязвимость №1 ( рис. 1.6.7 )

    Драйверы режима ядра ОС позволяли локальному пользователю получить привилегии через созданное приложение.

    Уязвимость №2 ( рис. 1.6.7 )

    Компонент Graphics в ядре ОС давал возможность локальным пользователям получить привилегии через созданное приложение.

    Уязвимость №3 ( рис. 1.6.7 )

    Уязвимость обхода каталогов в ОС позволяло удаленному взломщику получить привилегии через созданный путь в исполнительном файле.Рис 1.6.7 — Уязвимости категории «Увеличение привилегий» в ОС Windows 8.1

    Всего уязвимостей — 53. 10 баллов — 1.

    Уязвимость №1 ( рис. 1.6.8 )

    Переполнение буфера в службе Telnet позволяло исполнить произвольный код через созданные пакеты.

    Уязвимость №2 ( рис. 1.6.8 )

    icardie.dll позволял удаленным взломщикам исполнить код или вызвать DoS через созданную веб-страницу, на которую следует зайти через Internet Explorer.

    Уязвимость №3 ( рис. 1.6.8 )

    Программное переполнение в GDI позволяло исполнить произвольный код или привести к DoS через созданное изображение в документе Windows Write (.wri), который неправильно обрабатывался WordPad-ом.

    Рис 1.6.8. — Уязвимости категории «Переполнение» в ОС Windows 8.1

    Практически во всех категориях уязвимостей отсутствуют критические случаи. Больше всего дыр, как и в более ранних версиях ОС Windows, категорий «доступ к информации» и «увеличение привилегий». Первые могут при эксплойте привести к потере данных, а вторые — к активации зловредного ПО, путем увеличения его привилегий.

    1.7 Уязвимости Windows 7

    Windows 7 — операционная система пользовательского типа семейства Windows NT, вышедшая 22 октября 2009 года. На данный момент уже существует и набирает обороты новая версия ОС семейства Windows — это Windows 10. Но несмотря на прогресс, семерка остается в лидерах по популярности, занимая примерно 25% рынка. Если же рассматривать исключительно продукты Microsoft, то Windows 7, среди прочих версия (в том числе и 8, и 10) занимает 40%.

    Рис. 1.7.1 — Статистика уязвимостей в Windows 7

    Всего — 90. 10 баллов — 3 (рис. 1.7.1).

    Уязвимость №1 ( рис. 1.7.2 )

    SMB клиент неправильно проверял поля в SMB записи ответов, что позволяло SMB серверам и злоумышленникам исполнять код, приводить к DoS через созданный SMBv1 или SMBv2 ответ.

    Уязвимость №2 ( рис. 1.7.2 )

    SMB клиент неправильно проверял поля в SMB записи ответов, что позволяло SMB серверам и злоумышленникам исполнять код, приводить к DoS через созданный SMBv1 или SMBv2 ответ.

    Уязвимость №3 ( рис. 1.7.2 )

    Создавая задачу для печати через Print Spooler открывало возможность устроить DoS.

    Рис. 1.7.2 — Уязвимости категории «DoS» в ОС Windows 7

    Всего — 56. 10 баллов — 0.

    Уязвимость №1 ( рис. 1.7.3 )

    ОС, когда IMJPDCT.EXE был установлен, позволяла удаленному взломщику обойти протоколы безопасности песочницы через созданный PDF документ.

    Уязвимость №2 ( рис. 1.7.3 )

    ОС позволяла взломщику обойти протоколы безопасности песочницы приложений и провести некие действия в реестре через созданное приложение.

    Уязвимость №3 ( рис. 1.7.3 )

    ОС позволяла взломщику обойти протоколы безопасности песочницы приложений и провести некие действия в файловой системе через созданное приложение.Рис. 1.7.3 — Уязвимости категории «Обход чего-либо» в ОС Windows 7

    Всего — 237. 10 баллов — 23.

    Уязвимость №1 ( рис. 1.7.4 )

    ОС позволяла удаленно исполнить произвольный код из-за того как Windows Search обрабатывал объекты памяти.

    Уязвимость №2 ( рис. 1.7.4 )

    ОС позволяла удаленное исполнение кода когда не справлялась с обработкой DNS ответов.

    Уязвимость №3 ( рис. 1.7.4 )

    Microsoft .NET Framework 1.0 SP3, 1.1 SP1 и 2.0 SP1 неверно проверял .NET код, что позволяло удаленному взломщику получить доступ к стек памяти, и исполнить произвольный код, через созданное XAML приложение для браузера или ASP.NET приложение или .NET Framework приложение.

    Рис. 1.7.4 — Уязвимости категории «Исполнение кода» в ОС Windows 7

    Всего — 49. 10 баллов — 3.

    Уязвимость №1 ( рис. 1.7.5 )

    SMB клиент в Microsoft Windows Server 2008 R2 неправильно проверял поля в SMB записи ответов, что позволяло SMB серверам и злоумышленникам исполнять код, приводить к DoS через созданный SMBv1 или SMBv2 ответ.

    Уязвимость №2 ( рис. 1.7.5 )

    SMB клиент в Microsoft Windows Server 2008 R2 неправильно проверял поля в SMB записи ответов, что позволяло SMB серверам и злоумышленникам исполнять код, приводить к DoS через созданный SMBv1 или SMBv2 ответ.

    Уязвимость №3 ( рис. 1.7.5 )

    Создавая задачу для печати через Print Spooler открывало возможность повредить память.

    Рис. 1.7.5 — Уязвимости категории «Повреждение памяти» в ОС Windows 7

    Доступ к информации

    Всего — 173. 10 баллов — 0.

    Уязвимость №1 ( рис. 1.7.6 )

    Драйверы режима ядра ОС позволяли локальному аутентифицированному пользователю исполнить специально созданное приложение для получения информации.

    Уязвимость №2 ( рис. 1.7.6 )

    Реализация Group Policy (групповая политика) не правильно распределяла пароли, что давало возможность завладеть учетными данными и получить привилегии, используя доступ к SYSVOL.

    Уязвимость №3 ( рис. 1.7.6 )

    win32k.sys в драйверах режима ядра давал возможность локальным пользователям завладеть информацией из памяти ядра через созданное приложение.Рис. 1.7.6 — Уязвимости категории «Доступ к информации» в ОС Windows 7

    Всего — 333. 10 баллов — 2.

    Уязвимость №1 ( рис. 1.7.7 )

    Драйверы режима ядра ОС позволяли локальным пользователям получить привилегии через создание приложение.

    Уязвимость №2 ( рис. 1.7.7 )

    Компонент Graphics в ядре ОС давал возможность локальным пользователям получить привилегии через созданное приложение.

    Уязвимость №3 ( рис. 1.7.7 )

    Состояние гонки в реализации SMB клиента позволяло удаленным SMB серверам увеличить привилегии через созданный SMB ответ согласования.

    Рис. 1.7.7 — Уязвимости категории «Увеличение привилегий» в ОС Windows 7

    Всего — 110. 10 баллов — 6.

    Уязвимость №1 ( рис. 1.7.8 )

    Создавая задачу для печати через Print Spooler пошло привести к программному переполнению.

    Уязвимость №2 ( рис. 1.7.8 )

    Функция DSA_InsertItem в Comctl32.dll неверно выделяла память, позволяя удаленному злоумышленнику исполнить код через созданное значение в аргументе на ASP.NE веб-приложение.

    Уязвимость №3 ( рис. 1.7.8 )

    Переполнение буфера в службе Telnet позволяло исполнить произвольный код через созданные пакеты.

    Рис. 1.7.8 — Уязвимости категории «Переполнение» в ОС Windows 7

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

    Согласно новому отчету, опубликованному недавно, 90% критических уязвимостей в Windows 7 могут быть закрыты посредством использования учетной записи стандартного пользователя взамен записи администратора.

    Согласно анализу уязвимостей Microsoft за 2009 год (PDF), проведенному BeyondTrust, лишение пользователя прав администратора также может защитить от использования всех дыр в защите Office, обнаруженных в прошлом году, 94% уязвимостей Internet Explorer и 100% уязвимостей IE8, обнаруженных в прошлом году, и 64% от всех уязвимостей в продуктах Microsoft, обнаруженных за этот отрезок времени.

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

    В Vista компания Microsoft добавила технологию User Account Control (UAC), чтобы ограничить пользователей в использовании определенных приложений.

    Когда вы сталкиваетесь с чем-то, что требует повышенных привилегий, от вас потребуют предоставить ваши администраторские учетные данные для входа в систему, но в большинстве корпоративных конфигураций у обычных пользователей их нет – сказал директор по маркетингу BeyondTrust Скотт МакКарли (Scott McCarley). Он также добавил, что недавние изменения в UAC в Windows 7 не затронули обычных пользователей.

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

    Директор отделения Windows Client Product Management Пол Кук (Paul Cooke) в ответ на просьбу прокомментировать выводы, сделанные в отчете, сказал, что компания действительно позволила пользователям выполнять дополнительный набор операций Windows без необходимости работать с правами администратора .

    Мы считаем, что работа пользователей в режиме стандартного пользователя является хорошей практикой для Windows, ее экосистемы и всех наших пользователей” – сказал он. “Мы надеемся, что с помощью UAC независимые поставщики программного обеспечения продолжат адаптировать свои приложения под работу с правами обычных пользователей.

    При составлении отчета BeyondTrust проанализировали около 75 бюллетеней безопасности, опубликованных Microsoft за прошлый год, которые устранили в общем счете около 200 уязвимостей.

    При всем этом, из-за присутствующих уязвимостей в ОС Window 7, получил свое распространение в сети вирус Wannacry . Младшие версии ОС защищены не слишком хорошо. Все это привело к тому, что неожиданная атака данного вируса поразила более 200 000 персональных компьютеров в примерно 150 странах. К сожалению, полная картина происходящего пока неизвестна, специалисты занимаются выяснением всех подробностей атаки. Уже сейчас публикуются некоторые интересные детали. Например, «Лаборатория Касперского» выяснила, что более 97% зараженных компьютеров работают на Windows 7. О зараженных ПК и ноутбуках под управлением Windows XP почти ничего не слышно — обычно такие системы заражаются самими пользователями, которые изучают новый зловред. Указанные выше данные привел Костин Райю, руководитель Global Research and Analysis Team в «Лаборатории Касперского».

    В Windows 7 также присутствует уязвимость, которая позволяет получать права администратора, а также менять пароли уже существующих пользователей. Она заключается в запуске командой строки от имени системы и изменения учетных записей пользователей с помощью команд » net user » и » net localgroup «.

    1.8 Уязвимости в Windows XP

    В апреле 2014 года Microsoft прекратила поддержку Windows XP. На данный момент не известно о существующих уязвимостях в Windows XP, которые могут быть использованы злоумышленниками. Впрочем, это не означает, что пользователи неподдерживаемой ОС могут чувствовать себя в безопасности и не переживать за свои данные. График нахождения уязвимостей в Windows XP (рис. 1.8.1) показывает, что их обнаруживают довольно равномерно. Например, после окончания поддержки была найдена критическая уязвимость в Internet Explorer 8, который по умолчанию установлен на компьютерах под управлением Windows XP. Значит, скорее всего в ближайшее время пользователей ждет появление новых уязвимостей. В связи с высокой распространенностью системы в мире, Windows XP сегодня – лакомый кусок для злоумышленников, поскольку крайне велика финансовая выгода от атаки киберпреступниками.

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

    Рис. 1.8.1 — Количество уязвимостей, обнаруженных в Windows XP Home Edition с 2003 по 2014 годы.

    Также существуют нестандартные сборки Windows XP , но они с точки зрения безопасности ничем не лучше, поскольку сторонние разработчики всего лишь перетасовывают компоненты ОС и добавляют свои, не исправляя уязвимости в компонентах ОС. Кроме того, часто за это отвечают разработчики, которые не являются специалистами по работе с механизмами работы ОС. В таких ситуациях часто бывают отключены необходимые для работы ОС сервисы или удалены важные компоненты. В результате продукты работают нестабильно. Бывали случаи и откровенно опасных сборок. Например, одна из сборок Windows XP Zver CD содержала в себе программу удаленного управления RAdmin. Это позволяло любому желающему, без ведома пользователя, управлять удаленно ПК, работающим на такой сборке.

    В старых версиях Windows XP межсетевой экран был по умолчанию выключен, а после включения он фильтровал данные только в одном направлении, что исключено в современных ОС. Также в Windows XP отсутствует поддержка механизмов защиты операционной системы и данных, которые мешают зловредному ПО закрепиться в системе, такие как UEFI, Trusted boot, ELAM, Bitlocker. Все эти технологии доступны в Windows 8. В Windows XP не было полноценной антивирусной защиты, поэтому приходилось использовать либо сторонние антивирусные программы либо дополнительно устанавливать Microsoft Essentials. В Windows 8 полноценный антивирус Defender уже включен в поставку ОС бесплатно. В результате Windows XP в 6 раз чаще заражается зловредным кодом, чем Windows 8 (рис. 1.8.2), несмотря на то, что обе операционные системы сталкиваются со зловредным кодом довольно часто.

    Рис. 1.8.2 — Доля зараженных и потенциально уязвимых ПО с различными операционными системами.

    II МОДЕЛЬ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПО ОБНАРУЖЕНИЮ И УСТРАНЕНИЮ УЯЗВИМОСТЕЙ

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

    Для модели была создана небольшая база данных, которая также была подключена к приложению. Ниже представлено главное меню, где есть возможность выбрать исследуемую систему (рисунок 7).

    Рис. 7. — Главное меню

    Для каждой операционной системы представлены виды уязвимостей (рисунок 8, 9, 10).

    Рис.8. — Уязвимости Windows 10

    Рис. 9 . — Уязвимости Windows 8.1

    Рис.10. — Уязвимости Windows 7

    В категории Windows 7, для уязвимости «Привелегии», в качестве примера, представлена кнопка, которая запускает внешнюю программу, которая в свою очередь устраняет уязвимость. В качестве такой программы используется приложение командной строки ( bat ), в котором прописан соответствующий код, который запрещает системе изменять файл sethc . exe , отвечающий за залипание клавиш.

    Заключение

    Таким образом, были исследованы наиболее распространенные и уже известные уязвимости Microsoft Windows , и, несмотря на то, что операционная система постоянно обновляется, а разработчики пытаются своевременно устранять обнаруженные уязвимости, пользователи продолжают находить новые «дыры» в системе. Компания Microsoft даже некоторое время предлагала денежное вознаграждение за обнаружение недостатков работы их программистов.

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

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

    В созданном программном обеспечении создана функция, позволяющая устранить рассмотренную уязвимость.

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

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

    Читайте также:  Аналоги outlook для windows
    Оцените статью