Сейчас на форуме: -Sanchez- (+8 невидимых) |
eXeL@B —› Основной форум —› Flash (swf). Декомпиляция, взлом |
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 . >> |
Посл.ответ | Сообщение |
|
Создано: 11 апреля 2011 15:04 · Поправил: 4kusNick · Личное сообщение · #1 Дружественные темы: Анализаторы: Декомпиляторы\редакторы: Работа с байткодом\тэгами: Автоматизированное снятие защит + уже упомянутые: ASV, FFDec, RABCDAsm mod и SWF Reader. Дапмеры\Распаковщики (для тех, кому лень Есть ещё обычный SWF Revealer, который входит в комплект ASV. Тоже весьма прокачанный распаковщик, работает по другому принципу. + уже упомянутые: SWF Reader, SWF iD. Разное За скомпилированный бинарь Другие местные обсуждения в области исследования Flash: Чтиво на тему Доки \ маны Debug-версии Flash Player - Они позволяют трейсить и отлаживать код (см. описание AS3Trace и AS3Verbose ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. | Сообщение посчитали полезным: uncleua, OKOB, SReg, res, ClockMan, Gideon Vi, sendersu, Oott, _ruzmaz_, FrenFolio, d0wn, SGA, Flint, Coderess, daFix, Runner, tracename, pollllll_n, Hexxx, DenCoder, Lumen, NikolayD, AKAB, ==DJ==[ZLO], Rustem, BAHEK, SyntaX, nick8606, UniSoft, Soso, sivorog, MarcElBichon, soho |
|
Создано: 12 июня 2013 15:56 · Личное сообщение · #2 ASDec преобразился и неплохо обновился: ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. | Сообщение посчитали полезным: Gideon Vi |
|
Создано: 15 июня 2013 18:34 · Поправил: JohnyDoe · Личное сообщение · #3 Кстати китайскую поделку я таки разобрал. Не то чтобы у меня сложилось полное понимание того как там все работает, но все же. В кратце. Флешку кромсают так же как и в случае doSWF. Прелоадер что-то химичит и если его изменить, то флешка перестает работать. Что-то он там делает на основе загруженных своих же байт. Код там какой-то хитрый и достаточно длинный. Я не стал разбираться с ним. Просто сдампил загружаемые флешки и начал их ковырять. Всякие декомпилеры на них жестко тупили. Правда елтимовский все таки открывал и я посмотрел что там хоть есть. Т.к. я не нашел внутри шейпов, то я предположил что все батоны и спрайты фальшивые. Скорее всего это слишком смелое предположение, но это сработало. При помощи swfsplit'a разрезал флешку и удалил "левые" на мой взгляд объекты. Это были: Cпрайты - код 39; Батоны - код 34; DoInitAction - код 59; DoAction - код 12; + все что было после объекта end. Потом собрал все назад в одну кучу. Открыл софинком и о чудо он не упал. Проделал тоже самое со второй флешкой. Объединил первую и вторую. Запускаю. И все работает как часы. Код надо сказать оказался замусорен. Присутствуют "левые" операторы newfunction, видимо подсмотрели у SecureSWF 4.0. Также насовано своих разных дурацких if'ов. С которыми бороться сложнее. AS3Sorcerer их берет без проблем. Некоторые строки переименованы знатно, но это вообще не проблема. Вот иллюстрация того что было и то что я получил после несложной манипуляции. Вобщем как-то так. P.S. никак из заголовка файла не разобрал что за защита была. Там на китайском. А это часть кода из прелоадера Switch очень длинный и естественно там не просто break в каждом кейсе. Вот пример того что там Code:
В конце какая-то очень длинная "колбаса" из кода не стал сюда выкладывать. | Сообщение посчитали полезным: 4kusNick |
|
Создано: 16 июня 2013 21:40 · Личное сообщение · #4 Еще одно подтверждение тому, что все, кроме обфускации имен в swf, - обратимо и взламываемо. Если интересно покопаться в защитах - разбери SWF Cry - тот же пример с сайта прота, если ещё не пробовал (не помню, говорил я тебе про него ранее или нет). Там приятные интересности алхимические есть, правда когда уже ознакомишься с алхимией дальше не так интересно. ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. |
|
Создано: 20 июня 2013 23:48 · Поправил: 4kusNick · Личное сообщение · #5 FFDec (JPEXS Free Flash Decompiler) обновился до 1.6.3! Release date: 06/20/2013 New: Parallel SpeedUp can be disabled in menu Better loop detection Fixed: Replacements file not found issue AS1/2 postincrement fix Fixed loop detection Fixed loop highlighting in export Flash player file path detection Improved imports CommentItem fix Better deobfuscation AS3 inc/dec local deobfuscation fix Memory limit increased Еще раз обновился, до 1.6.3u1 с мелким фиксом Memory limit decreased - FFDec was not working on 32 bit JVM. Кстати, кто ещё не пробовал - очень рекомендую, лучший аналог ASV (по качеству деобфускации) что я видел. А концепт живого редактирования кода (дада, именно кода, а не байткода - экспериментальная фича) вообще выносит мозг. Автор относительно активно фиксит баги, так что если кто чего найдет - смело оставляйте в ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. | Сообщение посчитали полезным: Gideon Vi |
|
Создано: 21 июня 2013 18:48 · Поправил: 4kusNick · Личное сообщение · #6 Обновил шапку, добавил секцию с дамперами и статьями, почистил всякое старьё. Тем временем FFDec обновился ещё разок: 1.6.3 update 2 Release date: 06/21/2013 New: Ifs with empty onTrue branches now inverted Fixed: Long line restriction removed ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. | Сообщение посчитали полезным: nick8606, drone |
|
Создано: 01 июля 2013 22:32 · Личное сообщение · #7 Релизнулся Очень годный софт для первичного анализа защищенной swfки (особенно тем, кто ранее с флэшом мало сталкивался), есть сигнатурный анализ протекторов, прикольный дампер, и много чего еще. Крооме того, офигенски обновился FFDec: 1.6.4 New: Globally rename identifier (!) Deobfuscation - rename identifiers according to type (!) Drag & Drop SWF file to main window opens it Context menu integration on Windows Drag & Drop items from tree outside of application AS3: Find document class Using exportassets tag for tag names New lines in plain text export Display AS2 classes as tree of packages Better loop detection Remembering window size + splitbar positions between runs Fixed: AS1/2: not refreshing decompiled after rename Renaming SymbolClass identifiers too Renaming identifiers renamed strings Invalid text positions in FLA export Unicode support Escape filenames during obfuscated AS3 export Better package vs classname handling Empty if branches not inverted Better search handling (not freezing) AS3: Try statements in loops Graph repaint problem AS3: Improper rest parameter handling Commandline binaryData export DefineBitsJPEG2 image replacing Closing SWF file after loading other minor fixes 1.6.4 update 1 Fixed: For loops detection AS3:direct lookupswitch support ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. |
|
Создано: 07 июля 2013 02:16 · Личное сообщение · #8 У SWF iD появился свой сайт: Добавлено в шапку. ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. |
|
Создано: 07 июля 2013 13:42 · Личное сообщение · #9 Добавьте в шапку ZWS decompress 683f_07.07.2013_EXELAB.rU.tgz - ZWS decompress.rar ----- Nulla aetas ad discendum sera |
|
Создано: 07 июля 2013 17:03 · Личное сообщение · #10 |
|
Создано: 18 июля 2013 19:58 · Личное сообщение · #11 |
|
Создано: 18 июля 2013 21:44 · Личное сообщение · #12 Xlab0s http://zalil.ru/34643385 5.01 ----- [nice coder and reverser] | Сообщение посчитали полезным: Xlab0s |
|
Создано: 21 июля 2013 14:54 · Поправил: JohnyDoe · Личное сообщение · #13 Что-то описания работы для ffdec нигде нет. Я решил его попинать чуток, чтобы понять на что он годен. Возникло некое непонимание. Может кто сможет прояснить? Баловался с деобфускацией. Если выставляю обработать все классы, ffdec что-то там молотит часик, судя по нагрузке на процессор. Потом нагрузка на проц пропадает, индикатор рядом с деобфускацией продолжает крутиться. И так до бесконечности. Если не выставлять птицу "обработка всех классов", то мгновенно выскакивает окно что все сделано. Но видимо ничего не сделано, потому как в сохраненном файле ничего не меняется. Как эту птицу использовать? У всех так долго деобфускация работает? Понятно что зависит от исходного swf, но все же. Я экспериментировал с добавлением в rabcdasm функционала по удалению лишнего кода, он у меня это делает можно сказать на лету. Корявенько правда, но делает и быстро. Восстановление порядка выполнения кода я не делал, к rabcdasm это прикрутить непросто. Хотя может я просто еще не продумал этот вопрос до конца. |
|
Создано: 21 июля 2013 16:31 · Личное сообщение · #14 JohnyDoe пишет: Если выставляю обработать все классы, ffdec что-то там молотит часик, судя по нагрузке на процессор. Потом нагрузка на проц пропадает, индикатор рядом с деобфускацией продолжает крутиться. И так до бесконечности. Это баг. JohnyDoe пишет: Как эту птицу использовать? Если она не установлена, то обрабатывается только тот класс что сейчас открыт. Если в открытом классе ничего не меняется, но должно - значит тоже баг. Деобфускация у меня работает быстро, тормозить её может автоматическая деобфускация впринципе, попробуй отключить её и посмотреть стало ли быстрее. ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. | Сообщение посчитали полезным: JohnyDoe |
|
Создано: 21 июля 2013 18:15 · Поправил: JohnyDoe · Личное сообщение · #15 4kusNick пишет: Если она не установлена, то обрабатывается только тот класс что сейчас открыт.Если в открытом классе ничего не меняется, но должно - значит тоже баг. Вообще код "выпрямляется" вполне пристойно. Т.е. я вижу что код выпрямлен. При сохранении файла должны эти изменения внестись в код? SWFDecompiler не показывает изменений в деобфусцированном классе, после сохранения файла в FFDec. |
|
Создано: 21 июля 2013 20:07 · Личное сообщение · #16 |
|
Создано: 21 июля 2013 20:47 · Поправил: JohnyDoe · Личное сообщение · #17 Вобщем вроде что-то прояснилось. Когда я не врубаю "обработать все классы", у меня срабатывает деобфускация только когда я функцию выделяю. И деобфусцируется только эта функция. После сохранения в SWFDecompiler'е эта функция выглядит нормально, а остальные функции класса остаются не деобфусцированными. Весь класс полностью деобфусцировать что-то не получается пока. |
|
Создано: 21 июля 2013 22:04 · Личное сообщение · #18 |
|
Создано: 22 июля 2013 15:32 · Личное сообщение · #19 Код подчищается только визуально, т.е. ты в окне видишь красивый код, но при сохранении файла ничего не меняется. Изменения сохраняются только когда ты жмакаешь по телу функции. После этого функция загружается в окне P-кода. Если при этом сделать деобфускацию, не трогая все классы, то в окне P-кода код будет обработан и при сохранении ты увидишь изменения. Во всяком случае у меня так... |
|
Создано: 23 июля 2013 15:31 · Поправил: Xlab0s · Личное сообщение · #20 |
|
Создано: 23 июля 2013 17:16 · Поправил: 4kusNick · Личное сообщение · #21 А шапку почитать? ASV не позволяет нормально вручную править байткод, правда можно из него сохранить swf после деобфускации. Используйте FFDec или RABCDasm (и его производные). Flasm с as3 не работает. PS: ваша флэшка не будет работать без сервера (она получает оттуда необходимые для работы данные). ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. | Сообщение посчитали полезным: Xlab0s |
|
Создано: 23 июля 2013 17:33 · Личное сообщение · #22 |
|
Создано: 02 августа 2013 19:17 · Личное сообщение · #23 |
|
Создано: 02 августа 2013 20:37 · Личное сообщение · #24 Парсеры - это инструменты для разбора чего-либо, в данном случае вы выдали полную кашу. На самом деле вам нужен граббер, например Sothink SWF Catcher. ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. | Сообщение посчитали полезным: Xlab0s |
|
Создано: 03 августа 2013 01:35 · Личное сообщение · #25 Xlab0s SWF iD может сдампить флешки в папку, например, с процесса FlashPlayerPlugin. | Сообщение посчитали полезным: Xlab0s |
|
Создано: 04 сентября 2013 18:53 · Личное сообщение · #26 Товарищи, кругом активно обсуждаются способы дампа флэшек из приложений, а что делать с дампом файлов из флэшек? Неоднократно сталкиваюсь со следующей схемой: флэшка грузит зашифрованный файл (jpg/pdf), расшифровывает его (как понимаю, в памяти) и показывает внутри себя. Понятно, что можно декомпилировать флэшку, разобраться с алгоритмом дешифровки и написать свой распаковщик, но на разных сайтах разное шифрование и неохота делать эту работу каждый раз по-новой. Вопрос: есть ли дампер расшифрованных файлов, с которыми работает флэшка? |
|
Создано: 04 сентября 2013 21:38 · Личное сообщение · #27 |
|
Создано: 04 сентября 2013 23:34 · Личное сообщение · #28 Не во всех случаях прокатит - обычно сжатые файлы разжимаются перед отображением. Проще всего внедрить код дампера в swfку, который будет сохранять файл после расшифровки. ----- Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску. | Сообщение посчитали полезным: DimitarSerg |
|
Создано: 05 сентября 2013 04:54 · Личное сообщение · #29 |
|
Создано: 05 сентября 2013 06:40 · Личное сообщение · #30 |
|
Создано: 26 сентября 2013 22:17 · Поправил: JohnyDoe · Личное сообщение · #31 |
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 . >> |
eXeL@B —› Основной форум —› Flash (swf). Декомпиляция, взлом |