• XSS.stack #1 – первый литературный журнал от юзеров форума

Мини квест. Найдем ошибку? (plain С) 100$ награда

waahoo

ворчливый дед
Эксперт
Регистрация
01.12.2010
Сообщения
843
Реакции
1 662
Давно хочу какой нибудь квест замутить, держите.
https://xss.pro/threads/123323/post-871728
В этом коде есть незначительная ошибка, в 99.9999999% случаев она вообще не имеет значения, кто найдет, тот и молодец.
 
Давно хочу какой нибудь квест замутить, держите.
https://xss.pro/threads/123323/post-871728
В этом коде есть незначительная ошибка, в 99.9999999% случаев она вообще не имеет значения, кто найдет, тот и молодец.

if (cbMem < cb) return NULL;
cbMem -= cb;
?)
 
Давно хочу какой нибудь квест замутить, держите.
https://xss.pro/threads/123323/post-871728
В этом коде есть незначительная ошибка, в 99.9999999% случаев она вообще не имеет значения, кто найдет, тот и молодец.
Скрытый контент для пользователей: waahoo.
 
У меня сейчас спорная ситуация получается, первый чел дал ответ от ЧатГПТ и он верный, второй чел просто предположил что конкретный кусок кода косячный. Предполагаю, что в этом квесте мог выиграть только человек. n0_mad https://xss.pro/threads/123323/post-871925 BTC в личные.
Ошибка в том, что указатель на секцию не увеличивается если секция с кодом не первая в бинаре (IMAGE_SCN_MEM_EXECUTE) Код в топике поправил, ошибок больше нет.

C:
LPBYTE SignScanModule(HMODULE hMod, LPSTR pPattern) {
    BYTE *res = NULL;
 
    IMAGE_DOS_HEADER *pDOS = (IMAGE_DOS_HEADER*)hMod;
    IMAGE_NT_HEADERS *pNT = (IMAGE_NT_HEADERS*)((BYTE*)hMod + pDOS->e_lfanew);
    IMAGE_SECTION_HEADER *pSection = (IMAGE_SECTION_HEADER*)(pNT + 1);
 
    UINT i;
    for(i = 0; i < pNT->FileHeader.NumberOfSections; i++) {
        if((pSection->Characteristics & IMAGE_SCN_MEM_EXECUTE) == 0) {
            pSection++; // <-- Этого не хватало
            continue;
        }
        res = SignScan((BYTE*)hMod + pSection->VirtualAddress, pSection->SizeOfRawData, pPattern);
        if(res) {
            break;
        }
        pSection++;
    }
    return res;
}
 
Последнее редактирование:
У меня сейчас спорная ситуация получается, первый чел дал ответ от ЧатГПТ и он верный, второй чел просто предположил что конкретный кусок кода косячный. Предполагаю, что в этом квесте мог выиграть только человек. n0_mad https://xss.pro/threads/123323/post-871925 BTC в личные.
Ошибка в том, что указатель на секцию не увеличивается если секция с кодом не первая в бинаре (IMAGE_SCN_MEM_EXECUTE) Код в топике поправил, ошибок больше нет.
Yes, you're right, but I think I was referring more to that point. In any case, yes, there is only one winner of this challenge, and they deserve it n0_mad :smile10:
 
Yes, you're right, but I think I was referring more to that point. In any case, yes, there is only one winner of this challenge, and they deserve it n0_mad :smile10:
Thanks. First time winning a forum quest, cool feeling 😁
 
Квесты парням нравятся, постараюсь радовать Вас чаще. Этот квест окончен, всем спасибо 😚
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх