На этой неделе Рэймонд Чен из Microsoft отправился в свой блог «Старая новая вещь», чтобы объяснить, почему Windows имеет хэш слабого пароля в своих криптографических библиотеках.
Рассматриваемая последовательность была обнаружена клиентом, который сообщил, что нашел хэш SHA256 «abc» в криптографических библиотеках Windows.
Хитрые пароли — проклятие многих администраторов, и многие организации стремятся рассказать вам, как лучше всего ими управлять. Часто меняйте их. Не меняйте их часто. Используйте случайную тарабарщину. Не используйте случайную тарабарщину. И так продолжается.
Независимо от этого, нет никаких сомнений в том, что «abc» — не лучший выбор для пароля, однако у Чена есть объяснение его присутствию. Это часть самотестирования библиотеки, позволяющая убедиться, что с модулями все в порядке. На самом деле он не используется в качестве пароля как такового.
Мы можем представить себе предупреждения, выдаваемые различными инструментами контроля версий при виде жестко запрограммированного пароля, скрывающегося в коде. В конце концов, ни один инженер не стал бы закидывать такую штуку в свой тщательно созданный исходник, верно?
Чен сказал: «Вы можете найти этот жестко закодированный «хорошо известный SHA256» в модуле sha256.c с «открытым текстом» в selftest.c. Значения используются функцией SymCryptSha256SelfTest для проверки того, что алгоритм выдает ожидаемые результаты. отвечать.”
Windows — едва ли единственная база кода, включающая такие вещи. Один пользователь прокомментировал: «Это не просто конкретный артефакт криптографической библиотеки Windows, «abc» — это стандартная тестовая строка, используемая для хеш-функций, начиная как минимум с MD5 в 1991 году».
Быстрый поиск других библиотек выявил несколько других тестовых строк, которые были бы далеко не идеальными в качестве паролей, но помогли проверить правильность работы функций.
Чен сказал: «Тот факт, что в криптографических библиотеках появляется небезопасный пароль, не означает, что библиотека использует их в качестве паролей. В данном случае это просто тестовые данные».
В заключение он сказал: «Держу пари, что вы сможете найти небезопасные пароли во многих двоичных файлах, если настроитесь на это. Просто просканируйте байты 61, 62, 63 в любом двоичном файле, и если вы его найдете, вы можете прийти в восторг: «Эй, , ваш двоичный файл содержит небезопасный пароль abc!”” ®