Автор Тема: Защищённые от редактирования zip архивы  (Прочитано 3555 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн gepar

  • Пользователь
  • Сообщений: 10150
  • Пол: Мужской
  • ▂ ▃ ▄ ▅ ▆ ▇ █
    • Просмотр профиля
В последнее время всё чаще стал встречать защищённые zip (если точнее то jar, но jar это по сути тот же zip) архивы.
Вопрос: как это реализуется вообще? Ведь если достать файлы из архива то никаких особенных атрибутов у него там нет, а вот при попытке редактировать / удалять файлы в таком архиве я получаю ошибку:

При попытке редактирования другими архиваторами (7zip например) получаем тоже ошибку.
Пример такого архива: http://upwap.ru/1362823

Оффлайн HardWareMan

  • Модератор
  • Сообщений: 7435
    • Просмотр профиля
Re: Защищённые от редактирования zip архивы
« Ответ #1 : 15 Март 2011, 19:49:53 »
Если глянуть на первые 32 байта архива (там где заголовок), то можно заметить отличия:
[b]Твой:[/b]
Offset      0  1  2  3  4  5  6  7   8  9  A  B  C  D  E  F
00000000   50 4B 03 04 14 00 08 00  08 00 33 74 33 3E 00 00   PK........3t3>..
00000010   00 00 02 00 00 00 00 00  00 00 09 00 00 00 4D 45   ..............ME

[b]ZIP, созданный WinRar'ом:[/b]
Offset      0  1  2  3  4  5  6  7   8  9  A  B  C  D  E  F
00000000   50 4B 03 04 0A 00 00 00  00 00 EA 06 62 3E 00 00   PK........к.b>..
00000010   00 00 00 00 00 00 00 00  00 00 06 00 00 00 6D 61   ..............ma
Не скажу точно, но разве пятый байт не указывает на версию/метод алгоритма? Если это так (покури основы структуры ZIP архива), тогда это действительно другой метод и редактировать его невозможно (при условии совместимости для извлечения).

Оффлайн GManiac

  • Пользователь
  • Сообщений: 1284
    • Просмотр профиля
Re: Защищённые от редактирования zip архивы
« Ответ #2 : 15 Март 2011, 20:20:52 »
Ведь если достать файлы из архива то никаких особенных атрибутов у него там нет, а вот при попытке редактировать / удалять файлы в таком архиве я получаю ошибку:
Ключевое слово - в архиве. Ты работаешь с файлами внутри архива не через файловую систему, а через архиватор. А в архиве могут быть дополнительные указания архиватору, что файлы менять нельзя. Я не вижу большой проблемы, просто эта функция (заблокированный архив) делается для того, чтобы СЛУЧАЙНО не изменил ничего внутри.

Оффлайн gepar

  • Пользователь
  • Сообщений: 10150
  • Пол: Мужской
  • ▂ ▃ ▄ ▅ ▆ ▇ █
    • Просмотр профиля
Re: Защищённые от редактирования zip архивы
« Ответ #3 : 15 Март 2011, 20:52:31 »
GManiac,да нет, там цель другая была у автора  :D Но это не важно, я думал может хитрость есть какая обхода этой штуки, но как уже догадываюсь после сообщения HardWareMan'а что нет такой хитрости . Ну и как самому склепать такой архив интересно воть. Ну да может кто зайдёт ещё в тему и скажет что интересное  :)

Оффлайн HoRRoR

  • Пользователь
  • Сообщений: 983
  • Пол: Мужской
  • Ромхакер
    • Просмотр профиля
Re: Защищённые от редактирования zip архивы
« Ответ #4 : 15 Март 2011, 22:42:58 »
Извлеки всё и перепакуй заново, что мешает?

Оффлайн gepar

  • Пользователь
  • Сообщений: 10150
  • Пол: Мужской
  • ▂ ▃ ▄ ▅ ▆ ▇ █
    • Просмотр профиля
Re: Защищённые от редактирования zip архивы
« Ответ #5 : 15 Март 2011, 23:09:03 »
HoRRoR,да ничего не мешает конечно же,  ты в этом случае как капитан очевидность  :) Этим и занимаюсь сейчас когда работаю с такими защищёнными архивами . Да только неудобно при операциях с такими архивами каждый раз перепаковывать их если архивов таких много и в каждом файлов  мелких допустим по штук 200 (время извлечения и повторной упаковки возрастает), а вот были бы они нормальные то добавить  в них во все файл/заменить нужный было бы дело буквально 10-15 секунд и то это время тратилось бы не на мои телодвижения с мышкой и клавиатурой, а на просто копирование элемента в каждый из архивов.

Оффлайн GManiac

  • Пользователь
  • Сообщений: 1284
    • Просмотр профиля
Re: Защищённые от редактирования zip архивы
« Ответ #6 : 15 Март 2011, 23:31:51 »
Делаются это в опциях архивирования - заблокировать архив или как-то так.

Добавлено позже:
Очевидно, что тип архива однозначно определяется в заголовке, всего этак 4 байта. Т.е. один атрибут для всего архива. Проверил на 1 или на 2 файлах - заголовок для одинаковых опций сжатия совпадает.

Добавлено позже:
Это значит, что если ты узнаешь, как правильно взломать заголовок так, чтобы только снять атрибут "Заблокированный" с архива и не затронув опции сжатия, ты сможешь превратить твои архивы в обычные. Проблема в том, что я не могу проследить закономерности, как этот атрибут ставится - потому что он меняет сразу 4 байта.

Добавлено позже:
Или надо ПОДОБРАТЬ такие же параметры сжатия, какие были в оригинале, чтобы заголовок в твоём ручном архиве совпал с оригиналом.. Потом сделать архив с такими же параметрами, но без блокировки, взять из него заголовок и всунуть в твои архивы. Вот так.

Оффлайн HoRRoR

  • Пользователь
  • Сообщений: 983
  • Пол: Мужской
  • Ромхакер
    • Просмотр профиля

Оффлайн HardWareMan

  • Модератор
  • Сообщений: 7435
    • Просмотр профиля
Re: Защищённые от редактирования zip архивы
« Ответ #8 : 16 Март 2011, 07:58:05 »
http://en.wikipedia.org/wiki/ZIP_(file_format)#Technical_information
Цитата
 0    4    Local file header signature = 0x04034b50
 4    2    Version needed to extract (minimum)
0x14 против 0x0A. Еще вопросы?

PS Уточняю: некоторые новые архивы старые архиваторы распаковывают, но не могут изменить или добавить файлы. Так и ругаются: нет метода.