![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Импорт функций из Kernel32.
Riply © (2007-02-12 11:54:00)Здравствуйте !
При импорте функций из Kernel32 использовала GetModuleHandle(Kernel32),
но обратила внимание на то, что в списке загруженных модулей у smss.exe нет Kernel32.
Получается, что если я "подгружаю" свою DLL к процессу (допустим через App_InitDlls),
не является фактом то, что на момент "подгрузки" Kernel32 уже загружена
в целевом процессе ? Да и вообще процесс может работать и без Kernel32.
Т.е., в общем случае, для Kernel32 надо использовать LoadLibrary, а не GetModuleHandle?
Игорь Шевченко (2007-02-12 16:36:00) [1]Riply © (12.02.07 16:32) [14]
> Имеется ввиду реестр (уж очень много их там :) или
> Dll-ки, для имен которых в Windows.pas объявлены константы
> ?
А собственно говоря, в чем твой вопрос-то ?
> А какие еще DLL-ки обладают этим замечательным свойством
> "всегда загруженности" ?
Куда загруженные, зачем загруженные ? Всегда во всех процессах загружена ntdll.dll - без нее процесс просто не заработает
Riply (2007-02-12 16:32:00) [2]> [12] Игорь Шевченко © (12.02.07 14:03)
>перечисленные в KnownDlls
Имеется ввиду реестр (уж очень много их там :) или
Dll-ки, для имен которых в Windows.pas объявлены константы ?
zdm (2007-02-12 14:04:00) [3]Удалено модератором
Игорь Шевченко (2007-02-12 14:03:00) [4]
> А какие еще DLL-ки обладают этим замечательным свойством
> "всегда загруженности" ?
Все, перечисленные в KnownDlls
zdm (2007-02-12 14:00:00) [5]Удалено модератором
Riply (2007-02-12 12:58:00) [6]>[9] zdm © (12.02.07 12:44)
>Riply, ник взят из фильма "чужой"?
Нет. Просто созвучен.
>то ты хард не знаешь как выбрать
К моему сожалению, все знать невозможно :(
>[8] Игорь Шевченко © (12.02.07 12:41)
>Ты открой секрет - что за вирус-то будет ? А то давеча наткнулся тут на один, через AppInitDll работающий.
:)
Вирусу загружаться через AppInitDll - "полный отстой. Крутые Прогеры так не грузяться". :)
Слишком легко вычисляется. А вот через ShellExt (если правильно написала) - это да ! :)
P.S. В догонку.
А какие еще DLL-ки обладают этим замечательным свойством "всегда загруженности" ?
zdm (2007-02-12 12:44:00) [7]Удалено модератором
Игорь Шевченко (2007-02-12 12:41:00) [8]Riply © (12.02.07 12:39) [7]
Ты открой секрет - что за вирус-то будет ? А то давеча наткнулся тут на один, через AppInitDll работающий.
Riply (2007-02-12 12:39:00) [9]> [6] Игорь Шевченко © (12.02.07 12:28)
Спасибо.
P.S. Так приятно, когда все становиться на свои места !
Игорь Шевченко (2007-02-12 12:28:00) [10]Riply © (12.02.07 12:23) [4]
> Просто получается, что перед "подгрузкой по Рихтеру" надо
> смотреть
> а что там за процесс, куда мы собрались залезть :)
Вообще-то да, желательно
> Только непонятно как смотреть :(
А чего непонятного - находишь EXEшник от процесса, читаешь его NtHeaders, смотришь Subsystem, если native - бежишь, как черт от святого причастия.
fd979 (2007-02-12 12:26:00) [11]Люди не надо про Коран, пожалуйста - нельзя так
Riply (2007-02-12 12:23:00) [12]> [3] Игорь Шевченко © (12.02.07 12:18)
>Да и зачем, собственно, лезть в smss через анус
Да я именно в него и не собиралась лезть.
Просто получается, что перед "подгрузкой по Рихтеру" надо смотреть
а что там за процесс, куда мы собрались залезть :)
Только непонятно как смотреть :(
Игорь Шевченко (2007-02-12 12:18:00) [13]Riply © (12.02.07 12:14) [2]
Как у Рихтера не получится, такие процессы ничего не знают про LoadLibrary и загружать в их адресное простанство kernel32 вряд ли считается полезным занятием.
Да и зачем, собственно, лезть в smss через анус, когда у него (у SMSS) есть вполне себе описанный интерфейс для взаимодействия через SmApiPort
Riply (2007-02-12 12:14:00) [14]>[1] Игорь Шевченко © (12.02.07 11:56)
:)
Спасибо.
А что гласит "сура 15 Корана" о попытке подгрузиться к процессу, подобному SMSS,
используя WriteProcessMemory (как у Рихтера) ?
Игорь Шевченко (2007-02-12 11:56:00) [15]
> но обратила внимание на то, что в списке загруженных модулей
> у smss.exe нет Kernel32.
Конечно нету. Потому что не нужно
> Получается, что если я "подгружаю" свою DLL к процессу (допустим
> через App_InitDlls),
> не является фактом то, что на момент "подгрузки" Kernel32
> уже загружена
Является.
К smss ты через AppInit не подгрузишься, так как сура 15 Корана гласит, что через AppInit DLL загружается только в адресное пространство Win32-процессов, коим SMSS не является