РесурсФайл+Xors3D
Всем привет!
Пишу на PureBasic+Xors3D. Есть одна маленькая задачка: "Xочу чтобы мои драгоценные файлы с картинками и моделями были недоступны простым смертным, потому хочу спрятать это дело в какой нибудь ПакФайл." Проблема в том что я не знаю как заставить Xors3D вычитывать ресурсы из этого файла. :dontknow: |
Ответ: РесурсФайл+Xors3D
Если я не ошибаюсь, Xors3D не умеет грузить ресурсы из памяти, поэтому как один из вариантов - перехват вызовов WINAPI функций CreateFile и ReadFile из Kernel32.dll, например сплайсингом.
ключевые функции здесь для сплайсинга - GetModuleHandle, GetProcAddress, WriteProcessMemory лень расписывать что да как, погугли может сам поймешь :) |
Ответ: РесурсФайл+Xors3D
Хорошо. Я когда то давно наталкивался на подробное описание всех Xors объектов в памяти. Все значения были расписаны по блокам. Сейчас же не могу найти, я думаю мне это помогло бы.
|
Ответ: РесурсФайл+Xors3D
Еще один вариант перехвата ( он кстати лучше, т.к. безопаснее в многопоточной среде, ну и "грамотнее" ) - замена адресов CreateFile и ReadFile в Import Address Table у процесса. Для этого погугли спеку на PE формат. Сам заголовок PE берешь как инстенс процесса - функцией WINAPI - GetModuleHandle( 0 ), ну а дальше по спеке смещаешься на табличку, ищешь эти функи и меняешь адреса на свои.
ЗЫ Завтра вечерком распишу подробнее. Цитата:
|
Ответ: РесурсФайл+Xors3D
Будем вникать =)
|
Ответ: РесурсФайл+Xors3D
Xors3D умеет грузить файлы из запороленных ZIP файлов, наверное и расширение сменить можно, чтобы незаметнее было. Смотри описание xMountPackFile() в справке, там все подробно расписано.
Цитата:
|
Ответ: РесурсФайл+Xors3D
Цитата:
Да и пароль в ехешке даже блокнотом легко будет увидеть :) в любом случае прийдется ехешку паковать каким-нить протектором вроде Armadillo. |
Ответ: РесурсФайл+Xors3D
ща проверим
|
Ответ: РесурсФайл+Xors3D
Я лично не смог найти свой пароль через блокнот, также не нашел распакованные файлы. Это конечно не спасет от рук продвинутых взломщиков, но простому смертному будет очень трудно заменить украсть файлы. А значит задача выполнена =)
Код:
IncludeFile"Resurse\Module\Xors3D.pbi" |
Ответ: РесурсФайл+Xors3D
Цитата:
А временные файлы на то и временные, что после закрытия сразу же удаляются системой. Поэтому если юзер знаком с каким-нить отладчиком даже общем уровне, сможет остановить процесс на распаковке и сдернуть файл из temp папки :) Цитата:
вот вобщем расписал как перехват сделать, раз уж речь про это зашла это конечно в данном случае ненужно, раз есть способ грузить с архива, но мало-ли, захочется кому-нить свое написать :) Код:
EnableExplicit |
Ответ: РесурсФайл+Xors3D
Из надёжных неназванных источников стало известно что xMountPackFile загружает сразу в память.
|
Re: РесурсФайл+Xors3D
Если не хочешь чтобы пароль сперли из экзешника тупо блокнотом то сделай такой код. Допустим твой пароль "111222333", напиши вместо этого Str(333666999/3). Теперь блокнотом его не будет видно
|
Ответ: РесурсФайл+Xors3D
Вот только все это бесполезно, попадется продвинутый юзер, который умеет отладчик юзать ( а для этого особого ума и ненадо ) и все :)
|
Ответ: РесурсФайл+Xors3D
от продвинутого ничего не спасет. надо, чтобы не не сперли детсадовцы.
|
Ответ: РесурсФайл+Xors3D
Темка конечно очень не актуальна, то тем не менее.
Простой способ подменять переход непосредственно в самой процедуре. Но не забывать при переходе на старую процедуру проверять участок памяти на существование. IsBadReadPtr_ - смотрим как эта штука работает. |
Часовой пояс GMT +4, время: 18:04. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot