Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: ActiveXDLL и rundll32.exe ? Добавлено: 05.12.03 13:08  

Автор вопроса:  Atma | ICQ: 161504457 
1. Можно ли вызвать ActiveXDLL с помощью rundll32.exe ?
2. Если нет, то можно ли вызвать ее с помощью exe программы, и потом чтобы exe программа закрывалась,а ActiveXDLL  оставалась работать в памяти?

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 boevik



Хранитель чата

ICQ: 137392264 

Вопросов: 8
Ответов: 557
 Web-сайт: www.hypertech.ru
 Профиль | | #1
Добавлено: 05.12.03 14:37

1. По моему, нельзя. А зачем

2. ActiveX DLL - вызывается только при помощи exe и не может пережить своего родителя.

То что тебе может помочь это, IMHO, ActiveX EXE.

А какая задача стоит?

Ответить

Номер ответа: 2
Автор ответа:
 Atma



ICQ: 161504457 

Вопросов: 33
Ответов: 14
 Профиль | | #2 Добавлено: 05.12.03 15:58
Мне нужно сделать желательно чтобы прогу нельзя было вычислить в реестре по расширению exe, и в процессах win98, в win2000 екзешник легче спрятать :-)
Вот хотел запускать DLL чтобы она оставалась включенной , пока включен компьютер!

Ответить

Номер ответа: 3
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #3
Добавлено: 05.12.03 16:12
Да покарает тебя могучая рука верховного админа, если ты применишь это
в злобных целях (заодно и я добавлю, если узнаю :)

----------------------------------
В Win9*/Me необходимо создать ключ в реестре
LHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MPRServices¦,
а в нем еще один подключ, но уже с любым именем. А там делаем так -
создаем три параметра LDLLName¦, LEntryPoint¦ и LStackSize¦.
Соответственно два строковых и один - числовой. В параметр DLLName
необходимо занести имя своей dll'ки/exe'шника, в параметр EntryPoint -
имя экспортируемой из dll'ки процедуры, в StackSize - 0.

При загрузке операционной системы процесс mprexe.exe создает в своем
контексте новый поток для вызова указанной процедуры из нашей DLL,
после чего процедура выполнила свои действия. Т.е. если осуществлять
запуск шпионской программы через собственную DLL, то проблема незаметной
автозагрузки трояна будет решена. Но я рекомендую сделать несколько
иначе. Гораздо лучше реализовать всю работу шпионской программы
непосредственно в DLL. Дело в том, что в этом случае автоматически
решается еще одна важная задача - обеспечение невидимости. Так как
сервер шпиона в этом случае является отдельным потоком процесса
mprexe.exe, то никаких посторонних подозрительных процессов в системе
просто не появляется.

Естественно, после обнаружения такого места, вероятно специально
предназначенного для поселения шпионов и троянов, оставалось найти
нечто подобное в Windows NT/2000. Были сомнения, что это удастся. Но
оно действительно нашлось. Полностью идентичное вышеописанному,
только загрузкой библиотек занимается сервис Winlogon. В разделе
реестра LHKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify¦
добавляется произвольный подключ с очень похожими параметрами. Радует,
что эта возможность оказалась вполне документированной. Подробное
описание есть в MSDN. Дофига возможностей. Просто залезь в этот ключ и
посмотри что к чему - думаю разобраться сможешь легко ( я за пол-мин
:-) )

Таким образом, метод оказался универсальным. Оформить шпиона в виде
динамической библиотеки можно и для Windows 95/98, и для Windows NT/2000.
-------------------------------

Только вот тут не ActiveX, а обычная DLL юзается.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам