powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Чтение виртуальной памяти другого процесса
26 сообщений из 26, показаны все 2 страниц
Чтение виртуальной памяти другого процесса
    #33252304
Вопрос к сведущим — подскажите, плиз, как получить указатель или другим образом считать виртуальную память некоего процесса (известен PID) в ХР/2000. Интересует область кода процесса — text. Заранее благодарен за помощь.
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33252384
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не специалист по чтению памяти процесса в винде с использованием С. Но вот вопрос: а произвёл ли тот процесс что-то, чтоб разрешить другим читать? Просто в Линухе такая тема есть. Один процесс память предоставляет и пишет туда свои переменные. Другой её присовокупляет и использует в своих целях. Короче процессы срастаются памятью:)
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33252391
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Moisha NecromantovichВопрос к сведущим — подскажите, плиз, как получить указатель или другим образом считать виртуальную память некоего процесса (известен PID) в ХР/2000. Интересует область кода процесса — text. Заранее благодарен за помощь.

Если не свой процесс - то толковый пример был у Рихтера "Windows для проффесионалов". В примере кусок Вашего кода инжектировался в адрессное пространство другого процесса.
Если свой - то (в принцепе там же рассмотренно кажись) - шаред мемори.


с уважением
(круглый)
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33252557
Процесс чужой, нужен его раздел виртуальной памяти, где хранится загруженный код. Этот код надо просто прочесть и все, ничего в нем не меняя. Нет, не shared memory из линукса, а именно в винХР.
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33252596
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А какова цель этих изысканий? Может проще бинарник разобрать?
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33252644
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какерством тут пахнет:)
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33252651
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я се очень живо представляю область применения: атака на слабо защищённую прогу, которая просит пользователя ввести пароль.

А как идея то красива! Ведь введённый пароль по крайней мере некоторое время будет располагаться в области памяти программы. И если программист не предусмотрел такую фишку, то всегда по одному и тому же смещению относительно начала области проги. Лепота!!!
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33252727
IcyCool
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно использовать крюки (hooks)
при этом если крюк глобальный, то товоя dll-ка подключается к каждому процессу в системе. поидее т.к. они в одном процессе, проблем с доступом к памяти быть не должно.
авторЯ се очень живо представляю область применения: атака на слабо защищённую прогу, которая просит пользователя ввести пароль.

Вообще крюки сделаны для перехвата событий процессов - можно получать все нажатия клавиш например или перемешений мыши, причем можно все это изменять до подачи главной проге.
Посмотри SetWindowsHookEx
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33252732
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я возился с хуками в Делфе. Это очень сильный и почти всемогущий механизм. Но я с трудом себе представляю, как с их помощью читать произвольную область памяти произвольного процесса.
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33252745
IcyCool
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.к. глобальные хуки подключают длл-ку с хуком к каждому процессу в контенте этого (чужого) процесса, думаю там уже дело остается только за получением нужного адреса ( хотя на практике этого сам не делал - работал с хуками по человесески - только перехват сообщений)
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33252896
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SarinЯ возился с хуками в Делфе. Это очень сильный и почти всемогущий механизм. Но я с трудом себе представляю, как с их помощью читать произвольную область памяти произвольного процесса.

У Рихтера описано. DLL проецируется в АДРЕСНОЕ ПРОСТРАНСТВО целевого процесса.
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33253616
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)...У Рихтера описано. DLL проецируется в АДРЕСНОЕ ПРОСТРАНСТВО целевого процесса.

не слышат они...
Выше уже дал им ориентир. Велосипед изопретают...ик..


с уважением
(круглый)
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33253628
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ага, не читатели этт точно :(
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33253710
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще про кольца защиты не говорили. ИМХО.
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33254547
Спасибо за наводку - открываю файл OpenProcess, потом получаю его айди, как бы дальше мне получить инфу о его адресном пр-ве (размер занимаемой вирт. памяти, адрес ее начала, в идеале - сколько под код отведено, где начинается код).
Попытаюсь унять любопытство - область применения - не вирусы, а наоборот
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33254603
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сразу оговорюсь, что если Мойша - не суперпользователь,
то ему будет противостоять вся система безопасности
Windows. Это ключевой момент в предемете дискуссии.

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

А стоит ли результат таких усилий? Если вы сисадмин
в сети - то у вас в наличии полный арсенал клав. сканнеров
и пр. зловредных погремушек.

Если вы разработчик - берите в зубы SoftIce или IDA и
разбирайте бинарник на атомы.
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33254617
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Внедрение в чужой процесс:
OpenProcess, WriteProcessMemory,CreateRemoteThread . При этом необходимы привилегии SeDebugPrivilege (отладка программ).
В процессе Чужом создается поток, который выполняет необходимые нам действия (перехват или чтение данных).
______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33254715
Мойша - суперпользователь - это раз. И процессы выполняются на этой же машине - это два. Так что ремоттреад мне не надо. Я хочу узнать размер image программы в памяти и то, где он, этот имэдж начинается, при том что у меня есть хендл этого процесса.
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33254731
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Moisha Necromantovichпроцессы выполняются на этой же машине ... Так что ремоттреад мне не надо.

Моя плакать
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33254778
Ну извините, лажу видимо сморозил. Ну не работал я с этим никогда, блин.
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33254781
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Рихтера почитай, иначе объяснять что-то бесполезно
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33254795
Вы меня наверное не поняли. Мне нужно считать область кода УЖЕ ЗАГРУЖЕННОГО ЗАПУСКНОГО ФАЙЛА. Скажем, получить ее в массиве char* в итоге, как когда мы файл с rb читаем. Неужели это так сложно? Ремоттреад позволяет менять переменные в функциях выполняющегося процесса, как я понимаю, а мне нужно получить образ его в памяти, область .text PE-файла, как хотите. Просто сыро взять и получить шмат бинарной инфы, в которой содержится код запущенного процесса.
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33254803
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разбирайся
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33254951
Дааа, работает, но только для моего процесса, а для другого (когда я ставлю VirtualQueryEx(hProcess, ...), hProcess - получено из OpenProcess) нифига не пишет и возвращает ноль на фиг. Я уже себе и привилегии дебага через OpenProcessToken и AdjustTokenPrivileges выбил - все напрасно, ничего VirtualQueryEx не читает....
Что я сделал неправильно? :(
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33255355
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно спроецировать эту DLL на целевой процесс. Слушай, книжку почитай, а ???
...
Рейтинг: 0 / 0
Чтение виртуальной памяти другого процесса
    #33257100
Все заработало, спасибо!
P.S. Книжку на досуге почитаю, а так - нашел в инете форум с той же проблемой и примером кода. Всем спасибо
...
Рейтинг: 0 / 0
26 сообщений из 26, показаны все 2 страниц
Форумы / C++ [игнор отключен] [закрыт для гостей] / Чтение виртуальной памяти другого процесса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]