Взлом защиты видеодисков высокой чёткости
АрхивВ фокусеОказалось, что внешне грозная защита имеет не просто слабости, а вопиющие прорехи, наличие которых в сильной, вообще говоря, криптосхеме рационально объяснить пока никто не может.
В длинной и поучительной саге о преодолении AACS, системы защиты контента на видеодисках высокой четкости, открыта, похоже, новая интересная глава. Как показали последние результаты анализа, коллективно проводимого участниками веб-форума doom9.org, внешне грозная защита имеет не просто слабости, а вопиющие прорехи, наличие которых в сильной, вообще говоря, криптосхеме рационально объяснить пока никто не может. В частности, участник форума, скрывающийся под псевдонимом Arnezami, обнаружил, что в сложной и многоуровневой системе защиты дисков HD DVD имеется один ключ, processing key, который позволяет получать индивидуальные ключи названий (title keys), а значит, и доступ к зашифрованному контенту, для всех выпущенных на сегодняшний день дисков. Более того, вскоре выяснилось, что этот же самый ключ обработки подходит и для расшифровки всех фильмов на дисках Blu-ray… Единственное, что выяснить не удалось, так это по чьей инициативе столь вопиющая оплошность была заложена в конкретную реализацию AACS, запущенную на рынок.
Чтобы стала более или менее понятна суть открытия, рассмотрим некоторые детали управления ключами в криптосхеме AACS. Любому плееру - аппаратному или программному - для воспроизведения HD-видеодисков присваиваются секретные ключи устройства (device keys). Каждое устройство использует эти строго индивидуальные ключи для вычисления гораздо более многочисленной группы ключей обработки (processing key). В свою очередь, каждый видеофильм, защищенный AACS, зашифрован своим уникальным "ключом названия", и множество копий title key, зашифрованных разными ключами обработки, хранится в специальном разделе на оптодиске (HD DVD или Blu-ray). Чтобы воспроизвести такой диск, плеер определяет, какую из копий title key он может расшифровать, и использует свой ключ устройства для вычисления необходимого ключа обработки, а тот, в свою очередь, позволяет расшифровать ключ названия и получить доступ к контенту для воспроизведения.
Эти три типа ключей имеют разную ценность с точки зрения безопасности и противостояния вскрытию. Разумеется, атакующей стороне наиболее интересны и полезны ключи устройства. Если вы их знаете, то можете расшифровать любой диск, воспроизводимый плеером. Поэтому для защиты device keys предприняты максимальные меры безопасности и разработан хитрый механизм определения и блокирования скомпрометированных ключей такого рода. Ключи названий наименее полезны, поскольку каждый из них годится для расшифровки лишь единственного фильма. Ключи обработки занимают по ценности промежуточное положение, однако они нигде не хранятся - ни в плеере, ни на диске, - а вычисляются на одном из этапов подготовки фильма к воспроизведению. Поэтому их добыча атакующей стороной представлялась наиболее проблематичной, по крайней мере теоретически. На практике, однако, все оказалось иначе.
Ни одного ключа устройства на сегодняшний день, насколько известно, публично не скомпрометировано. До появления работы Arnezami все успешные случаи обхода защиты AACS так или иначе были связаны с отысканием ключа названия в оперативной памяти компьютера при воспроизведении фильма программным плеером (WinDVD). Понятно, что подобные атаки весьма замысловаты с технической точки зрения. А для человека, далекого от анализа дампов памяти, единственная возможность сделать резервную копию HD-диска сводилась к поиску в Сети уже вскрытого и опубликованного кем-то title key для данного фильма.
Но затем появился Arnezami, который придумал иной ход - анализировать не память, а канал обмена информацией между HD DVD-приводом и компьютером. Arnezami справедливо предположил, что в таком канале информационная избыточность намного меньше, чем в оперативной памяти, а значит, легче выявить и формируемые при обработке ключи. Чтобы длинная история стала покороче, Arnezami применил общедоступную программу-сниффер для анализа передач по USB-каналу (SniffUSB.exe) и действительно сумел выделить сгенерированный плеером processing key для имевшегося у него фильма (King Kong). Но главное - попутно, с помощью соратников по форуму, неожиданно выяснилось, что этот же ключ обработки подходит и для всех остальных фильмов, выпущенных на дисках HD DVD. А также и для всех проверенных фильмов на дисках Blu-ray. Что, вообще говоря, из спецификаций AACS следовать не должно.
Согласно этим спецификациям, каждый плеер имеет уникальный набор из нескольких сотен device keys, на основе которых может быть вычислено несколько миллиардов ключей обработки. В принципе, processing keys вполне могут совпадать для разных плееров, но при столь внушительном их числе каждый конкретный ключ обработки по законам теории вероятностей должен совпадать лишь у небольшой доли плееров по всему миру. А каждый конкретный фильм, в свою очередь, имеет на диске список идентификаторов тех ключей обработки, которые могут расшифровать контент, - то есть любого из перечисленных processing key достаточно для расшифровки title key и доступа к контенту.
По причинам, которых пока никто не понял, все выпущенные на рынок диски имеют один и тот же набор идентификаторов для 512 ключей обработки. Это и означает, что установленный Arnezami ключ подходит для расшифровки всех дисков.
Понятно, что теперь сообщество ожидает реакцию со стороны AACS-консорциума - блокирования скомпрометированных ключей/устройств или чего-то еще в этом роде. Однако общий уровень знаний о хитростях работы AACS уже успел вырасти настолько, что, как выразился один из комментаторов, теперь очень сложно будет "затолкать выдавленную пасту обратно в тюбик".
- Из журнала "Компьютерра"