Тема: Получение шифрованных данных и реальной ссылки на видео или плейлист
Если при анализе страницы с фильмом мы не видим реальную ссылку на видео-файл или плейлист, то нужно разобраться как флеш-плеер получает реальную ссылку.
Обычно вариантов два:
1) Для того, чтобы получить реальную ссылку на видео, нужно сначала сделать специальный запрос по определённому адресу с переданными параметрами;
2) Ссылки зашифрованы и флеш-плеер умеет их расшифровывать.
Второй вариант обычно используется вместе с плеером Uppod, в который может быть зашиты данные для раскодирования зашифрованных ссылок. Вот про этот второй вариант и пойдёт дальше речь.
В Uppod плеере могут быть вставлены специальные символы замен, по которым шифрованные данные как по таблице заменяет каждый символ. Полученный результат перекодируется из Base64 в обычную строку.
Также, может быть использован второй алгоритм в Uppod, использующий hash, в котором по сути - две таблицы замен, которые используются в разных случаях, в зависимости от вида шифрованной ссылки. Не смотря на то, что алгоритм с hash более сложный, значения hash во всех плеерах Uppod всегда одинаковые (по крайней мере до этого момента было именно так).
Примеры расшифровок плеера Uppod есть в этой теме.
Также в зашифрованные данные часто добавляется мусор в виде четырёх ненужных символов, которые портят всю картину, если их предварительно перед расшифровкой не удалить. Анализ и поиск этих ненужных символов тоже отнимает время и силы.
Благодаря теоремам baat, был реализован механизм получения значений таблиц замен codec_a и codec_b, а также вероятности наличия мусора (или его точного значения) только по значениям зашифрованной ссылки и её реальной (расшифрованной).
Встречайте:
Uppod Experiment - восстановление codec_a, codec_b, определение муcора, а также алгоритма использующегося при кодировании (определение алгоритма использования hash).
Как получить зашифрованную и реальную ссылки на странице фильма
Для этого проще всего использовать современный браузер, в котором есть средства разработчика (есть практически во всех последних популярных браузерах от IE до Opera).
Я расскажу на примере использования Chrome.
1) После открытия страницы с видео в браузере, нужно посмотреть содержимое html и поискать, как правило, тег <object... в котором указаны параметры флеш-плеера и ссылка на плейлист (обычно как параметр pl=) или видео файл (как параметр file=).
Если тег <object или <video со ссылками не найден, то можно поискать тег <iframe и если такой есть, посмотреть что именно из него загружается. Очень часто код плеера спрятан именно за iframe.
Чтобы среди кучи html кода найти место, где расположен именно код плеера или iframe, можно воспользоваться инструментами разработчика и нажав правой клавишей мышки на элементе рядом с плеером на странице (на самом плеере не получится, ибо это, как правило, флеш объект и у него своё контекстное меню). В появившемся меню выбрать "Посмотреть код" (в IE это будет "Проверить элемент", в Firefox "Исследовать элемент") - откроется окно со структурой HTML DOM загруженной страницы.
И перемещая мышку над тегами найти подсвечивающий именно наш плеер элемент. Раскрыть его, если нужно и углубляться пока не найдём тег <object или участок кода с зашифрованными ссылками.
После этого у нас будет зашифрованное значение ссылки на плейлист или видео-файл.
2) Подсмотреть реальную ссылку можно путём отслеживания запросов самого браузера.
В инструментах разработчика обычно есть вкладка "Network" или "Сеть", где можно посмотреть запросы и ответы, которые делает и получает браузер.
Чтобы подсмотреть ссылку на видео - нужно при открытых инструментах разработчика запустить со страницы фильм на просмотр.
Чтобы подсмотреть ссылку на плейлист, нужно обновить страницу с плеером, чтобы при загрузке и инициализации плеера был запрос на плейлист. После чего, среди множества ссылок запросов нужно найти именно запрос на плейлист.
После этого у нас будет реальная ссылка на плейлист или видео (расшифрованная).
После чего эти данные можно использовать в Uppod Experiment для того, чтобы получить таблицы замен или алгоритм. А также найти мусор, который мешает правильно раскодировать ссылки.
Наглядная демонстрация поиска шифрованных и реальных ссылок: