вызовы апи по хешу и переадресация

Тема в разделе "WASM.WIN32", создана пользователем doctor_Ice, 6 янв 2006.

  1. doctor_Ice

    doctor_Ice New Member

    Публикаций:
    0
    Регистрация:
    21 мар 2005
    Сообщения:
    845
    Адрес:
    Russia
    значит так нахожу кернел в памяти получаю адреса апи и фсе хорошо пока не вызываю SetLastError и тут тарблы потому как в этой функции идет переадресация на ntdll все что я придумал как средство борьбы это проверять не указывает ли адрес апи в секцию экспорта и если так то подгружать длл и искать там имя переадресованной. а как вы с этим боретесь? может есть другой путь?
     
  2. Ms Rem

    Ms Rem New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2005
    Сообщения:
    1.057
    Адрес:
    С планеты "Земля"


    Просто подгружаю такие функции с помощью GetProcAddress (это там где нужен малый размер кода). А в моем пелоадере (который для дров), я обрабатываю переадресацию.





    Не в секцию, а в директорию экспорта (секции может и не быть).

    Вот кусок связаный с обработкой форвардов:


    Код (Text):
    1. if (IN_REGION(dwFuncRva, ExpRVA, ExpSize))
    2. {
    3.    CHAR  DllName[0x100];  
    4.    PCHAR fwdName = RVATOVA(Image, dwFuncRva);        
    5.    PCHAR fnName  = strchr(fwdName, '.');
    6.    PVOID pLibrary;
    7.  
    8.    if (fnName)
    9.    {
    10.       memset(DllName, 0, sizeof(DllName));
    11.       strncpy(DllName, fwdName, fnName - fwdName);
    12.       strcat(DllName, ".dll");
    13.  
    14.       fnName++;
    15.       pLibrary = CsGetModuleHandle(DllName);
    16.      
    17.       if (pLibrary)
    18.       {
    19.          Result = GetProcAddressEx(pLibrary, fnName, CsGetModuleHandle);
    20.       }
    21.                        
    22. }
     
  3. doctor_Ice

    doctor_Ice New Member

    Публикаций:
    0
    Регистрация:
    21 мар 2005
    Сообщения:
    845
    Адрес:
    Russia
    Ms Rem



    ага понял спасибо. впринципе так я и думал... черт была надежда что при LoadLibrary она сама подставляет смещения...