Возможность обхода защиты в Microsoft Word.

4/01/2004 15:28

Thorsten Delbrouck из Guardeonic Solutions AG (Мюнхен, Германия) сообщает об обнаружении им узявимости в механизме защиты документов, созданных при помощи популярного текстового процессора Microsoft Word. Word предоставляет пользователям защиту, которая известна, как защита "формы" при помощи пароля. Эта защита ограничивает возможности постороннего пользователя в манипулировании данными, содержащимися внутри Word-документа, за исключением специально назначенных "форм". Автор утверждает, что подобную защиту можно очень просто обойти, используя любой 16-ричный (HEX) редактор. Подобный механизм выбирается при помощи последовательности действий: "Tools" -> "Protection" -> "Forms" c заданием пароля в соотв. поле ("Сервис" -> "Установить защиту" -> далее запрет действий вне полей форм и ввод пароля в русской версии). При сохранении документа в HTML-формате пароль сохраняется внутри определённого тэга в виде контрольной суммы, вычисляемой по алгоритму, подобному CRC32. И, хотя точный алгоритм вычисления суммы не известен, однако автор заметил, что, если изменить это значение на число вида 0x00000000, пароль будет представлять собой пустую строку. Для снятия защиты автор предлагает найти 16-ричное число внутри тэгов <w:UnprotectPassword> </w:UnprotectPassword>. Затем запомнить число и записать его в обратном порядке (reverse order! - обратный порядок следования байт?). Затем открыть соотв. DOC-файл в 16-ричном редакторе - найти соотв. число и заменить все 4 двойных байта на 0x00 и сохранить. После этого: Открыть документ, "Tools / Unprotect Document" - пароль пустой. К сожалению, на настоящий момент сайт www.securityfocus.com не отзывается, поэтому внизу вынуждены привести просто ссылку на сам файл. Если кто захочет самостоятельно найти описание - искать в архиве Bugtraq по теме "Microsoft Word Protection Bypass".
Источник - http://www.securityfocus.com