Сейчас на форуме: NIKOLA, Magister Yoda (+5 невидимых) |
eXeL@B —› Крэки, обсуждения —› DoSWF Анпак. |
Посл.ответ | Сообщение |
|
Создано: 27 марта 2018 04:07 · Поправил: Fenrisus · Личное сообщение · #1 Доброго времени суток. Столкнулся тут с такой вот штукой на флеше, называется DoSWF... Суть проблемы в кратце: Есть Encrypted SWF файл, который не открывается ни одним из дизасемблеров SWF/ActionScript. Нужно как то его декриптнуть, что бы читался. Пробовал его анпакнуть ипользуя этот код (взято с гитхаба): Code:
Раньше работало, сейчас уже нет... Суть проблемы более подробно: Все эти скрипты (а их всего то было две штуки) 2009 года... Пробовал RABCDAsm'ом, в лоб... Может не умею готовить, но это же бинарная шляпа... даже нет дизасм кода.... -_-'' Да в принципе и не будет. DoSWF работает как то так: запихивает одно в другое, и делает бинарной шляпой. Другой SWF аки лоадер имеет закриптованную функцию (а учитывая то что это китайский криптор, поди разбери...) которая собстно в памяти и собирает уже нормальный swf из бинарной шляпы. Ну или как то похоже. Как это работает сейчас - без понятия. Ибо самому свежему мануалю как оно работает уже 6 лет... По идее, GL.swf цепляет этот 0.0 файл и с помощью него анпакает 30005.swf(программу)... Но вот как оно это делает я увы не понял. Тыкал JPEX'ом GL.swf но так и не понял как мне анпакнуть 30005.swf что бы он открывался JPEX'ом или любой другой подобной утилитой. (а так - они не открываются, там ни хедера ничего нет, просто бинарная шляпа внутри и все). Покажите и научите если не сложно. Я бы и сам, как говорится методом тыка, проб и ошибок... да только нигде нет информации, примеров, мануалов о том как анпакать DoSWF, а та что была - уже сильно устарела... Мне бы на примере этого файла (30005.swf) кто показал, как чего к чему... понимаю что прошу много, время - штука ценная. Я был бы благодарен за любую помощь - Скрипт-пример анпака с комментами, псевдокод с описанием алгоритма анпака, а может быть небольшой туториал/пример как это сделать через RABCDAsm? Главное, это что бы этот encrypted файл можно было читать JPEX и другими утилитами для декомпиляции SWF файлов (Windows). UPD: Из этого кода ясно что это именно DoSWF (@doswf__u) Но вот как анпакнуть зашифрованные файлы... PS. Знаю что возможно эта темка должна быть в обсуждениях протекторов... Но DoSWF (может я и ошибаюсь) это не протектор а encrypt tool. Вообщем у него различий с любыми пакер-протекторами больше чем сходств (насколько вообще применимо понятие протектора для Flash'а), потому и написал сюда. Просьба не винить если если это не так. |
|
Создано: 27 марта 2018 04:21 · Поправил: Rio · Личное сообщение · #2 |
|
Создано: 27 марта 2018 04:25 · Поправил: Fenrisus · Личное сообщение · #3 Rio пишет: пробовали?: --> Link <-- Абсолютно ВСЕ из перечисленного. Ничего не работает. Самое новое (а скорее всего это просто репосты старой информации) 2012 года... Скрипт с гитхаба - выше. Я его и пробовал. Ошибки буфферов. Скрипт который на С++ invalid header. Тоже не работает. Swf Reader (был такой), скачан с sourceforge - он его даже не может загрузить. JPEX - не имеет анпакеров каких либо вообще. Softonic - Не может загрузить. Еще пара старых утилит (от которых нет исходников) - либо не могут загрузить этот файл в принципе, либо сыплются с exeption'ами. |
|
Создано: 27 марта 2018 08:44 · Личное сообщение · #4 https://exelab.ru/f/action=vthread&forum=1&topic=18041&page=9 | Сообщение посчитали полезным: plutos |
|
Создано: 27 марта 2018 10:31 · Личное сообщение · #5 Ещё это почитайте: ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. | Сообщение посчитали полезным: Gideon Vi |
|
Создано: 27 марта 2018 18:17 · Поправил: Fenrisus · Личное сообщение · #6 Почитал, посмотрел. По ссылке на exelab, такой вот небольшой отчет для примера: SWF iD - малоюзабельно, а то что это doSWF - и так понятно. Action Script Viewer (ASV) - Читал еще вот это Но увы, метод энкрипта у них поменялся явно. проблема собственно говоря вот в чем. : Это лоадер(ы). А вот файлы, которые и являются собственно самим приложением (они не грузятся в плагине и являют собой просто бинарную дрянь): лежат как бы отдельно. И они не зашиты в лоадер (как в предыдущих версиях doSWF). Лоадеров тут аж 3 штуки(???) И каждый со своим кодом: Собственно: На данный момент, я использую простой код, и дампаю SWF через PID процесса, а именно указав плагин контейнер огнелисы. Как говорится "в ручную" Код можно посмотреть Файлы весьма себе читабельные, и что удивительно не шибко и обфусцированные (на уровне обычного декомпиля с _loc_ и прочими param43). Но есть один фатальный недостаток такого метода, что дампая так, да ты получаешь анпакнутые swf, но при этом, какой из них какой - не понятно. Единственный метод, это дампнуть таким образом их все (а их там и потом рученьками пересобрать целый проект в идее, попутно фикся декомпиль? Ну такое себе... Я вот пытаюсь как то так - найти способ анпакнуть эти файлы не тыря их из памяти (с оригинальными именами) через RABCdasm я отломаю doSWF лодыри хукнув туда обычный лоадер, что бы работали обычные swf, а не бинарная шляпа с лоадером. Есть идеи как распаковать их не тыря их из памяти (в обход лоадера)? |
|
Создано: 28 марта 2018 23:07 · Поправил: 4kusNick · Личное сообщение · #7 Fenrisus пишет: Action Script Viewer (ASV) - На оффсайте doSWF есть anti-hack proof, для версии 5.5, программа крашится. Версия 5.5 - древний мамонт, удивительно что он у вас вообще запустился. Да и не нужен он там особо. Что нужно: дамп двух swf, на которые doSWF делит исходную SWF, затем собрать их вместе, выкинув мусор от doSWF который он вписывает для инициализации. В статье по ссылочке что я кидал описан этот метод. Проблема у вас в идентификации валидных SWF в памяти. doSWF гадит фальшивками что вы уже заметили. Для их отсеивания используйте на выбор: - SWF Revealer Ultimate (платный, хз есть ли в паблике ломанный) - SWF Revealer который идет плагинчиком к свежим ASV - дампер памяти из замечательной тулзы SWF iD которую вы недооценили. В дампере есть механизмы отсеивания мусорных swf, чувствительность можно настроить слайдером, поизучайте В итоге получите 2 swfки - в одной данные (ассеты графики шрифты и проч) в другой код. И склеивайте их по инструкции из статейки. ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. | Сообщение посчитали полезным: sashka2002, Fenrisus |
eXeL@B —› Крэки, обсуждения —› DoSWF Анпак. |