Ваша операционная система не поддерживает алгоритм хеширования sha 256 dr web

Обновлено: 01.07.2024

Проекты по обеспечению безопасности для системных и сетевых специалистов

Леонидас Делигианнидис, . Хамид Р. Арабния, Новые тенденции в безопасности ИКТ, 2014 г.

Присваивание в хеш-функциях

Криптографические хэш-функции играют важную роль в современных коммуникационных технологиях. Входными данными для хэш-функции является файл или поток любого размера, а выходными данными является цифровое представление файла фиксированного размера, которое обычно не превышает 1 КБ и служит отпечатком исходного файла (часто называемым дайджестом сообщения). Невозможно восстановить исходный файл только по отпечатку пальца. Более того, изменение одного бита информации во входных данных приведет к значительному изменению отпечатка пальца. Эти алгоритмы предназначены для предотвращения столкновений. Другими словами, очень маловероятно, что два сообщения, M и M', создадут один и тот же отпечаток с помощью криптографической хеш-функции H: Н(М) != Н(М'). Многие криптографические хеш-функции основаны на так называемом алгоритме MD4, первоначально предложенном в [14], и им было уделено наибольшее внимание.

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

Шифрование данных

Доктор. Бхушан Капур, д-р Прамод Пандья, Кибербезопасность и защита ИТ-инфраструктуры, 2014 г.

Криптографические хеш-функции

Криптографическая хэш-функция должна удовлетворять трем критериям:

Сопротивление второму прообразу (слабое сопротивление столкновению)

Высокое сопротивление столкновению

Сопротивление прообразу

Дано сообщение m и хеш-функция hash, если задано значение хеш-функции h=hash(m), должно быть трудно найти любое m такое, что h=hash(m).

Сопротивление второму прообразу (слабое сопротивление столкновению)

Учитывая входные данные m1, должно быть сложно найти другое сообщение m2, такое что hashing)=hash(m2) и что m1≠m2

Высокая устойчивость к столкновениям

Должно быть сложно найти два сообщения m1≠m2, такие что hash(m1)=hash(m< под>2). Хэш-функция принимает входную n-битную строку фиксированного размера и создает выходную m-битную строку фиксированного размера, такую, что m меньше, чем n в длину. Первоначальная хэш-функция была определена Мерклем-Дамгардом и представляет собой итерированную хеш-функцию. Эта хэш-функция сначала разбивает исходное сообщение на блоки фиксированного размера размером n. Затем устанавливается исходный вектор H0 (дайджест), который объединяется с блоком сообщений M1 для получения дайджеста сообщения H1. , который затем объединяется с M2 для создания дайджеста сообщения H1, и так далее, пока последний блок сообщения не создаст окончательный дайджест сообщения.

Дайджесты сообщений MD2, MD4 и MD5 были разработаны Роном Ривестом. MD5 в качестве входного блока размером 512 бит и создает дайджест сообщения размером 128 бит [1] .

Алгоритм безопасного хеширования (SHA) был разработан Национальным институтом стандартов и технологий (NIST). SHA-1, SHA-224, SHA-256, SHA-384 и SHA-512 являются примерами алгоритма безопасного хеширования. SHA-512 создает 512-битный дайджест сообщения.

Введение и историческая справка

Нихад Ахмад Хассан , Рами Хиджази , методы сокрытия данных в ОС Windows , 2017 г.

Криптографическая хэш-функция

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

Хеширование широко используется в системах информационной безопасности и судебных экспертизах. Если мы хотим отправить зашифрованный файл, мы сначала вычислим хэш файла. Затем мы зашифруем файл вместе с сгенерированным хеш-номером (мы можем поместить его в текстовый файл) и отправим получателю. Получатель расшифрует файл и рассчитает свой хэш-код. Если оба хэша одинаковы, очень высока вероятность того, что сообщение не было подделано [11] .

Идеальная криптографическая хеш-функция обладает четырьмя основными свойствами [12]:

Несложно вычислить хеш-значение для любого заданного сообщения.

Почти невозможно сгенерировать сообщение из заданного хэша.

Невозможно изменить сообщение, не изменив хэш.

Невозможно найти два разных сообщения с одинаковым хешем.

Существует множество различных алгоритмов хеширования: например, MD2, MD5, SHA и SHA-1.

Как рассчитать хэш файла?

Многие инструменты можно использовать для вычисления хэша файла на компьютерах с Windows ®. Febooti Hash & CRC – это очень простой в использовании инструмент (рис. 1.11).

< бр />

Рисунок 1.11. Вычислите хэш с помощью инструмента Hash/CRC.

Чтобы установить его на свой компьютер, выполните следующие действия: 1.

Загрузите файл на свой компьютер (его размер 0,9 МБ, он работает как на 32-, так и на 64-разрядных машинах).

После установки программы щелкните правой кнопкой мыши любой файл, хэш которого вы хотите вычислить, и выберите Свойства.

В окне "Свойства" выберите вкладку Хеш/CRC.

Идентификация файлов и профилирование

Джеймс М. Акилина, Криминалистика вредоносных программ, 2008 г.

Хэш-значения

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

Другие образцы вредоносного ПО при выполнении участвуют в так называемой маскировке процессов, iii методе защиты от судебной экспертизы, при котором код переименовывает себя, чтобы выглядеть как законный или обычный процесс. Например, многие варианты вредоносного кода Agobot при выполнении переименовывают себя в «lsass.exe», распространенный процесс операционной системы в среде Windows XP, часто остающийся незамеченным неискушенным пользователем компьютера, который может лишь изредка проверять диспетчер задач Windows на наличие аномальных процессов. iv Третьи при выполнении вредоносного двоичного файла могут заставить вредоносное ПО «звонить домой» и подключаться к сети только для того, чтобы загрузить дополнительные вредоносные файлы и обновить себя. Такие случаи делают бесценным наличие хеш-значения MD5 исходного образца. Независимо от того, копирует ли файл себя в новое место, извлекает файлы из исходного файла, обновляет себя с удаленного веб-сайта или просто маскирует себя с помощью переименования, похожего на звук, сравнение значений MD5 для каждого образца позволит определить, являются ли образцы те же или новые образцы, которые требуют независимого анализа. Для выполнения этой задачи доступно несколько инструментов хеширования MD5.

Использование слабых сторон платформы

Майк Шема, взлом веб-приложений, 2012 г.

Заблуждение сложных манипуляций

На самом деле злоумышленник может легко обнаружить начальные числа с помощью грубой силы против наблюдаемых хэшей. С этого момента легко начать перебирать идентификаторы пользователей. Алгоритм SHA-256 генерирует 256-битное число, но он не может расширить случайность начального числа, используемого для генерации хэша. Например, миллиард идентификаторов пользователей соответствует примерно 23-битному числу, что на несколько порядков меньше 256-битного вывода. Следовательно, злоумышленнику нужно всего лишь перебрать 2 23 возможных числа, чтобы выяснить, как создаются идентификаторы пользователей, или для обратного сопоставления хэша с его начальным числом.

Дружественные и опасные разведданные

Крис Сандерс, Джейсон Смит, Applied Network Security Monitoring, 2014 г.

Хеш-реестр вредоносных программ Team Cymru

Самый быстрый способ идентифицировать любой файл — это его криптографический хеш. Из-за этого большинство файлов однозначно идентифицируются по их хэшу; обычно MD5, но иногда SHA1. Это выгодно, потому что для идентификации файла можно использовать одно значение хеш-функции независимо от его имени. Мы уже видели случаи, когда и Malwr, и ThreatExpert идентифицируют файлы, используя эти хэши, поэтому вполне логично, что кому-то будет относительно легко составить список хэшей известных вредоносных программ. Именно это и сделала Team Cymru.

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

Результаты двух из этих запросов показаны на рис. 14.24.

< бр />

Рисунок 14.24. Запрос хэш-реестра вредоносных программ Team Cymru

На приведенном выше рисунке мы выполняем два запроса, каждый из которых возвращает три столбца.Первый столбец содержит само значение хеш-функции. Второй столбец содержит отметку времени (в формате эпохи, которую можно преобразовать в местное время с помощью команды date –d) последнего времени наблюдения хэша. В третьем столбце показано процентное количество антивирусных модулей обнаружения, которые классифицировали файл как вредоносный. В первом представлении мы видим, что файл был обнаружен как вредоносный 79% антивирусных ядер. Во второй отправке указано NO_DATA для этого поля, что означает, что в хеш-реестре нет записи для этого хеш-значения. Реестр хэшей вредоносных программ не будет хранить записи о хеш-значениях, вероятность обнаружения которых ниже 5%.

Хэш-реестр вредоносных программ Team Cymru может быть полезен для индивидуального анализа подозрительных файлов, но из-за большого количества способов запроса базы данных он также хорошо подходит для автоматического анализа. Например, Bro предоставляет функциональные возможности для использования своей инфраструктуры извлечения файлов (глава 10) в сочетании со своей интеллектуальной структурой (глава 8) для выборочного извлечения файлов и автоматического сравнения их хэшей с хэш-реестром. Это невероятно ценно с точки зрения обнаружения и может облегчить задачу анализа события.

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

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

Подтвердите личность пользователя

Томас Портер , Майкл Гоф , Как обмануть безопасность VoIP , 2007 г.

Надежная беспроводная инфраструктура против глушения атак

Сотовые сети

Каналы координации (управления) необходимы для работы сетей сотовой связи. Примером может служить использование широковещательных каналов управления в сотовых сетях для отправки системного доступа и управляющей информации. В широко распространенной сотовой сети GSM несколько каналов управления используются для различных функций [15, 16]. Широковещательные каналы, такие как канал управления широковещательной передачей (BCCH), канал синхронизации (SCH) и канал частотной коррекции (FCH), несут идентификатор сети/соты, структуру текущих каналов управления и информацию о синхронизации. соответственно. Общие каналы управления (CCCH), такие как канал предоставления доступа (AGCH) и пейджинговый канал (PCH), используются для назначения абонентского канала и пейджинговых уведомлений. Абонент должен сначала зафиксироваться на предварительно определенном канале ближайшей базовой станции, чтобы отслеживать каналы управления широковещательной передачей и отправить запрос на соединение, прежде чем получить выделенный канал управления/трафика для инициирования вызовов. Таким образом, каналы/механизмы управления широковещательной передачей являются сердцевиной эксплуатации систем мобильной связи с эффективным использованием ресурсов. Широкое использование каналов управления характерно не только для системы GSM; это широко используемый механизм во всех сотовых сетях для экономии ресурсов и обеспечения эффективной работы системы. Например, стандарт беспроводной связи Long Term Evolution (LTE) четвертого поколения использует главный информационный блок (MIB), передаваемый по физическому широковещательному каналу (PBCH), и необходим для процедуры поиска и синхронизации соты [17]. BCCH обычно определяются частотой, временем и кодом расширения.

Эти важнейшие механизмы контроля также являются узким местом системы с точки зрения безопасности из-за возможности целенаправленных атак. Чан и др. показали, что атака на один заранее определенный канал управления вещанием потенциально может вывести из строя всю систему (например, заставить сеть исчезнуть) [18]. Чтобы еще больше мотивировать эту исследовательскую проблему, давайте посмотрим, как каналы управления спроектированы и используются в системе GSM. Ниже мы опишем, как вся сеть уязвима для минимальной и трудно обнаруживаемой, но целенаправленной атаки генератора помех с ограниченным энергопотреблением, который фокусируется на определенном канале управления.

Система GSM использует комбинацию механизмов FDMA и TDMA. Полоса частот оператора (например, 20 МГц) делится на множество каналов по 200 кГц каждый, и каждый частотный канал делится во времени на повторяющиеся кадры из восьми временных интервалов. BCH и некоторые CCCH в GSM расположены в очень определенных временных интервалах в определенной физической полосе частот (например, временной интервал-0 в одной полосе 200 кГц, называемой контрольной частотой), так что абонент может легко их слушать [16]. Как видно на рис. 6-1, BCCH1 планируется только один раз из 51 кадра и передается в таймслоте-0. Это позволяет злоумышленнику запустить интеллектуальную DoS-атаку во время связи по определенному заранее определенному каналу управления и предотвратить обнаружение сети.Моделирование этого сценария с помощью Qualnet GSM Simulator [19] отражает уязвимость таких сетей. Результаты показывают, что заглушая один временной интервал (из восьми временных интервалов) BCCH в каждом 51 кадре в одном диапазоне 200 кГц, атака может помешать всем мобильным станциям общаться друг с другом. Это приводит к атаке глушилки, которая на четыре порядка (20 МГц/200 кГц/51 кадр/8 временных интервалов ≈ 40 000) более эффективна, чем та, которая слепо глушит связь, не зная о структуре GSM.

< бр />

Рисунок 6-1. Типовая структура каналов управления GSM.

Аналогичные атаки на каналы управления были изучены Хассом и Линем в настройках сети Personal Communications Services (PCS) [20], что показывает уязвимость к глушению систем с выделенными каналами управления.

Windows 7 с пакетом обновления 1 Windows Server 2008 R2 с пакетом обновления 1 Windows Server 2008 с пакетом обновления 2 Windows 10, версия 1607, все выпуски Windows 10, версия 1703, все выпуски Windows 10, версия 1709, все выпуски Windows 10, версия 1803 , все выпуски Windows 10, версия 1809, все выпуски Windows 10 Windows Server 2012 Standard Windows Server 2012 R2 Windows 8.1 Windows Server 2019, все выпуски Windows Server Update Services 3.0 Service Pack 2 Еще. Меньше

Обзор

Чтобы защитить безопасность операционной системы Windows, обновления ранее были подписаны (используя алгоритмы хеширования SHA-1 и SHA-2). Подписи используются для подтверждения того, что обновления поступают непосредственно от Microsoft и не были изменены во время доставки. Из-за недостатков алгоритма SHA-1 и для соответствия отраслевым стандартам мы изменили подписывание обновлений Windows, чтобы использовать исключительно более безопасный алгоритм SHA-2. Это изменение было внесено поэтапно, начиная с апреля 2019 г. по сентябрь 2019 г., чтобы обеспечить плавный переход (дополнительную информацию об изменениях см. в разделе "График обновления продукта").

Клиенты, которые работают с устаревшими версиями ОС (Windows 7 с пакетом обновления 1 (SP1), Windows Server 2008 R2 с пакетом обновления 1 (SP1) и Windows Server 2008 с пакетом обновления 2 (SP2)), должны установить на свои устройства поддержку подписи кода SHA-2 для установки обновлений, выпущенных в июле 2019 г. или позже. Любые устройства без поддержки SHA-2 не смогут устанавливать обновления Windows в июле 2019 г. или позже. Чтобы помочь вам подготовиться к этому изменению, мы выпустили поддержку подписи SHA-2 в марте 2019 г. и внесли дополнительные улучшения. Службы Windows Server Update Services (WSUS) 3.0 SP2 получат поддержку SHA-2 для безопасной доставки обновлений, подписанных SHA-2. В разделе "График обновления продукта" указан график миграции только с SHA-2.

Общие сведения

Алгоритм безопасного хеширования 1 (SHA-1) был разработан как функция необратимого хеширования и широко используется как часть подписи кода. К сожалению, безопасность алгоритма хеширования SHA-1 со временем стала менее надежной из-за обнаруженных в алгоритме слабых мест, повышения производительности процессора и появления облачных вычислений. Более надежные альтернативы, такие как алгоритм безопасного хеширования 2 (SHA-2), теперь настоятельно рекомендуются, поскольку они не вызывают тех же проблем. Дополнительные сведения об устаревании SHA-1 см. в разделе Алгоритмы хеширования и подписи.

Расписание обновлений продукта

С начала 2019 года процесс перехода на поддержку SHA-2 начался поэтапно, и поддержка будет предоставляться в виде отдельных обновлений. Microsoft ориентируется на следующий график, чтобы предложить поддержку SHA-2. Обратите внимание, что следующий график может быть изменен. Мы продолжим обновлять эту страницу по мере необходимости.

Целевая дата

12 марта 2019 г.

Выпущены автономные обновления безопасности KB4474419 и KB4490628, в которых реализована поддержка кодового знака SHA-2.

Windows 7 с пакетом обновления 1
Windows Server 2008 R2 с пакетом обновления 1

12 марта 2019 г.

Отдельное обновление KB4484071 доступно в каталоге Центра обновления Windows для WSUS 3.0 с пакетом обновления 2 (SP2), которое поддерживает доставку обновлений, подписанных SHA-2. Для клиентов, использующих WSUS 3.0 SP2, это обновление необходимо установить вручную не позднее 18 июня 2019 г.

9 апреля 2019 г.

Отдельное обновление KB4493730, которое вводит поддержку знака кода SHA-2 для стека обслуживания (SSU), было выпущено в качестве обновления безопасности.

Windows Server 2008 SP2

14 мая 2019 г.

Выпущено автономное обновление для системы безопасности KB4474419, в котором реализована поддержка кодового знака SHA-2.

Windows Server 2008 SP2

11 июня 2019 г.

Выпущено повторное обновление для системы безопасности KB4474419 для добавления отсутствующей поддержки кодового знака MSI SHA-2.

Windows Server 2008 SP2

18 июня 2019 г.

Подписи обновлений Windows 10 изменены с двойной подписи (SHA-1/SHA-2) на только SHA-2. Никаких действий со стороны клиента не требуется.

Windows 10, версия 1709
Windows 10, версия 1803
Windows 10, версия 1809
Windows Server 2019

18 июня 2019 г.

Обязательно: для клиентов, использующих WSUS 3.0 SP2, к этой дате необходимо вручную установить KB4484071 для поддержки обновлений SHA-2.

9 июля 2019 г.

Обязательно: для обновлений устаревших версий Windows потребуется установить поддержку подписи кода SHA-2. Поддержка, выпущенная в апреле и мае (KB4493730 и KB4474419), потребуется, чтобы продолжать получать обновления для этих версий Windows.

В настоящее время сигнатуры всех устаревших обновлений Windows изменены с SHA1 и двойной подписи (SHA-1/SHA-2) на SHA-2.

Windows Server 2008 SP2

16 июля 2019 г.

Подписи обновлений Windows 10 изменены с двойной подписи (SHA-1/SHA-2) на только SHA-2. Никаких действий со стороны клиента не требуется.

Windows 10, версия 1507
Windows 10, версия 1607
Windows Server 2016
Windows 10, версия 1703

13 августа 2019 г.

Обязательно: для обновлений устаревших версий Windows потребуется установить поддержку подписи кода SHA-2. Поддержка, выпущенная в марте (KB4474419 и KB4490628), потребуется, чтобы продолжать получать обновления для этих версий Windows. Если у вас есть устройство или виртуальная машина, использующая загрузку EFI, ознакомьтесь с разделом часто задаваемых вопросов, чтобы узнать о дополнительных действиях по предотвращению проблемы, из-за которой ваше устройство может не запускаться.

Сигнатуры всех устаревших обновлений Windows изменены с SHA-1 и двойной подписи (SHA-1/SHA-2) на SHA-2 только в настоящее время.

Windows 7 с пакетом обновления 1
Windows Server 2008 R2 с пакетом обновления 1

10 сентября 2019 г.

Устаревшие подписи обновлений Windows изменены с двойной подписи (SHA-1/SHA-2) на только SHA-2. Никаких действий со стороны клиента не требуется.

Windows Server 2012
Windows 8.1
Windows Server 2012 R2

10 сентября 2019 г.

Выпущено повторное автономное обновление безопасности KB4474419, в которое добавлены отсутствующие диспетчеры загрузки EFI. Убедитесь, что эта версия установлена.

Windows 7 SP1
Windows Server 2008 R2 SP1
Windows Server 2008 SP2

28 января 2020 г.

Подписи в списках доверия сертификатов (CTL) для программы Microsoft Trusted Root изменены с двойной подписи (SHA-1/SHA-2) на только SHA-2. Никаких действий со стороны клиента не требуется.

Все поддерживаемые платформы Windows

Август 2020 г.

Конечные точки службы Центра обновления Windows на основе SHA-1 больше не поддерживаются. Это влияет только на старые устройства Windows, на которые не были установлены соответствующие обновления безопасности. Дополнительные сведения см. в статье KB4569557.

Windows 7
Windows 7 SP1
Windows Server 2008
Windows Server 2008 SP2
Windows Server 2008 R2
Windows Server 2008 R2 SP1

3 августа 2020 г.

Майкрософт удалил из Центра загрузки Майкрософт контент, подписанный Windows для алгоритма безопасного хеширования 1 (SHA-1). Дополнительные сведения см. в блоге ИТ-специалистов по Windows SHA-1. Содержимое Windows будет удалено 3 августа 2020 года.

Windows Server 2000
Windows XP
Windows Server 2003
Windows Vista
Windows Server 2008
Windows 7
Windows Server 2008 R2
Windows 8
Windows Server 2012
Windows 8.1
Windows Server 2012 R2
Windows 10
Windows 10 Server

Текущий статус

Windows 7 с пакетом обновления 1 (SP1) и Windows Server 2008 R2 с пакетом обновления 1 (SP1)

Перед установкой любого обновления, выпущенного 13 августа 2019 года или более поздней версии, необходимо установить следующие обязательные обновления, а затем перезапустить устройство. Требуемые обновления можно устанавливать в любом порядке, и их не нужно переустанавливать, если только нет новой версии требуемого обновления.

Обновление стека обслуживания (SSU) (KB4490628). Если вы используете Центр обновления Windows, требуемый SSU будет предложен вам автоматически.

Обновление SHA-2 (KB4474419), выпущенное 10 сентября 2019 г. Если вы используете Центр обновления Windows, необходимое обновление SHA-2 будет предложено вам автоматически.

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

Windows Server 2008 SP2

Перед установкой любого накопительного пакета, выпущенного 10 сентября 2019 г. или более поздней версии, необходимо установить следующие обновления, а затем перезапустить устройство. Требуемые обновления можно устанавливать в любом порядке, и их не нужно переустанавливать, если только нет новой версии требуемого обновления.

Обновление стека обслуживания (SSU) (KB4493730). Если вы используете Центр обновления Windows, необходимое обновление SSU будет предложено вам автоматически.

Последнее обновление SHA-2 (KB4474419), выпущенное 10 сентября 2019 г. Если вы используете Центр обновления Windows, необходимое обновление SHA-2 будет предложено вам автоматически.

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

Часто задаваемые вопросы

Общая информация, планирование и предотвращение проблем

<р>1. Чем обновления для KB3033929 и KB4039648 отличаются от отдельных обновлений, выпущенных в марте и апреле?

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

Начиная с WSUS 4.0 в Windows Server 2012, WSUS уже поддерживает обновления, подписанные SHA-2, и для этих версий не требуется никаких действий со стороны клиента.

Только для WSUS 3.0 SP2 требуется установка KB4484071 для поддержки обновлений, подписанных только SHA2.

<р>3. У меня есть система Windows Server 2008 SP2, которая выполняет двойную загрузку с Windows Server 2008 R2 (или Windows 7). Как обновить поддержку SHA-2?

Предположим, вы используете Windows Server 2008 SP2. Если вы используете двойную загрузку с Windows Server 2008 R2 SP1/Windows 7 SP1, диспетчер загрузки для этого типа системы будет из системы Windows Server 2008 R2/Windows 7. Чтобы успешно обновить обе эти системы для использования поддержки SHA-2, необходимо сначала обновить систему Windows Server 2008 R2/Windows 7, чтобы диспетчер загрузки был обновлен до версии, поддерживающей SHA-2. Затем обновите систему Windows Server 2008 SP2 с поддержкой SHA-2.

<р>4. У меня есть система с двумя разделами, один с Windows Server 2008 SP2, а второй с загрузочной средой Windows 7 PE (WinPE). Как перейти на поддержку SHA-2?

Как и в случае с двойной загрузкой, среда Windows 7 PE должна быть обновлена ​​до поддержки SHA-2. Затем необходимо обновить систему Windows Server 2008 SP2 до поддержки SHA-2.

<р>5. Я использую программу установки для чистой установки Windows 7 с пакетом обновления 1 (SP1) или Windows Server 2008 R2 с пакетом обновления 1 (SP1). Я использую образ, настроенный с помощью обновлений (например, с помощью dism.exe). Как перейти на поддержку SHA-2?

Выполните установку Windows до конца и загрузитесь в Windows перед установкой обновлений от 13 августа 2019 г. или более поздних версий

Откройте окно командной строки администратора, запустите bcdboot.exe. Это копирует загрузочные файлы из каталога Windows и настраивает загрузочную среду. Дополнительные сведения см. в разделе Параметры командной строки BCDBoot.

Перед установкой каких-либо дополнительных обновлений установите перевыпуск KB4474419 и KB4490628 от 13 августа 2019 г. для Windows 7 с пакетом обновления 1 (SP1) и Windows Server 2008 R2 с пакетом обновления 1 (SP1).

Перезагрузите операционную систему. Требуется перезагрузка

Установите все оставшиеся обновления.

<р>6. Я устанавливаю образ Windows 7 с пакетом обновления 1 (SP1) или Windows Server 2008 R2 с пакетом обновления 1 (SP1) непосредственно на диск без запуска программы установки. Как заставить этот сценарий работать?

Установите образ на диск и загрузитесь в Windows.

В командной строке запустите bcdboot.exe. Это копирует загрузочные файлы из каталога Windows и настраивает загрузочную среду. Дополнительные сведения см. в разделе Параметры командной строки BCDBoot.

Перед установкой каких-либо дополнительных обновлений установите перевыпуск KB4474419 и KB4490628 от 23 сентября 2019 г. для Windows 7 с пакетом обновления 1 (SP1) и Windows Server 2008 R2 с пакетом обновления 1 (SP1).

Перезагрузите операционную систему. Требуется перезагрузка

Установите все оставшиеся обновления.

<р>7. Поддерживается ли мое устройство x64 или виртуальная машина, использующая загрузку EFI, этим обновлением SHA-2 для Windows 7 с пакетом обновления 1 (SP1) и Windows Server 2008 R2 с пакетом обновления 1 (SP1)?

Да, перед продолжением необходимо установить необходимые обновления: обновление SSU (KB4490628) и SHA-2 (KB4474419). Кроме того, вам необходимо перезагрузить устройство после установки необходимых обновлений, прежде чем устанавливать какие-либо дальнейшие обновления.

<р>8. Windows 10 версии 1903 не указана в таблице выше, поддерживает ли она обновления SHA-2? Требуются ли какие-либо действия?

Windows 10 версии 1903 поддерживает SHA-2 с момента ее выпуска, и все обновления уже подписаны только SHA-2. Для этой версии Windows не требуется никаких действий.

<р>9. Я устанавливаю обновления в онлайновую (работающую) систему, используя dism.exe /online. Как заставить этот сценарий работать?

Windows 7 с пакетом обновления 1 (SP1) и Windows Server 2008 R2 с пакетом обновления 1 (SP1)

Загрузитесь в Windows перед установкой любых обновлений от 13 августа 2019 г. или более поздних версий.

Перед установкой любых дополнительных обновлений установите перевыпуск KB4474419 и KB4490628 от 23 сентября 2019 г. для Windows 7 с пакетом обновления 1 (SP1) и Windows Server 2008 R2 с пакетом обновления 1 (SP1).

Перезагрузите операционную систему. Требуется перезагрузка

Установите все оставшиеся обновления.

Windows Server 2008 SP2

Загрузитесь в Windows перед установкой любых обновлений от 9 июля 2019 г. или более поздних версий.

Перед установкой каких-либо дополнительных обновлений установите перевыпуск KB4474419 и KB4493730 для Windows Server 2008 SP2 от 23 сентября 2019 года.

Перезагрузите операционную систему. Требуется перезагрузка

Установите все оставшиеся обновления.

Устранение неполадок

<р>1. Мое устройство x86 или x64 или виртуальная машина (ВМ) не запускается, и я получаю сообщение об ошибке 0xc0000428 (STATUS_INVALID_IMAGE_HASH), или мое устройство запускается в среду восстановления при перезапуске после установки обновлений, выпущенных 13 августа 2019 г. или позже. Я установил KB4474419 и KB4490628, чтобы включить поддержку SHA-2. Как восстановить установку?

Если вы видите ошибку 0xc0000428 с сообщением «Windows не может проверить цифровую подпись для этого файла. Недавнее изменение оборудования или программного обеспечения могло привести к установке файла с неправильной подписью или повреждения, либо это могло быть вредоносное ПО из неизвестного источника». выполните следующие действия для восстановления.

Запустите операционную систему с помощью носителя для восстановления.

Перед установкой каких-либо дополнительных обновлений установите обновление KB4474419 от 23 сентября 2019 г. или более поздней даты с помощью системы обслуживания образов развертывания и управления ими (DISM) для Windows 7 с пакетом обновления 1 (SP1) и Windows Server 2008 R2 с пакетом обновления 1 (SP1).

В командной строке запустите bcdboot.exe. Это копирует загрузочные файлы из каталога Windows и настраивает загрузочную среду. Дополнительные сведения см. в разделе Параметры командной строки BCDBoot.

Перезагрузите операционную систему.

<р>2. Я развернул накопительное обновление для всех устройств или виртуальных машин (ВМ) в своей среде, и после перезапуска я получаю сообщение об ошибке 0xc0000428 (STATUS_INVALID_IMAGE_HASH) или мое устройство запускается в среду восстановления. Что мне делать с оставшимися устройствами или ВМ, которые еще не были перезапущены?

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

Определите устройства и ВМ в состоянии ожидания перезапуска с обновлениями, выпущенными 13 августа 2019 г. или позже, и откройте командную строку с повышенными привилегиями

Найдите идентификатор пакета для обновления, которое вы хотите удалить, с помощью следующей команды, используя номер базы знаний для этого обновления (замените 4512506 номером базы знаний, на который вы ориентируетесь, если это не Ежемесячный накопительный пакет, выпущенный 13 августа 2019 г.) : dism/online/get-packages | найти 4512506

Используйте следующую команду, чтобы удалить обновление, заменив

с тем, что было найдено в предыдущей команде: Dism.exe /online /remove-package /packagename:

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

Примечание. Любое устройство или виртуальная машина, на которых вы в настоящее время получаете сообщение об ошибке 0xc0000428 или запускаете среду восстановления, вам необходимо выполнить действия, описанные в разделе часто задаваемых вопросов об ошибке 0xc0000428.

<р>3. Что делать, если я получаю код ошибки 80096010 или код ошибки 80092004 (CRYPT_E_NOT_FOUND), «Центр обновления Windows обнаружил неизвестную ошибку» при попытке установить обновление для Windows 7 с пакетом обновления 1, Windows Server 2008 R2 с пакетом обновления 1 или Windows Server 2008 с пакетом обновления 2?< /p>

Если вы столкнулись с этими ошибками, вам необходимо установить необходимые обновления, перечисленные в разделе Как получить это обновление обновления, которое вы пытаетесь установить, или необходимые обновления, перечисленные выше в разделе Текущее состояние этой статьи.< /p> <р>4. Мое устройство Intel Itanium IA64 не запускается, и я получаю сообщение об ошибке 0xc0000428 (STATUS_INVALID_IMAGE_HASH), но я установил KB4474419 и KB4490628. Как восстановить установку?

Если вы видите ошибку 0xc0000428 с сообщением «Windows не может проверить цифровую подпись для этого файла. Недавнее изменение оборудования или программного обеспечения могло привести к установке файла с неправильной подписью или повреждения, либо это могло быть вредоносное ПО из неизвестного источника». выполните следующие действия для восстановления.

Запустите операционную систему с помощью носителя для восстановления.

Установите последнее обновление SHA-2 (KB4474419), выпущенное 13 августа 2019 года или позже, с помощью системы обслуживания образов развертывания и управления ими (DISM) для Windows 7 с пакетом обновления 1 (SP1) и Windows Server 2008 R2 с пакетом обновления 1 (SP1).

Перезагрузитесь с носителя для восстановления. Требуется перезагрузка

В командной строке запустите bcdboot.exe. Это копирует загрузочные файлы из каталога Windows и настраивает загрузочную среду. Дополнительные сведения см. в разделе Параметры командной строки BCDBoot.

Перезагрузите операционную систему.

<р>5. После установки обновления SHA-2 (KB4474419), выпущенного 10 сентября 2019 г. для Windows Server 2008 SP2, я не могу вручную установить обновления, дважды щелкнув файл .msu, и получаю сообщение об ошибке «Установщик обнаружил ошибку: 0x80073afc . Загрузчику ресурсов не удалось найти файл MUI."

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

wusa.exe /quiet

Эта проблема устранена в обновлении KB4474419, выпущенном 8 октября 2019 г.Это обновление будет установлено автоматически из Центра обновления Windows и служб обновления Windows Server (WSUS). Если вам нужно установить это обновление вручную, вам нужно будет использовать обходной путь, описанный выше.

Примечание. Если вы ранее установили обновление KB4474419, выпущенное 23 сентября 2019 года, значит, у вас уже установлена ​​последняя версия этого обновления, и вам не нужно переустанавливать его.

логотип CSRC< бр />

SHA-1: Федеральным агентствам следует прекратить использовать SHA-1 для создания цифровых подписей, создания меток времени и для других приложений, требующих защиты от коллизий. Федеральные агентства могут использовать SHA-1 для следующих приложений: проверка старых цифровых подписей и меток времени, создание и проверка кодов аутентификации сообщений на основе хэшей (HMAC), функций деривации ключей (KDF) и генерация случайных битов/чисел. Дополнительные рекомендации по использованию SHA-1 приведены в SP 800-131A.

SHA-2 (т. е. SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224 и SHA-512/256): федеральные агентства могут использовать эти хеш-функции для всех приложений, использующих алгоритмы безопасного хеширования. NIST рекомендует разработчикам приложений и протоколов реализовывать как минимум SHA-256 для любых приложений хеш-функций, требующих взаимодействия. Дополнительные рекомендации по использованию SHA-2 приведены в SP 800-57, часть 1, раздел 5.6.2, и в SP 800-131A.

SHA-3 (т. е. SHA3-224, SHA3-256, SHA3-384, SHA3-512, SHAKE128 и SHAKE256): федеральные агентства могут использовать четыре алгоритма SHA-3 фиксированной длины — SHA3-224, SHA3-. 256, SHA3-384 и SHA3-512 для всех приложений, использующих алгоритмы безопасного хеширования. Расширяемые выходные функции SHA-3 (XOF), SHAKE128 и SHAKE256, могут быть специализированы для хеш-функций с учетом дополнительных соображений безопасности. Руководство по использованию XOF будет предоставлено в будущем. В настоящее время нет необходимости переводить приложения с SHA-2 на SHA-3.

28 сентября 2012 г.
SHA-1. Федеральным агентствам следует прекратить использование SHA-1 для создания цифровых подписей, меток времени и других приложений, требующих защиты от коллизий. Федеральные агентства могут использовать SHA-1 для следующих приложений: проверка старых цифровых подписей и меток времени, создание и проверка кодов аутентификации сообщений на основе хэшей (HMAC), функций деривации ключей (KDF) и генерация случайных битов/чисел. Дополнительные рекомендации по использованию SHA-1 приведены в SP 800-131A.

SHA-2 (т. е. SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224 и SHA-512/256): федеральные агентства могут использовать эти хеш-функции для всех приложений, использующих алгоритмы безопасного хеширования. NIST рекомендует разработчикам приложений и протоколов реализовывать как минимум SHA-256 для любых приложений хеш-функций, требующих взаимодействия. Дополнительные рекомендации по использованию SHA-2 приведены в SP 800-57, часть 1, раздел 5.6.2, и в SP 800-131A.

SHA-3: Когда алгоритм хеширования SHA-3 станет доступен, его также можно будет использовать для всех приложений, использующих алгоритмы безопасного хэширования. В настоящее время нет необходимости или планов по переводу приложений с SHA-2 на SHA-3.

Вычисление хэша MD5 требует меньше ресурсов ЦП, чем SHA-1 или SHA-2 на "стандартном" аппаратном обеспечении x86 ноутбука? Меня интересует общая информация, а не конкретная конкретная микросхема.

ОБНОВЛЕНИЕ: в моем случае меня интересует вычисление хэша файла. Если размер файла имеет значение, предположим, что он составляет 300 КБ.


@Pascal: Skein не самый быстрый из кандидатов на SHA-3, особенно на 32-битных платформах. На 64-битном x86 Skein достигает скорости около 300 МБ/с (Skein-512 несколько быстрее, чем Skein-256), что сравнимо с SHA-1, но в 32-битном режиме производительность падает до менее 60 МБ/с. с, вдвое медленнее, чем SHA-256. С другой стороны, SHABAL, еще один кандидат SHA-3, обеспечивает производительность, аналогичную SHA-1, как на 32-разрядных, так и на 64-разрядных платформах.

7 ответов 7

Да, MD5 несколько менее требователен к ЦП. На моем Intel x86 (Core2 Quad Q6600, 2,4 ГГц, с использованием одного ядра) я получаю это в 32-битном режиме:

и это в 64-битном режиме:

Цифры указаны в мегабайтах в секунду для "длинных" сообщений (это то, что вы получаете для сообщений длиннее 8 КБ). Это с sphlib, библиотекой реализации хэш-функции в C (и Java). Все реализации принадлежат одному и тому же автору (меня) и были сделаны с сопоставимыми усилиями по оптимизации; таким образом, различия в скорости можно считать действительно присущими функциям.

Для сравнения предположим, что последний жесткий диск будет работать со скоростью около 100 МБ/с, а все, что подключено через USB, будет ниже 60 МБ/с. Несмотря на то, что SHA-256 кажется здесь "медленным", для большинства целей он достаточно быстр.

Обратите внимание, что OpenSSL включает 32-разрядную реализацию SHA-512, которая намного быстрее, чем мой код (но не так быстро, как 64-разрядная SHA-512), поскольку реализация OpenSSL находится в сборке и использует регистры SSE2, то, что невозможно сделать на простом C. SHA-512 — единственная из этих четырех функций, которая выигрывает от реализации SSE2.

Редактировать: на этой странице (архив) можно найти отчет о скорости многих хеш-функций (нажмите на ссылку "Telechargez maintenant"). Отчет на французском языке, но в основном он полон таблиц и цифр, причем цифры международные. Реализованные хеш-функции не включают кандидатов SHA-3 (кроме SHABAL), но я работаю над этим.

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

@EdwardBrey На самом деле они почти полностью оптимизированы. На самом деле его реализация md5 работает намного быстрее, чем та, которую предлагает OpenSSL, поэтому, как вы говорите, не каждая реализация будет оптимизирована в «реальном мире». Кроме того, хотя они не идеальны (в этом вы правы), имхо они служат идеальным ответом на этот конкретный вопрос.

Можем ли мы получить обновленную информацию о современных процессорах и современных реализациях алгоритмов? Ваш ответ по крайней мере один раз использовался для оправдания дальнейшего использования MD5, через пятнадцать лет после того, как было доказано, что он неисправен, и через несколько лет после того, как в реальном мире произошли атаки с предварительным отображением, для создания вредоносных PE-файлов, подписанных с помощью MD5, в качестве алгоритма дайджеста, который производит то же самое точный дайджест, найденный в исходной подписи. И так подпись была пересажена. MD5 и впоследствии SHA-1 были удалены для подписи. ОП просил хэш, поэтому даже в 2010 году продвижение MD5 не было разумным советом, ИМО.

На моем MacBook Air 2012 года (Intel Core i5-3427U, 2x 1,8 ГГц, 2,8 ГГц в режиме Turbo) SHA-1 немного быстрее, чем MD5 (с использованием OpenSSL в 64-разрядном режиме):

Обновление: 10 месяцев спустя с OS X 10.9 SHA-1 стал медленнее на том же компьютере:

Второе обновление: в OS X 10.10 скорость SHA-1 вернулась к уровню 10.8:

Третье обновление: OS X 10.14 с LibreSSL работает намного быстрее (все еще на том же компьютере). SHA-1 по-прежнему выходит на первое место:

странно, мой воздух такой же, как у вас, и я получил противоположные результаты тестов. с 8192 байтами: md5 305549.52k; ша1 204668.57k

Хм, я также получаю другие результаты, чем в прошлом году на той же машине: md5 381756,70k, sha1 313881,86k. Возможно, из-за обновления до 10.9 (OpenSSL 0.9.8y).

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

MD5 выполняет меньше «работы», чем SHA1 (например, меньше циклов сжатия), поэтому можно подумать, что он должен быть быстрее. Однако алгоритм MD5 в основном представляет собой одну большую цепочку зависимостей, а это означает, что он не особенно хорошо использует современные суперскалярные процессоры (то есть демонстрирует низкое количество инструкций за такт). SHA1 имеет больше параллелизма, поэтому, несмотря на необходимость выполнения большей «вычислительной работы», он часто оказывается быстрее, чем MD5 на современных суперскалярных процессорах.
Если вы сравните MD5 и SHA1 на старых процессорах или процессорах с меньшей суперскалярной «шириной» (например, на процессоре Atom на базе Silvermont), вы, как правило, обнаружите, что MD5 быстрее, чем SHA1.

SHA2 и SHA3 еще более требовательны к вычислительным ресурсам, чем SHA1, и, как правило, намного медленнее.
Однако следует отметить, что некоторые новые процессоры x86 и ARM имеют инструкции для ускорения SHA1 и SHA256, что, очевидно, значительно помогает этим алгоритмам, если инструкции используются.

Кроме того, производительность SHA256 и SHA512 может демонстрировать столь же любопытное поведение. SHA512 выполняет больше «работы», чем SHA256, однако ключевое различие между ними заключается в том, что SHA256 работает с использованием 32-битных слов, а SHA512 — с использованием 64-битных слов. Таким образом, SHA512, как правило, будет быстрее, чем SHA256, на платформе с 64-битным размером слова, поскольку он одновременно обрабатывает в два раза больше данных. И наоборот, SHA256 должен превосходить SHA512 на платформе с 32-битным размером слова.

Читайте также: