Microsoft, предположительно, потеряла исходный код компонента Office

Microsoft, предположительно, потеряла исходный код компонента Office

Microsoft, предположительно, потеряла исходный код компонента Office

У экспертов в области информационной безопасности появилось подозрение, что компания, возможно, потеряла исходный код одного из своих компонентов Office. Эксперты на этой неделе пришли к такому выводу после того, как Microsoft исправила уязвимость, отслеживаемую как CVE-2017-11882, которая затронула EQNEDT32.EXE - редактор формул, включенный в пакет Microsoft Office.

Напомним, что на днях мы писали об этой уязвимости. Теперь же исследователи из 0patch заметили, что исправленный файл EQNEDT32.EXE почти идентичен старому.

«Вы когда-нибудь видели компилятор C/C++, который бы поместил все функции в исполняемый файл 500+ KB после восстановления измененного исходного кода точно по тому же адресу», — задают эксперты риторический вопрос.

На самом деле, эксперты намекают, что EQNEDT32.EXE настолько похож на свою предыдущую версию потому, что инженеры Microsoft вручную отредактировали сам двоичный файл. Стоит учитывать, что такая компания, как Microsoft, имеющая прочную и сложную разработку программного обеспечения и методы обеспечения безопасности, никогда не сочтет приемлемым редактирование двоичного файла вручную.

Единственное разумное объяснение этому — Microsoft каким-то образом потеряла исходный код давно забытого компонента Office.

Отметим, что редактирование исполняемых файлов вручную считается нежелательной мерой, используемой программистами низкого уровня. Как правило, такие меры создают больше проблем, чем решают. Разработчики, практикующие такое, обычно рискуют повредить весь бинарный файл. Согласно 0patch, исправление EQNEDT32.EXE было сделано очень качественно — «произведение искусства».

Вышла утилита RKN Block Checker для диагностики блокировок

Разработчик Дмитрий Виноградов представил утилиту RKN Block Checker с открытым исходным кодом. Она помогает понять, почему конкретный сайт не открывается: это обычная сетевая проблема или блокировка на стороне провайдера / регуляторной инфраструктуры.

Проект написан на Python и опубликован под лицензией MIT. Утилита работает из командной строки и проверяет соединение по цепочке DNS → TCP → TLS → HTTP.

Идея простая: не просто выдать вердикт, что сайт недоступен, а показать, на каком именно уровне всё сломалось. Например, если системный DNS не даёт нормальный ответ, а Cloudflare DoH возвращает корректный адрес, это может указывать на DNS-подмену. Если TCP-соединение на 443-й порт сбрасывается, речь может идти о блокировке на уровне IP.

Если TCP проходит, но соединение рвётся на TLS-рукопожатии с SNI, это уже похоже на работу DPI / ТСПУ. А если сайт открывается, но вместо страницы приходит заглушка провайдера или код 451, утилита фиксирует и такой сценарий.

 

Автор отдельно подчёркивает, что смысл RKN Block Checker не в том, чтобы заменить браузер. Браузер и так сообщает, что сайт не открылся. Здесь задача другая — разложить проблему по слоям и дать пользователю более понятную картину, где именно произошёл сбой и на что это похоже.

Утилита сравнивает ответы системного DNS и DNS over HTTPS через Cloudflare, проверяет обычное TCP-подключение, запускает TLS-handshake с SNI целевого домена и затем делает HTTP-запрос. Вердикт выставляется по первому уровню, на котором возникла ошибка.

 

У проекта есть и ограничения. Пока поддерживается только IPv4. Списки целей жёстко заданы в коде и включают около 20 сайтов на категорию, поэтому инструмент не поймает все частные случаи. Кроме того, это разовая проверка без повторов и долгосрочного мониторинга, хотя JSON-вывод можно использовать в cron для регулярных запусков.

RSS: Новости на портале Anti-Malware.ru