Сейчас на форуме: 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



Ранг: 189.9 (ветеран), 334thx
Активность: 0.30
Статус: Участник

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

А так? )))

c45c_12.05.2012_EXELAB.rU.tgz - 1.zip



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

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

Трилликс ошибку выдает из-за АС3 скрипта
Sothink зависает



Ранг: 189.9 (ветеран), 334thx
Активность: 0.30
Статус: Участник

Создано: 13 мая 2012 00:31
· Личное сообщение · #4

Я сам не проверял, флэшем не занимаюсь, но есть такая штука rabcd попробуй поискать здесь на форуме были ссылки.




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

Создано: 14 мая 2012 06:20
· Личное сообщение · #5

makhoninn
Вы скажите что именно Вам надо - компилируемый fla на выходе получить или просто что-то подправить.
Первое может оказаться намного сложнее второго.

Если что, можете писать прямо в личку.

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




Ранг: 105.6 (ветеран), 69thx
Активность: 0.060
Статус: Участник

Создано: 16 мая 2012 18:38
· Личное сообщение · #6

Там код замусорен. Его надо почистить и все будет открываться всем чем надо.

И я даже не открывая, уже знал что там за флешка. Рисовалка мультов. По названию понял. Было интересно и я ее уже разбирал .



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

Создано: 16 мая 2012 22:54
· Личное сообщение · #7

JohnyDoe пишет:

Там код замусорен. Его надо почистить и все будет открываться всем чем надо.

И я даже не открывая, уже знал что там за флешка. Рисовалка мультов. По названию понял. Было интересно и я ее уже разбирал .

А не могли бы вы помочь или подсказать, чем и что правили?)
rabcdasm?



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

Создано: 16 мая 2012 23:03
· Личное сообщение · #8

Простите конечно, со флешем раньше не работал.
Как дисасемблировать АС3 я уже понял.
Не могли бы Вы дать наводку на мусор в коде?
Как его опознать?
В обфускации флеша не разбираюсь.



Ранг: 105.6 (ветеран), 69thx
Активность: 0.060
Статус: Участник

Создано: 17 мая 2012 00:17 · Поправил: JohnyDoe
· Личное сообщение · #9

Мусор это код который никогда не выполнится, но он дурным дизассемблерам выносит мозг. Код весь замусорен. Надо искать лишнее и удалять.

Например следующий код абсолютно бесполезен.

Code:
  1.      pushbyte            37
  2.      pushbyte            34
  3.      ifne                L6
  4.  
  5.      returnvoid
  6.  
  7.      newobject           536870911
  8. L6:


или

Code:
  1.     jump                L33
  2.  
  3.     strictequals
  4.     getglobalscope
  5.     swap
  6.     pushtrue
  7.     increment_i
  8.     negate
  9. L33:


Все такие включения надо удалить. И надо бы еще переменные переименовать в нормальный вид. Некоторые из них переименованы во всякую непотребщину.

Посмотрите тему про flash. Там есть инструменты. rabcd похоже не поможет из-за имен переменных. Но flash скальпель поможет.

Если что могу помочь, не за бесплатно. Бесплатно никто делать не будет. Там работы дофига. К тому же чужую работу стырить пытаетесь. Уж не знаю для каких целей.

P.S. не знаю обращались ли к 4kusNick'у. Он вроде первый предлагал к нему обращаться.



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

Создано: 17 мая 2012 00:23
· Личное сообщение · #10

JohnyDoe пишет:
Все такие включения надо удалить. И надо бы еще переменные переименовать в нормальный вид. Некоторые из них переименованы во всякую непотребщину.

Посмотрите тему про flash. Там есть инструменты. rabcd похоже не поможет из-за имен переменных. Но flash скальпель поможет.

Если что могу помочь, не за бесплатно. Бесплатно никто делать не будет. Там работы дофига.

P.S. не знаю обращались ли к 4kusNick'у. Он вроде первый предлагал к нему обращаться.

До него сообщения в личку не доходили.
Назовите цену в личку. Я прекрасно понимаю, что человеческий труд стоит денег



Ранг: 105.6 (ветеран), 69thx
Активность: 0.060
Статус: Участник

Создано: 17 мая 2012 00:50 · Поправил: JohnyDoe
· Личное сообщение · #11

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

Самое прикольное что даже AS3Sorcerer не всегда правильно код декомпилирует. Например может цикл do .. while декомпилировать как просто while и вы потом будете долго репу чесать что что не так в декомпилированном коде. Всякие софинки вообще в if декомпилируют .



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

Создано: 04 ноября 2012 17:58
· Личное сообщение · #12

Nowar, опиши пожылуйста как это (nowar_swf_decompiler.exe ) использовать. У меня при запуске только черное окно выскакивает - как бы вирус запускал...


<< . 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 » Выход » ЛС
   Для печати Для печати