170 похожих чатов

Ilya Вот ты писал, что закрываешь хэндлы, это ты вручную

по процессам итерируешься? Слушай у меня есть интересная идея как сделать проверку целостности памяти всех методов, которые ты используешь. Правда скан чопорный, но метод такой:
1. Сканируешь прологи во всех аллокациях своего процессса, ищешь по исполняемым области памяти.
2. Делаешь хэш-таблицу на основе этих участков
3. Проверяешь раз в n время.

Получается достаточно быстро

4 ответов

3 просмотра

Ну это тож не гарантия, люди могут пролог и не трогать. У меня были челики, которые находили через дизасм место, куда могут воткнуть переход, аллоцировали executable память и прыгали туда. Причем, я думаю: пф, думаете не смогу это исправить? Просто начал проходиться по всем записям о выделенных блоках памяти и смотрел флаг, и еще несколько параметров. Мысли были такие, ну кто кроме читеров будет в чужом процессе аллоцировать приватный блок памяти еще и с executable флагом. Написал, дали тестерам побегать, оказалось, что таки есть какие-то приложения, которые это делают (лол, зачем??). Понять какие было сложно (ибо информации нет никакой и нужно либо гадать, либо глобально перехватывать вызовы), да и не интересно стало. Хотелось механизм, где не нужно было бы делать исключения какие-либо. В общем, знатно я обломался на этом

Mr.Cat- Автор вопроса
Ilya
Ну это тож не гарантия, люди могут пролог и не тро...

По прологам находить методы и сканировать метод полностью?)

Mr.Cat- Автор вопроса
Ilya
у меня этих методов...

Да и нормально. Главное что тот, кто внедрился - гарантированно получит пинок через какое-то время (От масштаба приложения зависит)

Похожие вопросы

Обсуждают сегодня

Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
База данных не поможет. Шифрование не поможет. Какие там ещё варианты? Накидывайте.
КТ315
20
А табстоп это сообщение от окна или от элемента управления?
The Bird of Hermes
18
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
Открыл свой двухкилобайтный экзешник в x32dbg, а тут какая-то хрень. Смущает кнопка "выполнить до пользовательского кода", а что ещё может быть в файле помимо него ?
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
11
Мне были интересны дишные хаки и я нашёл любопытный способ на форуме через __traits, что-то вроде int delegate(int) fac = (int n) => n == 0 ? 1 : n * __traits(parent, {})(n - ...
Constantin F.
1
Вопрос тем кто смотрит видео и слушает подкасты - как вы потом ищете нужную вам информацию? Вот статью я прочитал, потом могу искать нужную мне часть банальным поиском. Пропус...
Aleksandr Druzhinin
4
Всем привет, подскажите/посоветуйте пожалуйста. Фаердак компоненты, имею одно место где бизнес хочет видеть при открытии формы список всех клиентов, это порядка 30к. Мои дово...
Sasha Sch
14
Ребят, если кто в курсе - скажите, а в загранке такое же засилье маркетплейсов? или там простые сермяжные интернет-магазины живут попроще?
Андрей [aharito] Харитонов
14
Коллеги, доброе утро. Запустил на удаленном хосте приложение (ручками зашел туда по ssh и запустил, не командой удаленно). Создал потом ssh-туннель, и с моей машины приложение...
Δημήτηρ
9
Карта сайта