Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

C++ AntiLeak jni problems

  • Автор темы Автор темы sqwenty
  • Дата начала Дата начала
Пользователь
Пользователь
Статус
Оффлайн
Регистрация
2 Авг 2021
Сообщения
280
Реакции
33
написал анти лик на плюсах для лаунчера на jni, все работает отлично, но после выхода с приложения которое оно запустило у меня зависает лаунчер
1662798378595.png

проблема предположительно в этом участке кода
саму джарку дефайню по байтам
 
Не знаю насчёт этого попробую сделать скрытие окна либо exit(0)
Кстати как джарка в байтах???
Я слышал что так можно можешь тему создать как это делается?
 
Не знаю насчёт этого попробую сделать скрытие окна либо exit(0)
Кстати как джарка в байтах???
Я слышал что так можно можешь тему создать как это делается?
с мейна напиши)
 
L logica это основа просто вопрос задаю
Я писал челы говорят *тебе ответа не кто не даст* я новичок пишу лоадер просто задал вопрос
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
боже мой, хватит уже называть свои говно защиты антиликами.
любой идиот сдампит эту хуйню в 3 щелчка пальца.
На счет issue -
The JNI_DestroyJavaVM() function unloads a Java VM. As of JDK/JRE 1.1, only the main thread could unload the VM, by calling DestroyJavaVM. As of JDK/JRE 1.2, the restriction was removed, and any thread may call DestroyJavaVM to unload the VM.

The VM waits until the current thread is the only non-daemon user thread before it actually unloads. User threads include both Java threads and attached native threads. This restriction exists because a Java thread or attached native thread may be holding system resources, such as locks, windows, and so on. The VM cannot automatically free these resources. By restricting the current thread to be the only running thread when the VM is unloaded, the burden of releasing system resources held by arbitrary threads is on the programmer.
JNI_DestroyJavaVM() функция разгружает Java VM. С JDK/JRE 1.1, только основной поток мог разгрузить VM, вызывая DestroyJavaVM. С JDK/JRE 1.2, было удалено ограничение, и любой поток может вызвать DestroyJavaVM разгрузить VM.

VM ожидает, пока текущий поток не является единственным пользовательским потоком недемона прежде, чем это фактически разгрузится. Пользовательские потоки включают и потоки Java и присоединили собственные потоки. Это ограничение существует, потому что поток Java или присоединил собственный поток, может содержать системные ресурсы, такие как блокировки, окна, и так далее. VM не может автоматически освободить эти ресурсы. Ограничивая текущий поток, чтобы быть единственным рабочим потоком, когда VM разгружается, бремя выпуска системных ресурсов, сохраненных произвольными потоками, находится на программисте.
собстна да, я протестил
DestroyJavaVM попадает на WaitForSingleObject, если есть какие либо активные потоки
1663215384009.png
 
Последнее редактирование:
боже мой, хватит уже называть свои говно защиты антиликами.
любой идиот сдампит эту хуйню в 3 щелчка пальца.
На счет issue -


собстна да, я протестил
DestroyJavaVM попадает на WaitForSingleObject, если есть какие либо активные потоки
Посмотреть вложение 221026
А попроще как можно сдампить thread? Получается классы грузятся в память и чит сам в thread мне надо определённый thread сдампить и найти все классы по cafebabe
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
А попроще как можно сдампить thread? Получается классы грузятся в память и чит сам в thread мне надо определённый thread сдампить и найти все классы по cafebabe
Если я правильно понял, то ты в принципе можешь на CreateThread бряк поставить, а дальше мониторить.
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
А попроще как можно сдампить thread? Получается классы грузятся в память и чит сам в thread мне надо определённый thread сдампить и найти все классы по cafebabe
чиво
какой тред ты собрался дампить?))
В жабе все принято хранить на узлах, где "Node" хранит "NextNode" и "PrevNode"(Prev вроде нет)(аналог LinkedList в самой джаве).
Все инстансы классов хранятся в инстансах класслоадеров, но я тебя разочарую, если ты собрался дампить классы нахождением первого элемента(кстати на uc(не реклама) есть реализация этого), ибо инстанс класса не хранит в себе сурса стрима откуда он парсился.Из него ты можешь получить уже спаршенный класс, и пытаться восстановить его(в этом нет смысла(это слишком долго), да и подъебать твой мега метод не будет слишком трудным заданием).
Если ты очень сильно хочешь что то сдампить, то в реалиях обычной джавы юзай ClassFileLoadHook, но если в защите от хряска он уже установлен, то используй хук конструктора ClassFileStream.(он вызывается дважды, если стрим класса изменился после ClassFileLoadHook)
 
Назад
Сверху Снизу