Софт AHK Protector (Защита кода)

#Rin

Известный
Автор темы
Всефорумный модератор
1,214
1,035
AHK-Protector-logo.png


AHK Protector - мощный компилятор*, защищающий код и саму программу/плагин от отладчиков.

Интерфейс:
AHK-Protector-scren.png

  • Написан на базе AutoHotkey_L 1.1.30.00 ANSI
Плюсы:
  • Не открывается публичными распаковщиками.
  • Поддержка 32/64-битных систем.
  • Код зашифрован.
  • Мощный антиотладчик.
  • Хорошая подчистка памяти.
Минусы:
  • Хоть и хорошая подчистка памяти, но с пропусками.
  • Возможно не запуститься на компьютере.
  • Не запускается, если системный язык отличен от русского.


AHK-Protector-Mini-logo.png

AHK Protector Mini - простой компилятор*, защищающий код от декомпиляторов.​
Плюсы:
  • Не открывается публичными распаковщиками.
  • Поддержка 32/64-битных систем.
  • Код зашифрован.
  • Ресурсы сжаты MPRESS'ом.
  • Хорошая подчистка памяти.
Минусы:
  • Хоть и хорошая подчистка памяти, но с пропусками.
  • Слабый антиотладчик.
  • Не запускается, если системный язык отличен от русского.


Нововведения:
  • Добавлена компиляция в DLL (ASI).​
  • Функция reload не действует в DLL, из-за проблем с очисткой памяти и GUI.​
  • Функция ExitApp в DLL переделана под закрытие потока, а не процесса.​
  • Для обоих типов компиляции добавлена встроенная переменная A_IsDll, содержит 1 (true) если код исполняется в dll'ке, и 0 (false) в противоположном случае.​
  • Для DLL добавлены переменные A_DllName, A_DllDir, A_DllPath (Аналог A_ScriptName, A_ScriptDir, A_ScriptFullPath), так как переменные по типу A_ScriptName и т.п содержат название процесса в который инжекнута DLL.​
V1.0 - 06.06.2018
  • Релиз.
V1.1 - 01.09.2018
  • Исправлен баг с ошибкой компиляции функций с многострочным текстом.
  • Исправлен баг с не запуском на некоторых компьютерах.
  • Переведено на AutoHotkey_L 1.1.30.00 ANSI
27.12.2018
  • Стал бесплатен.
* - Правильно будет говорить интерпретатор. ведь происходит не компиляция, а сохранение кода в ресурсах готового скомпилированного на C++ бинарника, который загружает код из ресурса и выполняет его при запуске.

UPD: Эти два протекора уже давно старые, у них много проблем, их умеют взламывать, а я не оказываю поддержки.

Скачать: *ТыК*
 

Вложения

  • AHK Protector.zip
    2.7 MB · Просмотры: 469
Последнее редактирование:

AnWu

Guardian of Order
Всефорумный модератор
4,683
5,128
В asi? Тупа кидаешь АХК скрипт в папку с игрой и он работает при старте игры?
 

#Rin

Известный
Автор темы
Всефорумный модератор
1,214
1,035
В asi? Тупа кидаешь АХК скрипт в папку с игрой и он работает при старте игры?
Да, но я не сильно тестил его и возможны баги с некоторыми функциями, так что пишите о обнаруженных багах.
А так же компиляция в dll, позволит интегрировать AHK с ImGui и SampFuncs. А так же если переписать SAMP UDF, то можно решить проблемы с крашами.
 

AnWu

Guardian of Order
Всефорумный модератор
4,683
5,128
Да, но я не сильно тестил его и возможны баги с некоторыми функциями, так что пишите о обнаруженных багах.
А так же компиляция в dll, позволит интегрировать AHK с ImGui и SampFuncs. А так же если переписать SAMP UDF, то можно решить проблемы с крашами.
Кажется проще использовать луа)
 
  • Нравится
Реакции: Grand Larceny и ZKelo

#Rin

Известный
Автор темы
Всефорумный модератор
1,214
1,035
В asi? Тупа кидаешь АХК скрипт в папку с игрой и он работает при старте игры?
А ты не знал про AHK_H (До релиза был под названием AHK_N), там компиляции в DLL доступна, но оно автоматический не запускается (Если надо, нужно перекомпилить с вызовом ahktextdll("code", "", "");), но как мы знаем из-за того что в AHK_H добавлено дохера либ и прочего, оно не у всех запускается.
Но мая же DLL написана на основе AHK_L, то есть запускаться должна у всех.
Завтра могу кинуть тестовый скрипт.

Сейчас шаманю с хуками и вызовом функций без создания потоков.
 

Karagiozis

Известный
27
2
Как то можно выгрузить длл, аси из памяти процесса не использую постороних программ?

Совместим ли с overlay?

Какие функции из samp udf крашат?

Каким образом можно использовать imgui в скомпилированом ахк dll, asi?

Если использовать аси то скрипт запускается как только запусксется процесс игры или когда присоединен к серверу?

Нормально ли будет работать FileInstall в dll?
 

#Rin

Известный
Автор темы
Всефорумный модератор
1,214
1,035
Как то можно выгрузить длл, аси из памяти процесса не использую постороних программ?
В функции ExitApp я хотел изначало использовать FreeLibraryAndExitThread(), но не по ясным мне причинам процесс сразу крашился.
Так же я выгружал Dll через процесс хакер 2, но процесс примерно через минуту тоже крашился, хотя в DLL_PROCESS_DETACH есть хот какие-то меры по освобождению памяти, может как нибудь подсмотрю как это реализовано в AHK_H.

Совместим ли с overlay? Какие функции из samp udf крашат?
SAMP UDF у меня не крашнул процесс, но функции не работали, возможно потому что мы внедряемся в собственный процесс так как-будто он не наш.
Overlay не проверял.

Каким образом можно использовать imgui в скомпилированом ахк dll, asi?
Можно добавить функции на уровне RegExMatch и т.п, это займет много времени.
Но можно написать на C++ свою Dll с экспортами, который будет подгружаться через ахк, а так как они оба в одном процессе можно тупо через GetProcAddr и DllCall вызывать функции.

Если использовать аси то скрипт запускается как только запусксется процесс игры или когда присоединен к серверу?
Для этого нужен ASI Loader он практический сразу инжектит все файлы с расширением .asi из папки гта.
 

Karagiozis

Известный
27
2
Для этого нужен ASI Loader он практический сразу инжектит все файлы с расширением .asi из папки гта.
Это понятно.
Дело в том что пока идет экран загрузки значения из памяти недоступны например значение сенсы. Как только начинается подключение к серверу то значение доступно.

Юдф не работает в длл или ехе?

В каком формате лучше защищает в ехе или длл или одинаково?
 

#Rin

Известный
Автор темы
Всефорумный модератор
1,214
1,035
В каком формате лучше защищает в ехе или длл или одинаково?
Одинаково.

Дело в том что пока идет экран загрузки значения из памяти недоступны например значение сенсы. Как только начинается подключение к серверу то значение доступно.
Решается проверкой загруженности сампа. (Если переписывать.)

Юдф не работает в длл или ехе?
В Dll не работает, а в exe норм все.
 

#Rin

Известный
Автор темы
Всефорумный модератор
1,214
1,035
На данный момент AHK Decryptануть который этим криптором накрытый не варик ?
Декрипторов нет, но хорошо знающие отладчик и ассемблер возможно смогут (Там есть только одно уязвимое место.).
Сам код просто шифруется, а так вообще можно было переделать интерпретатор ахк на генерацию виртуального ассемблера, а сам стаб переделать на чтение этого и сразу же посылать на выполнение, но там много кода, плюс писал его не я и вчитываться было лень.
 

Revalto

Известный
532
225
Декрипторов нет, но хорошо знающие отладчик и ассемблер возможно смогут (Там есть только одно уязвимое место.).
Сам код просто шифруется, а так вообще можно было переделать интерпретатор ахк на генерацию виртуального ассемблера, а сам стаб переделать на чтение этого и сразу же посылать на выполнение, но там много кода, плюс писал его не я и вчитываться было лень.
Вроде когда я через IDA смотрел, там просто идут проверки на активные процессы по названию...
 

#Rin

Известный
Автор темы
Всефорумный модератор
1,214
1,035

Вложения

  • AHK TEST.exe
    718 KB · Просмотры: 73
  • AHK TEST.dll
    759 KB · Просмотры: 26
  • Нравится
Реакции: Mike_Stepanyan