ГДЕреверс нативных функций винды
ГДЕреверс нативных функций винды
Ты не можешь сломать серверное лц, точнее можешь но не на прямую а ломая данные которые клиент отправляет серверу и вот тикбаза ломается и желательно её зафикситьВечно можно смотреть на три вещи, одна из них реверс нативных функций винды, красавчик +rep
а как же вызвать шеллкод через энтрипоинт(или че ты там спизданул не помню уже)? я думал это твоя любимая тема...Ты не можешь сломать серверное лц, точнее можешь но не на прямую а ломая данные которые клиент отправляет серверу и вот тикбаза ломается и желательно её зафиксить
какой вызвать шеллкод через ентри поинт..... с головушкой все в порядке?а как же вызвать шеллкод через энтрипоинт(или че ты там спизданул не помню уже)? я думал это твоя любимая тема...
::lazy_import::utils::dos_header(m_base)->e_magic != IMAGE_DOS_SIGNATURE
if (c == '\0') break;
Добавить хеширование
так какой стул удобнее будетЭто просто цепляет глаза реверсера
наслаждайся, искренне надеюсь что я заслужил твоего одобрения своей пастой орегинала))))))Приведи рабочий пример с использованием HeapAlloc, HeapReAlloc, HeapCreate , memcpy, memset и т.п.
Иначе оно не отличается от орегинала.
int main(void)
{
// If you know that your import is forwarded, it is highly
// recommended that you call via .cached_call()
PVOID ptr = LI(PVOID, HeapAlloc).call(LI(HANDLE, GetProcessHeap).cached_call(), 0, 0x64);
if (ptr != nullptr)
{
std::cout << "Memory succesfully allocated.\n";
if (LI(BOOL, HeapFree).call(LI(HANDLE, GetProcessHeap).cached_call(), 0, ptr)) {
std::cout << "Memory free succeded.\n";
}
else {
std::cerr << "Couldn't free allocated memory, error: " << GetLastError() << '\n';
}
}
else {
std::cerr << "Couldn't allocate memory, error: " << GetLastError() << '\n';
}
return EXIT_SUCCESS;
}
Всё равно норм, такие движухи всегда лучше всяких паст лв и тдТам нет ничего из реверса, кроме нескольких структур, которые недокументированы официально (либо документированы не полностью). Но и они в свободном доступе (ReactOS, Vergilius, etc.)
Посмотреть вложение 264541
DisableThreadLibraryCalls и CreateThread работали через раз. Поэтому мне этого хватило с головой, что-бы вернуться к основной библиотеки..наслаждайся, искренне надеюсь что я заслужил твоего одобрения своей пастой орегинала))))))
C++:int main(void) { // If you know that your import is forwarded, it is highly // recommended that you call via .cached_call() PVOID ptr = LI(PVOID, HeapAlloc).call(LI(HANDLE, GetProcessHeap).cached_call(), 0, 0x64); if (ptr != nullptr) { std::cout << "Memory succesfully allocated.\n"; if (LI(BOOL, HeapFree).call(LI(HANDLE, GetProcessHeap).cached_call(), 0, ptr)) { std::cout << "Memory free succeded.\n"; } else { std::cerr << "Couldn't free allocated memory, error: " << GetLastError() << '\n'; } } else { std::cerr << "Couldn't allocate memory, error: " << GetLastError() << '\n'; } return EXIT_SUCCESS; }
DisableThreadLibraryCalls и CreateThread работали через раз. Поэтому мне этого хватило с головой, что-бы вернуться к основной библиотеки..
Используйте RtlAllocateHeap, эта функция не выбросит исключениепо неизвестной мне пока-что причине, операции с хипом выбрасывают access_violation, немного попозже посмотрю и постараюсь разобраться, ну и конечно же релизнуть фикс по возможности.
а пока
HeapAlloc обращается к RtlAllocateHeap, пока не найду решения проблемы с AV, можете делать подобный вызов для использования HeapAlloc()
upd: подъехало объяснение, спасибо qqqqqq111111HeapAlloc():LI(LPVOID, RtlAllocateHeap).call(LI(HANDLE, GetProcessHeap).call(), 0, static_cast<SIZE_T>(100));
Как, как - 10 раз норм, потом вылеты. Престроение проекта, потом норм.Работали через раз это как?Продебажь, найди причину. Автор треда зальёт фикс и выразит тебе благодарность.
Ну ты или помогай проекту, или покинь тред со своим желанием юзать оригинальный репозиторий, она собсна никак текущему проекту не помогает, было бы куда лучше, если бы ты влепил обработчик исключений с выводом всей нужной инфы для анализа и после краша закинул её сюда, и тебе не придется по 10 раз перезапускать свой инжекторКак, как - 10 раз норм, потом вылеты. Престроение проекта, потом норм.
Дебажить что, каждый инжект, надеясь, что будет тихий вылет процесса в который инжет делаю?
как жаль терять настолько ценного и отличного юзера, не уходи в орегинальную библиотеку, пожалуйста...DisableThreadLibraryCalls и CreateThread работали через раз. Поэтому мне этого хватило с головой, что-бы вернуться к основной библиотеки..
HeapAlloc это forwarded импорт который по сути является простым указателем на строку NTDLL.RtlAllocateHeap которая находится в .rdata секции, из-за этого при попытке вызова и происходит ACCESS_VIOLATION, но по факту строка не является исполняемым кодом и хочешь не хочешь, ты не сможешь её вызвать. спасибо макс)))Используйте RtlAllocateHeap, эта функция не выбросит исключение
Я то не против этого, но как это сделать?Ну ты или помогай проекту, или покинь тред со своим желанием юзать оригинальный репозиторий, она собсна никак текущему проекту не помогает, было бы куда лучше, если бы ты влепил обработчик исключений с выводом всей нужной инфы для анализа и после краша закинул её сюда, и тебе не придется по 10 раз перезапускать свой инжектор
напиши мне в телегу, под профилемЯ то не против этого, но как это сделать?
Проект предоставляет различный материал, относящийся к сфере киберспорта, программирования, ПО для игр, а также позволяет его участникам общаться на многие другие темы. Почта для жалоб: admin@yougame.biz