Русский / Russian English / Английский

Сейчас на форуме: Bad_guy, r0lka (+2 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS ·

 eXeL@B —› Вопросы новичков —› Декомпиляция файла AutoIt
Посл.ответ Сообщение

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

Создано: 16 мая 2018 08:22 New!
Цитата · Личное сообщение · #1

Добрый день уважаемые форумчане. Помогите не могу не как раскомпилировать код скрипта написанного на auto it. Пользуюсь версией myaut2exe 2.15 при декомпиляции получаю tok файл, а что дальше с ним делать не в курсе, где бы я его не открыл он с нечитаемым текстом. Может вообще я делаю все не так. Подскажите пожалуйста буду очень признателен.
вот сам файл: http://rgho.st/72YM6HWC4
вот tok файл: http://rgho.st/6SSj649NL


Ранг: 77.0 (постоянный)
Статус: Участник

Создано: 16 мая 2018 08:34 New!
Цитата · Личное сообщение · #2

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


Ранг: 54.5 (постоянный)
Статус: Участник

Создано: 16 мая 2018 08:46 · Поправил: SDK New!
Цитата · Личное сообщение · #3

autoit-script.ru/
форум по этому языку
" информация из википедии "

проверьте сам ехе на упаковщики и обфускаторы.

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

Создано: 16 мая 2018 08:49 New!
Цитата · Личное сообщение · #4

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


Ранг: 77.0 (постоянный)
Статус: Участник

Создано: 16 мая 2018 09:24 · Поправил: Boostyq New!
Цитата · Личное сообщение · #5

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

Нету подводных камней, обычная борьба: одни защищают - другие взламывают
И я советую искать другой декомпиль, потому что файл который ты скинул можно разобрать целиком, ищи декомпилятор с фиксом трюка #EndRegion, особенно на немецких гейм-хакинг форумах (вообще такой сайт один самый популярный)
Но скрипт, как я понимаю, коммерческий, так что скинуть сорсы не могу

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

Создано: 16 мая 2018 09:54 New!
Цитата · Личное сообщение · #6

Boostyq т.е. ты его уже раскомпилировал?

Ранг: 1.9 (гость)
Статус: Участник

Создано: 16 мая 2018 15:30 New!
Цитата · Личное сообщение · #7

http://domoticx.com/autoit3-decompiler-exe2aut/

exe2aut captime.exe

{ Атач доступен только для участников форума } - captime_.rar


Ранг: 326.1 (мудрец)
Статус: Участник

Создано: 2 марта 2019 10:57 New!
Цитата · Личное сообщение · #8

Вот что хочу спросить, есть скрипт .au3 с обфускацией AutoIt Obfuscator v1.2, например
Code:
  1. Func IjyvgdmdKgehkFunc($var_1873, $HLEMFQ, $g_tHpzimlgw)
  2.     Local $LQF1hNVvd_IFz_cr6_K[($fArrzuvreq[5] < $v96s3kMvZR_pcu_4_8tHSR ? 1 : $UWKOE_EZBXXWRJ_LLKOGXT)] = [($idOtsghavxxgYkviixbprp = $idOtsghavxxgYkviixbprp ? 29632 : $Ko2LWpS_R34l6xvIHq_bLSP_)]
  3.     For $FhOaB = ($1ND__aq9LlmicBs_R8 >= $CPHEJX_LSFXJYOBLW_LZYERGOHE() ? $sThcjjuxjuaFrbtmmapd() : 0) To ($1ND__aq9LlmicBs_R8 < $v96s3kMvZR_pcu_4_8tHSR ? 0 : $var_1905[10])
  4.         $fskGA = $LQF1hNVvd_IFz_cr6_K[$FhOaB]
  5.         $fskGA = $fskGA - 1
  6.         $fskGA -= $FhOaB
  7.         $fskGA = $w_w9TkJ_jf3dMWXtI_PtP9_($fskGA, 0x73FB)
  8.         $LQF1hNVvd_IFz_cr6_K[$FhOaB] = $ZGZYVU($var_465($fskGA, ($AKUOKK >= $g_mAlkubbv[5] ? $CPHEJX_LSFXJYOBLW_LZYERGOHE() : 65535)))
  9.     Next
  10.     $LQF1hNVvd_IFz_cr6_K = $var_2100($LQF1hNVvd_IFz_cr6_K, "")
  11.     Return $LQF1hNVvd_IFz_cr6_K
  12. EndFunc

возможно ли получить читаемый текст и каким образом, всё что есть в сети датировано примерно 2012 годом и естественно не работает.

Ранг: 251.0 (наставник)
Статус: Участник

Создано: 2 марта 2019 12:23 New!
Цитата · Личное сообщение · #9

По сути, все методы обфускации описаны тут: https://www.pelock.com/products/autoit-obfuscator
Не думаю, что есть автоматизированное решение. Следовательно для деобфускации нужен блокнот,search/replace, калькулятор и куча свободного времени, ибо придется все делать руками

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


Ранг: 326.1 (мудрец)
Статус: Участник

Создано: 2 марта 2019 14:30 New!
Цитата · Личное сообщение · #10

Следовательно для деобфускации нужен блокнот,search/replace, калькулятор и куча свободного времени, ибо придется все делать руками
Это понятно, т.е. получается что исходные имена "потеряны" навсегда и заменены каким-то псевдо-рандомным кодом или все-таки этот псевдо-рандомный код, зная алгоритм кодирования, можно преобразовать к исходному виду - вот в чем главный вопрос.


Ранг: 322.8 (мудрец)
Статус: Участник

Создано: 2 марта 2019 14:39 New!
Цитата · Личное сообщение · #11

Во-первых, тут бы не помешало вырвиглазные имена переменных привести хотя бы к виду a1, a2, ...

А так, вижу таблицу, из в которой в цикле берётся элемент за элементом, преобразуется функцией w_w9TkJ_jf3dMWXtI_PtP9_(), следом взятый элемент преобразуется другой функцией


Ранг: 326.1 (мудрец)
Статус: Участник

Создано: 2 марта 2019 14:47 · Поправил: Vamit New!
Цитата · Личное сообщение · #12

функция это Global $w_w9TkJ_jf3dMWXtI_PtP9_ = BitXOR, т.е. стандартная из AutoIt
но вот это уже Global $oEMnl7M__5GuyrnjPz_ = OqzojttvwwGsdsmjbZhfsh юзерная функа и её имя пошифровано
Меня интересует пока не возможность получение более-менее читаемого кода, а возможность восстановления исходных имен, возможно ли это.

Добавлено спустя 23 минуты
Причем самого обфускатора AutoIt Obfuscator v1.2 у нас нет, как я понял он работает онлайн и смотреть тут нечего, вот сама функция обфускации скриптов:
Code:
  1. public JsonValue Obfuscate(NameValueCollection paramsArray)
  2. {
  3.          JsonValue result;
  4.          try
  5.          {
  6.                  if (Utils.IsRunningOnMono())
  7.                  {
  8.                         ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(this.MyRemoteCertificateValidationCallback);
  9.                  }
  10.                  byte[] bytes = new WebClient().UploadValues("https://www.pelock.com/api/autoit-obfuscator/v1", "POST", paramsArray);
  11.                  result = JsonValue.Parse(Encoding.UTF8.GetString(bytes));
  12.          }
  13.          catch (Exception)
  14.          {
  15.                  result = null;
  16.          }
  17.          return result;
  18. }


Ранг: 77.0 (постоянный)
Статус: Участник

Создано: 2 марта 2019 15:39 · Поправил: Boostyq New!
Цитата · Личное сообщение · #13

Vamit пишет:
восстановления исходных имен

Нет, интерпретатору пофиг какое имя, главное чтобы оно было уникальным, если заменить его везде как делается в обфускаторе то утеряны навсегда
Так что скорее всего это просто рандомные имена, если только автор бэкдор себе не оставил

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

 eXeL@B —› Вопросы новичков —› Декомпиляция файла AutoIt

Видеокурс ВЗЛОМ