Visual Basic, .NET, ASP, VBScript
 

   
   
     

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

Страница: 1 | 2 | 3 |

 

  Вопрос: Есть два вопроса. Добавлено: 18.10.07 21:07  

Автор вопроса:  werber | Web-сайт: www.werbersoft.ru

Ответить

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

Номер ответа: 16
Автор ответа:
 



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

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #16
Добавлено: 28.10.07 22:44
ааа... ну могу наваять, конечно, если надо. ассемблер знаешь?

Ответить

Номер ответа: 17
Автор ответа:
 



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

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #17
Добавлено: 28.10.07 22:45
просто в любом случае надо либу на ассемблере писать для глобального хука...

Ответить

Номер ответа: 18
Автор ответа:
 Ra$cal



ICQ: 8068014 

Вопросов: 18
Ответов: 817
 Web-сайт: www.rascalspb.narod.ru
 Профиль | | #18
Добавлено: 28.10.07 23:13
почему на ассемблере? правильнее сказать так - либу нада писаьт не комовскую. а вб такое не умеет. хотя я юзал когда то дополнение к компилеру, что вб либа становилась самой что ни на есть нативной, и экспортировала функции с именами. но это разговор. в данном случае можно написать на любом языке с поддержкой асма. наш выбор - Си.

Ответить

Номер ответа: 19
Автор ответа:
 Mr.Smile



ICQ: 427682013 

Вопросов: 14
Ответов: 464
 Профиль | | #19 Добавлено: 28.10.07 23:44
ааа... ну могу наваять, конечно, если надо. ассемблер знаешь?
Нет, не знаю. Были попытки к изучению - пока не очень удаётся =) Как я понял, глобальный хук - внедрение этой DLL во все процессы, верно? И внедрение будет реализовывать VB-приложение... Но Каспер на это среагирует. А почему нельзя весь код хука писать в программе? Помнится, где-то эту тему обсуждали, и там говорилось, что то-ли точка входа в DLL-файлах особая (отличная от EXE-файлов), то-ли ещё что-то. Пробовал писать глобальный хук без DLL - не получилось. Почему EXE-ха себя ни в кого не внедряет? =) Принимается пример DLL-ки на ассемблере с готовым кодом внедрения на VB. Если можно, DLL-ку откомпилируй. Выложить можно на http://www.zalil.ru/. Заранее спасибо.

Ответить

Номер ответа: 20
Автор ответа:
 Mr.Smile



ICQ: 427682013 

Вопросов: 14
Ответов: 464
 Профиль | | #20 Добавлено: 28.10.07 23:50
хотя я юзал когда то дополнение к компилеру, что вб либа становилась самой что ни на есть нативной, и экспортировала функции с именами.
К сожалению, все существующие Add-in'ы к VB6 для компиляции Native DLL глючные, они (DLL) не могут обрабатывать передаваемые им строковые параметры, т.е. вместо простых строковых параметров "Test string" надо писать StrPtr("Test string";), и, соответственно, DLL должна их обрабатывать!

Ответить

Номер ответа: 21
Автор ответа:
 Ra$cal



ICQ: 8068014 

Вопросов: 18
Ответов: 817
 Web-сайт: www.rascalspb.narod.ru
 Профиль | | #21
Добавлено: 29.10.07 00:04
exe нельзя внедрять. моей фантазии не хватило попробовать. но это не суть. главное - не обязательно нужна длл. длл просто проще в использовании. загрузчик венды сам настроит ссылки при кривой базе загрузки, сам заполнит испорт. т.е. никаких отвлечений на приведение образа к рабочему состоянию от нас не требуется.

но тебе никто не запрещает написать на асме весь код, а так же код, получающий базу загрузки того же kernel32 через seh'и, через таблицу экспорта получить адрес функции GetProcAddress и дальше без напряга получить импорт. единственное, что придется преодолеть - твой код ляжет отнюдь не в одно место в памяти, в котором он написан. иначе говоря адрес глобальных переменных будет кривой. даже адрес переменных, хранящих адреса апи, не должен быть абсолютным. здесь впритык подходим к технологиям написания вирей и протов - относительной адресации через регистр.
кароч в итоге получим в нашем exe или dll кусок асм кода. этот код мы можем копировать в чужой процесс. просто через WriteProcessMemory. Ну и дальше ремоуттред. И все будет пахать. Правда касперыча вы так не провидете. Он врядле даст вам акцес на любые действия с его адресным пространством. Защита от убийства себя (а через WriteProcessMemory мы можем вписать ему в начало часто вызываемой апи переход на ExitProcess, и собсно убрать с глаз авера) развита, так же как и защита от удаленных потоков. Так что от касперыча хз как вы скроетесь.

Ответить

Номер ответа: 22
Автор ответа:
 



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

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #22
Добавлено: 29.10.07 00:18
Раск, ты не прав. В данном случае нам надо инжект во все процессы. То есть глобальный хук. Чтобы сделать глобальный хук ОБЯЗАТЕЛЬНО НУЖНА БИБЛИОТЕКА, которую сама система будет инжектить во все процессы.
Как обходить проактивку каспера я уже говорил выше.

К сожалению, все существующие Add-in'ы к VB6 для компиляции Native DLL глючные, они (DLL) не могут обрабатывать передаваемые им строковые параметры, т.е. вместо простых строковых параметров "Test string" надо писать StrPtr("Test string";), и, соответственно, DLL должна их обрабатывать!

я тебе скину свой Аддин с примерами библиотек и оберток, где реализована работа со строками, структурами и массивами. Не забывайте, ребята, что строки в АПИ передаются по значению =)

Завтра пришлю код либы на асме, скомпиленную либу и обертку на бейсике, щас не охота писать.

Ответить

Номер ответа: 23
Автор ответа:
 Mr.Smile



ICQ: 427682013 

Вопросов: 14
Ответов: 464
 Профиль | | #23 Добавлено: 29.10.07 00:47
Не забывайте, ребята, что строки в АПИ передаются по значению =)
Да знаем мы, знаем! :)

Ответить

Номер ответа: 24
Автор ответа:
 Ra$cal



ICQ: 8068014 

Вопросов: 18
Ответов: 817
 Web-сайт: www.rascalspb.narod.ru
 Профиль | | #24
Добавлено: 29.10.07 01:02
То есть глобальный хук. Чтобы сделать глобальный хук ОБЯЗАТЕЛЬНО НУЖНА БИБЛИОТЕКА, которую сама система будет инжектить во все процессы.

а я разве говорил, что буду юзать SetWindowsHook? я говорил об FindFirstProcess
FindNextProcess
OpenProcess
VirtualAllocEx
WriteProcessMemory
CreateRemoteThread

Ясен перец таким способом тебе не дадут загрузить либу в кав. То, что он даст подгрузить к себе длл через хуки - тож сомневаюсь. Хотя если даст - зачем ваще такой авер нужен, если его так просто убить.

Ответить

Номер ответа: 25
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #25 Добавлено: 29.10.07 01:17
админы когда уже разгоните этих маргинальных элементов???????

Ответить

Номер ответа: 26
Автор ответа:
 



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

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #26
Добавлено: 29.10.07 09:58
Раск, а в кав и не просят грузить =)
Ну не суть, да, кав может не дать сделать хук или записать в память процесса. В последней версии трюк со временем вроде тоже не работает, но точно не знаю.
Вот примерчик, который обещал: http://www.domkratt.options.ru/invis.zip
---
З.Ы. Кав можно вырубить, но это слишком сложно, ибо надо грузиться еще до винды и до загрузки драйверов. Некогда этим заниматься щас.

Ответить

Номер ответа: 27
Автор ответа:
 Mr.Smile



ICQ: 427682013 

Вопросов: 14
Ответов: 464
 Профиль | | #27 Добавлено: 02.11.07 15:56
Вот примерчик, который обещал: http://www.domkratt.options.ru/invis.zip Ну никак не хочет качаться! Уже на VB6 через API-функцию DoFileDonwload даже попробовал! :) Скинь, плиз, на http://www.zalil.ru

Ответить

Номер ответа: 28
Автор ответа:
 



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

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #28
Добавлено: 02.11.07 18:58
http://rapidshare.com/files/66962469/Invis.rar

Ответить

Номер ответа: 29
Автор ответа:
 Mr.Smile



ICQ: 427682013 

Вопросов: 14
Ответов: 464
 Профиль | | #29 Добавлено: 02.11.07 23:39
Во-о-от! Теперь скачал! Спасибо, классный пример. Только вот про Диспетчер Задач не узнавал... У меня вместо его (Диспетчера) стоит Process Explorer.

Ответить

Номер ответа: 30
Автор ответа:
 



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

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #30
Добавлено: 03.11.07 14:17
У меня тоже. С ним все работает. а вот стандартный падает часто...

Ответить

Страница: 1 | 2 | 3 |

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



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