LINUX.ORG.RU

«Распаковать» .run файл


1

1

Есть файл, который представляет собой «инсталлятор» (с гуем, и прочей фигней написанной на qt, а также текстовым инсталлером)

~  > file SenchaSDKTools-2.0.0-beta3-linux-x64.run 
SenchaSDKTools-2.0.0-beta3-linux-x64.run: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), statically linked, stripped

С целью дальнейших издевательств над ним и написания пакета по вменяемой его инсталляции в систему нужно его распаковать. Ключи для неинтерактивной инсталляции есть, но хочется не использовать их. Обычно .run файлы которые я встречал были связкой шелл-скрипта и архива. Здесь же не так. Может ЛОР подскажет чем его распаковать?


Может ЛОР подскажет чем его распаковать?

fakeroot не спасет?

lazyklimm ★★★★★ ()
Ответ на: комментарий от lazyklimm

fakeroot решает другую проблему :) Пока стоит вопрос просто распаковки файлов в PKGBUILD

xanf ()

ман дизассемблер

anonymous ()
Ответ на: комментарий от anonymous

Спасибо кэп. Я понимаю что можно отреверсить алгоритм, интересует - может кто-то знает чем подобные инсталлеры ваяют. Похоже на что-то дефолтное

xanf ()

Так, похоже это какой-то bitrock installer. Буду копать туда :)

xanf ()
Ответ на: комментарий от xanf

ну как, fakeroot позволяет его поставить без рутовых прав в любой каталог, а там уже можно собирать из этого каталога что нужно.

Или это не устраивает?

lazyklimm ★★★★★ ()

Натравите на него foremost. Наверняка внутри по какому-то offset'у лежит вполне читаемый архив.

AITap ★★★★★ ()
Ответ на: комментарий от AITap

Про foremost, забыл, спасибо. Не помогло. Вытащило только ряд PNG-иконок (штук 10 всего)

xanf ()
Ответ на: комментарий от xanf

я в свое время так делал, пускал в скрипте цикл по всей длине файла, в нем копировал файл с текущего оффсета до конца, и натравливал file на эту копию

lazyklimm ★★★★★ ()
Ответ на: комментарий от xanf

кстати, там оно ещё и UPX-нутое, судя по всему, но в лоб через upx -d не распаковалось

lazyklimm ★★★★★ ()

установи в $HOME временного пользоватля, скопируй файлы и делай с ними все, что душа пожелает

chg ★★★★★ ()
Ответ на: комментарий от chg

оно позволяет выбрать куда ставить, так что даже это не нужно

lazyklimm ★★★★★ ()

в общем, суть такова:

судя по всему в файле упакованный upx-ом (и возможно с попорченными сигнатурами, так как распаковываться отказыватеся) исполняемый файл, к которому прилеплен архив с нужным хозяйством.

lazyklimm ★★★★★ ()
Ответ на: комментарий от lazyklimm

судя по всему в файле упакованный upx-ом (и возможно с попорченными сигнатурами, так как распаковываться отказыватеся) исполняемый файл, к которому прилеплен архив с нужным хозяйством.

А что будет, если к упакованному UPX-ом распаковщику cat-ом приклеить архив? Распакует ли его UPX?

Обычно я для распаковки *.run-ов с архивами использую 7-zip, но в данном случае не работает.

question4 ★★★★★ ()

По смещению 0x745f6 начинается что-то похожее на ZIP-файл.

question4 ★★★★★ ()

У bitrock-инсталляторов есть флаг --mode unattended. При этом происходит распаковка и инсталляция безо всякого взаимодействия с пользователем.

annulen ★★★★★ ()
Ответ на: комментарий от question4

что-то похожее на ZIP-файл.

Похоже на упакованный без сжатия плагин для браузера или архив Java. Не то :(

question4 ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.