Сейчас на форуме: site-pro, Rio, johnniewalker, vsv1 (+5 невидимых)

 eXeL@B —› Крэки, обсуждения —› Decrypt SWF, подверженный обфускации Amayeta SWF Encrypt
<< . 1 . 2 . 3 . 4 . >>
Посл.ответ Сообщение

Ранг: 0.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 октября 2008 17:40 · Поправил: root-master
· Личное сообщение · #1

Доброго времени суток!

Я работаю над проектом, задачей которого является получение live статистики матчей на одном из серверов (http://www.atptennis.com/; флешка по адресу http://www.protennislive.com/frameset.asp?year=2008&wkno=39&lang=en&ta bno=1&eventid=M015&ref=www.atptennis.com) по определенным запросам. Проблема заключается в том, что данные с каких-то пор начали шифроваться (раньше они приходили в открытых xml-файлах).
Этот вопрос поднимался на cracklab.ru
http://www.exelab.ru/f/action=vthread&forum=5&topic=10317
Однако достучаться до человека, который вроде бы нашел алго, не получилось (его ник TamTam).

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

Проблемы сл характера:
SWF подвержен обфускации однозначно. Предположительно Amayeta SWF Encrypt.

Попытка решения данного вопроса :

- Пробовал пропускать флешку через SWF Protect Remover, но не помогло, только размер вырос.

- В сети нашлось пару тем по защитам ActionScript в swf.
http://www.woodmann.com/forum/showthread.php?t=11720
http://www.w oodmann.com/forum/showthread.php?t=10300
Однако те методы, которые использовались для снятия защиты уже порядком устарели, либо используется какая-то доп защита.

Как следствие, Action Script-ы абсолютно нечитабельны.
Среди констант нашлось что-то наподобие используемого словаря для шифрования входящего сообщения.
Это было замечено ещё TamTam-ом.
1234567890ABCDEFGHIJKLMNOPQRTSUVWXYZabcdefghijklmnopqrstuvwxyz.,/?!@$% ^&*()_+-=:;~{}<>

Пробовал ксорить :

alph := '1234567890ABCDEFGHIJKLMNOPQRTSUVWXYZabcdefghijklmnopqrstuvwxyz.,/?!@$ % ^&*()_+-=:;~{}<>';

function GetIndSymb(ch: char): integer;
var
i: integer;
begin
for i:=1 to length(alph) do
if alph[i] = ch then
begin
Result := i;
Exit;
end;
end;

function XorAlg(s: string): string;
var
CurIndEl: integer;
begin
for CurIndEl:=1 to length(s) do
begin
s[CurIndEl]:=chr(ord(s[CurIndEl]) xor byte(GetIndSymb(s[CurIndEl])));
end;
Result := s;
end;

Однако тоже ничего не вышло. Все попытки вычислений позиций в словаре, побитовые умножения, сложения - ничего толком не дали. Вообще ничего.

Запустить каким-либо образом виртуальную машину, чтобы перед тем, как, по идее, выполнялся бы байт-код по распаковки полученных шифр. данных от сервера, тоже понятия не имею Как.

Сегодня на утро пришла несовсем здравая мысль конвертировать .swf в .exe - и пропустить через дебагер, однако как и предполагалось раньше, конвертер, судя по всему, создает лишь оболочку для запуска флешки, ни больше, ни меньше.

Флешка в приложении (компрессор снял).

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

Ещё раз напоследок хочу выделить возможные варианты решения проблемы:
1. Попробывать снять обфускацию с флешки
2. Найти подход к запуску виртуальной машины и начать исследовать
3. Пробовать известные алгоритмы шифрации информации и применять их к данной задаче, с учетом того, что предположительные данные, которые можно получить в результате, имеются в наличии.
--
AQH18 :+M72JDN"eYV"Ybfp6682_DC8h<uI< 18.>Ou{l"aiy," H%288;5>46"z/xb" P@~LAFCk"p." +JqT"," F6l"hiUhvux" NGKg"Hqws.?Ttse,cqnvhos" ;O1V"tfczJnnhqeUathq.tY"Iv
Предположительно начало файла расшифровывается в последовательность:
<?xml version="1.0"?><MatchList_Live eventId="
--

Прошу, если кто может помочь в данном вопросе, или хотя бы наставить на истинный путь был бы оч признателен. Я писал модерам данного форума, но, видимо, сообщения не были доставлены до них в силу ранга моего аккаунта. Прошу, если есть возможность связаться с человеком TamTam, отписать в личку.




1024_08.10.2008_CRACKLAB.rU.tgz - de.swf



Ранг: 81.0 (постоянный), 88thx
Активность: 0.070.02
Статус: Участник

Создано: 08 октября 2010 06:41
· Личное сообщение · #2

sevenup пишет:
Лучше бы нашли методы как снимать защиту с флешек под SecureSWF, которая является лучшей в этой области.


Ты софтину то смотрел?

SWF Reader 2.2 build 22 - beta for test

Added:
+ Secure SWF 3.4 AS2 - beta deprotector: it can deprotect some functions...


www.swf-reader.com/news.php




Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 08 октября 2010 17:33 · Поправил: 4kusNick
· Личное сообщение · #3

uncleua пишет:
+ Secure SWF 3.4 AS2

Под as2 уже не актуально что-то писать, по-этому я сам не накрывал as2 флэшки SecureSWF'ом, и не видел что он там делает, но точно знаю, что под as2 можно творить страшные вещи и чудеса в плане обфускации, т.к. там были нативные eval'ы, хаки и прочая красота...
В любом случае, заботливый поляк не дремлет =) (я про автора SWF Reader)

sevenup
Если у вас найдется пример as3 флэшки под secureSWF'ом, которую надо депротектить\анпакать, или депротектить методы в коде, то киньте в пм или сюда, я бы глянул.

Кста, secureSWF обновился недавно)

-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.




Ранг: 48.2 (посетитель), 49thx
Активность: 0.040
Статус: Участник

Создано: 08 октября 2010 23:59
· Личное сообщение · #4

sllh
Спасибо

4kusNick пишет:
Если у вас найдется пример as3 флэшки под secureSWF'ом, которую надо депротектить\анпакать, или депротектить методы в коде, то киньте в пм или сюда, я бы глянул.

Да, лучше сюда

4kusNick, я как вижу у вас опыта больше, по этому предлагаю написать утилиту на подобии PEID для swf(совместно), если, конечно есть желание




Ранг: 1131.7 (!!!!), 447thx
Активность: 0.670.2
Статус: Участник

Создано: 09 октября 2010 02:32
· Личное сообщение · #5

LIZARD пишет:
предлагаю написать утилиту на подобии PEID для swf


как бы давно есть




Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 09 октября 2010 16:49
· Личное сообщение · #6

Gideon Vi как бы вынуждаете плодить ненужные сообщения
если есть, что бы не дать человеку название сразу?
---------------------------------------------------------------------------------------------
AS3 Sorcerer v1.04 никто не копал случайно?
ключик я имею ввиду не сделали? (патчить там не интересно совсем)

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh





Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 09 октября 2010 17:28 · Поправил: 4kusNick
· Личное сообщение · #7

Isaev пишет:
Gideon Vi как бы вынуждаете плодить ненужные сообщения
если есть, что бы не дать человеку название сразу?

Я кстати такого не знаю, правда, расскажите =)

Isaev пишет:
AS3 Sorcerer v1.04 никто не копал случайно?
ключик я имею ввиду не сделали? (патчить там не интересно совсем)

Я не копал - сделал просто ленивый S&R патч для анпакнутого exe ещё на 1.01, который и к 1.04 подошёл и не парюсь.

-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.





Ранг: 1131.7 (!!!!), 447thx
Активность: 0.670.2
Статус: Участник

Создано: 10 октября 2010 02:41 · Поправил: Gideon Vi
· Личное сообщение · #8

Мну обшибся - спутал с тулзой для net.

зы. нет, мну не наркоман



Ранг: 0.1 (гость)
Активность: 0=0
Статус: Участник

Создано: 10 октября 2010 04:05
· Личное сообщение · #9

Приветствую. В общем у меня огромная проблема. Целый день сегодня провозился с SWF, но так и не смог понять как его раскодировать и чем он вообще закодирован.
Пробовал вот это программой Sothink SWF Decompiler 6, но результата нет, она в итоге виснет.
Очень нужна ваша помощь.
Подскажите чем он закодирован и какой программой можно раскодировать.
Ссылка на файл(там 2 SWF): depositfiles.com/files/2u1af8fz2
Заранее огромное спасибо.




Ранг: 95.2 (постоянный), 26thx
Активность: 0.060
Статус: Участник

Создано: 10 октября 2010 04:58
· Личное сообщение · #10

makcxx
doSWF




Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 10 октября 2010 12:16
· Личное сообщение · #11

LIZARD пишет:
я как вижу у вас опыта больше, по этому предлагаю написать утилиту на подобии PEID для swf(совместно), если, конечно есть желание

Желание есть, а вот со временем уже хуже. А вообще, не так много протов флэшовых, чтобы детектор писать - можно на глаз без определять, более того, многие проты оставляют свои копирайты и нотисы в метадате.

-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.




Ранг: 0.4 (гость)
Активность: 0=0
Статус: Участник

Создано: 19 марта 2011 02:00
· Личное сообщение · #12

Ребят может поможете какой день бьюсь над этим !
Чем упакована и мож кто то возьмётся понять пару вещей
1. Как дешифруется картинка и как шифруется пост запросы
За помощь готов вознаградить.
Из собственных изысканий понял что там используетсмя DES но ключ к нему найти не могу.
Код чем то обрутен так как оч тяжело понимается.

ad3e_18.03.2011_CRACKLAB.rU.tgz - StrongCaptcha.swf




Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 19 марта 2011 16:51
· Личное сообщение · #13

pashaaa
Оно ничем не упаковано, просто покрыто обфускатором. Код - as3, так что разобраться можно при должном терпении.
Также обратите внимание, что флэшка извне принимает ряд параметров, передаваемых ей через flashVars (при эмбеде в html), если ещё не видели.

-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.




Ранг: 0.4 (гость)
Активность: 0=0
Статус: Участник

Создано: 19 марта 2011 20:33 · Поправил: pashaaa
· Личное сообщение · #14

4kusNick
Что из вне она принемает параметры я знаю
мож Возметесь обяснить как и что кодируется и чем?
А то я ас3 вообще не знаю.
Труды готов вознаградить




Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 19 марта 2011 22:10
· Личное сообщение · #15

pashaaa
Не, я очень ограничен в свободном времени =(
Пишите тут конкретные вопросы, которые будут возникать при анализе кода - я попробую помочь.

-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.




Ранг: 0.4 (гость)
Активность: 0=0
Статус: Участник

Создано: 20 марта 2011 00:52
· Личное сообщение · #16

4kusNick
Тогда в привате дай аську, или другой контакт а то тут писать не очень удобно




Ранг: 164.6 (ветеран), 65thx
Активность: 0.120
Статус: Участник
Волшебник

Создано: 24 июня 2011 19:49
· Личное сообщение · #17

Тема древняя, но новую не посчитал необходимым заводить.
Существуют ли в природе(или хоть в приватах) инструменты для деобфускации, отладки флеш?

-----
Следуй за белым кроликом




Ранг: 10.1 (новичок), 5thx
Активность: 0.010
Статус: Участник

Создано: 24 июня 2011 20:02 · Поправил: Runner
· Личное сообщение · #18

neomant пишет:
Существуют ли в природе


--> Не? <--




Ранг: 238.8 (наставник), 67thx
Активность: 0.20
Статус: Участник
CyberHunter

Создано: 17 июля 2011 15:29
· Личное сообщение · #19

Не выходит ничем из вышеперечисленного получить читабельный код после Amayeta
Гляньте кому не сложно http://floomby.ru/content/0aOKiJaqBE/

-----
Nulla aetas ad discendum sera




Ранг: 48.2 (посетитель), 49thx
Активность: 0.040
Статус: Участник

Создано: 17 июля 2011 21:28 · Поправил: LIZARD
· Личное сообщение · #20

ASV с ним справляется
http://rghost.ru/14874551

| Сообщение посчитали полезным: Flint

Ранг: 0.1 (гость)
Активность: 0=0
Статус: Участник

Создано: 19 июля 2011 15:54
· Личное сообщение · #21

Просьба, ктонибудь может помоч определить алгоритм генерации хеша в куках.

раньше была старая версия плеера на сайте, там был код

Code:
  1. var _loc_1:* = Strings.getAbsolutePath(item.file, config["netstreambasepath"]);
  2.             var _loc_2:* = item["token"] ? (item["token"]) : (config["token"]);
  3.             var _loc_3:* = item["mode"] ? (item["mode"]) : (config["mode"]);
  4.             if (_loc_3 == "antileech")
  5.             {
  6.                 _loc_5 = Number(item["leechtime"] ? (item["leechtime"]) : (config["leechtime"]));
  7.                 _loc_6 = item["leechdomain"] ? (item["leechdomain"]) : (config["leechdomain"]);
  8.                 _loc_1 = Antileech.secureUrl(_loc_1, _loc_2);
  9.                 Antileech.cooking(_loc_5, _loc_6);
  10.             }


Code:
  1. public class Antileech extends Object
  2.     {
  3.         private static var _timeout:Number;
  4.         private static var _path:String;
  5.         private static var _hash:String;
  6.  
  7.         public function Antileech()
  8.         {
  9.             return;
  10.         }// end function
  11.  
  12.         public static function cooking(param1:Number, param2:String)
  13.         {
  14.             CookieUtil.setCookie("hash", _hash, param1, param2);
  15.             return;
  16.         }// end function
  17.  
  18.         public static function secureUrl(param1:String, param2:String) : String
  19.         {
  20.             var _loc_3:* = param1.indexOf("?path=") + 6;
  21.             _path = Base64.Decode(param1.substring(_loc_3));
  22.             var _loc_4:* = new Date();
  23.             _timeout = _loc_4.getTime() + 1000 * 60 * 60 * 2;
  24.             _hash = MD5.encrypt(param2 + _path + _timeout);
  25.             return param1.substring(0, param1.indexOf("path=")) + "path=" + _path + "&t=" + _timeout;
  26.         }// end function
  27.  
  28.     }


Сейчас же обусфицировали package com.longtailvideo.jwplayer.media сlass HTTPMediaProvider extends MediaProvider
Вроде судя по pcodу алгоритм остался похожим, но хеш уже генерируется другой.

Ссылку на flv файл плеер получает вида

file=http://сайт/play.php?path=S2VubmVkeXMvdGhlLmtlbm5lZHlzLnMwMWUwNy53ZWJkbF9OZXdTdHVkaW8uVFYuZmx2&image=/files/series/cover-222.jpg&provider=http&skin=/files/player/modieus.zip&controlbar=over&mode=antileech&leechtime=180000&leechdomain=.сайт&token=4e256c62&bufferlength=10

раеьше для генерации хеша, котрый кладется в куки использовались токен, имя файла и текущее время

c3ab_19.07.2011_EXELAB.rU.tgz - player2.swf



Ранг: 0.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 24 августа 2011 19:39
· Личное сообщение · #22

Очень прошу помочь в борьбе с AS. Похоже прошлись обфускатором.
интересуют методы в com.neulion.adaptive.net
берем класс AdaptiveNetStream
Sothing 6.3 вообще падает при попытке открытия этого класса
Пробовал Flash Decompiler Trilix выдает какой-то странный код, не похоже на реальный
AS3 Sorcerer - тоже полно unresolved jump
SWFWire Inspector зависает при открытии этого класса
Подозрительных тегов от обфускатора не нашел. Имена классов/методов нормально читаются.
Может кто ASV попробует открыть?

Сама загадочная SWF лежит тут http://www.multiupload.com/MH6H09ZYWI




Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 24 августа 2011 21:05
· Личное сообщение · #23

anytype3 пишет:
AS3 Sorcerer - тоже полно unresolved jump

И чем это мешает? Это просто мусор, который при обфускации добавили, не обращайте на эти джампы внимание...
В ASV выдача не сильно будет от Sorcerer'овской отличаться - движок декомпила от одного автора.

-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.





Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 25 августа 2011 05:31
· Личное сообщение · #24

В аттаче сорцы пакейджа com.neulion.adaptive.net с перестройкой хода кода.
Пароль на архив - название этого ресурса.

cd07_25.08.2011_EXELAB.rU.tgz - src.7z

-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.




Ранг: 0.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 25 августа 2011 12:07
· Личное сообщение · #25

4kusNick
огромное спасибо!
а как получилось убрать джампы и перестроить код?
руками?
подскажите, полиз, как это делается? я еще другие пакаджи хочу поправить.




Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 25 августа 2011 18:12
· Личное сообщение · #26

anytype3
ASV умеет перестраивать код.

Весь код из той флэшки:
http://rghost.ru/19258131

Пароль такой же.

-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.




Ранг: 0.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 25 августа 2011 19:00
· Личное сообщение · #27

4kusNick
еще раз большое спасибо за помощь!



Ранг: 0.1 (гость)
Активность: 0=0
Статус: Участник

Создано: 27 сентября 2011 14:40 · Поправил: wodstos
· Личное сообщение · #28

Помогите снять защиту с AS! Прошелся многими прогами, результата нет .
Sothing 6.3, Flash Decompiler Trilix, AS3 Sorcerer - показывается только очень маленькая часть кода. 100% там его намного больше.
Только не использовал ASV. У кого есть ASV, попробуйте.
Может кто подскажет в каком направлении копать.




Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 27 сентября 2011 14:50
· Личное сообщение · #29

wodstos там в ресурсах бинарник, это основная флешка
извлекаешь, переименовываешь и любая из вышеприведённых прог всё покажет

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh




Ранг: 0.1 (гость)
Активность: 0=0
Статус: Участник

Создано: 27 сентября 2011 15:12
· Личное сообщение · #30

Isaev, спасибо. Все понял!!!



Ранг: 0.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 12 мая 2012 23:30
· Личное сообщение · #31

Добрый день, господа.
Необходимо декомпилировать SWF-ку, стандартный софт не берет.
Вообщем предоставившего работающий способ или .fla файл отблагодарю.
С уважением, Николай

10ce_12.05.2012_EXELAB.rU.tgz - draw26.swf


<< . 1 . 2 . 3 . 4 . >>
 eXeL@B —› Крэки, обсуждения —› Decrypt SWF, подверженный обфускации Amayeta SWF Encrypt
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати