Вживление VB-кода в другие процессы

Обсуждение статей, опубликованных на сайте.
Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Сообщение Twister » 07.06.2006 (Ср) 13:07

Гм... Что-то действительно WASM.RU загнулся на время (надеюсь что только на время). Я хотел дать линки и облом... У меня есть оффлайн версия тамошних статей, так что если кому интересно про обход OutPost-а могу процитировать ms-rem-а.

GSerg писал(а):ms-rem?.. Этот тот, ошибки в мыслях которого tyomitch неоднократно находил?..
Видишь ли, человеку свойственно иногда ошибаться. Но я вынужден согласиться с ANDLL - чувак действительно шарящий.
А я все практикую лечение травами...

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 10.06.2006 (Сб) 20:15

tyomitch писал(а):
keks-n писал(а):Кстати WriteProcessMemory(точнее его kernel-mode аналог) таки перехватывается, но если объём данных меньше 16 байт, то outpost на неё не обращает внимания, думая, что вызов системный.

Гм. Ну пусть тогда ANDLL, у которого есть свежий Outpost, проверит мой код, урезав строки до 16 байт ;-)

ANDLL проверил. Если писать кусками по 16 байт, никто ничего не замечает.
Изображение

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 13.06.2006 (Вт) 5:43

Правда, что самое интересное, можно легко настроить правила на те процессы, которым можно писать, а которым нет, поэтому странно, что ребята сделали такое ограничение. Возможно, что есть ограничение в системных API, используемых самим Outpost. Никто не копался?
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 13.06.2006 (Вт) 9:47

Вероятно ограничение заключается в
[quote=tyomitch]
Например потому, что WriteProcessMemory используется некоторыми системными функциями.
[/quote]
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 13.06.2006 (Вт) 12:15

Я говорю об ограничениях системных API, а не Outpost'а.
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 25.09.2006 (Пн) 18:50

Гайдар, я не понял, как ты предлагаеш outpost'у определять, кто производит запись системная функция или моя?
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 27.09.2006 (Ср) 12:09

В смысле? Какая проблема проверить вызов API функций?
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 27.09.2006 (Ср) 14:24

Какая проблема проверить вызов API функций

То есть ты предлагаеш outpost'у проверять кто вызвал функцию WriteProces..., и если это сделала система разрешать, иначе, запрещать доступ в инет?
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 27.09.2006 (Ср) 17:09

gaidar писал(а):В смысле? Какая проблема проверить вызов API функций?

И как это, интересно, можно проверить? по адресу возврата? ;-)
Изображение

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 28.09.2006 (Чт) 22:29

Теоретически это не проблема, другое дело, что производительность системы с "тотальной слежной" будет значительно меньше...
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 29.09.2006 (Пт) 4:11

Теоретически это проблема.
См. http://blogs.msdn.com/oldnewthing/archi ... 04232.aspx
Изображение

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 29.09.2006 (Пт) 10:26

tyomitch писал(а):Теоретически это проблема.
См. http://blogs.msdn.com/oldnewthing/archi ... 04232.aspx


Soft Ice?
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 29.09.2006 (Пт) 10:30

что софтайс?
Изображение

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 29.09.2006 (Пт) 13:11

tyomitch писал(а):что софтайс?


Отслеживать тем же образом. Если покопать, то можно придумать механизм и проще... Например, по имени/ID вызывающего процесса и т.п.
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 29.09.2006 (Пт) 15:10

По имени процесса никак не узнать, функция вызвана системой или пользователем.

Что именно отслеживает софтайс (и тем более, как именно он это делает) -- я не в курсе.
Изображение

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 29.09.2006 (Пт) 15:15

tyomitch писал(а):По имени процесса никак не узнать, функция вызвана системой или пользователем.


Можно определить степень доверительности процесса a la механизмы безопасности в .NET. Только в .NET у нас код управляемый, поэтому нужно будет как-то снабжать нативный код метаданными.

Что именно отслеживает софтайс (и тем более, как именно он это делает) -- я не в курсе.


Я тоже, но он как-то это делает - выбиряя только нужное приложение.

В любом случае, мы обсуждаем не то, что можно и нужно, а то, что в принципе можно, но никому не нужно.
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 29.09.2006 (Пт) 20:10

gaidar писал(а):
tyomitch писал(а):По имени процесса никак не узнать, функция вызвана системой или пользователем.


Можно определить степень доверительности процесса a la механизмы безопасности в .NET. Только в .NET у нас код управляемый, поэтому нужно будет как-то снабжать нативный код метаданными.

О том и речь, что по нативному коду внутри одного процесса никак не понять, откуда он взялся -- из системы, из проги, или случайно сам собой. Либо весь процесс "доверенный", либо весь блокируется.
Изображение

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 29.09.2006 (Пт) 20:50

Ну да, ну да...

Ладно, надеюсь, что ни тебе, ни мне никогда не придется реализовывать такую штуку :). Хотя мало ли, что бывает.

И вообще, приезжал бы ты в Москву на пару дней как-нибудь все-таки, а? :)
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 29.09.2006 (Пт) 21:00

Если ничего не расстроится (оно легко может), то в конце октября я окажусь на этой конференции.
Изображение

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 02.10.2006 (Пн) 12:39

Круто, только не забудь послать весточку, пожалуйста.
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 30.12.2006 (Сб) 14:31

У меня такой вопрос: в OLE View открыл скомпиленную библу, какие значения надо сохранять, чтобы потом использовать:
Вот текст из OLE View. Ничего похожего на IID и CLSID я не нашёл.
:oops:
Код: Выделить всё
// Generated .IDL file (by the OLE/COM Object Viewer)
//
// typelib filename: Project1.dll

[
  uuid(CD0E8058-C3E5-4A7B-9B81-089B8ADB0086),
  version(2.0)
]
library ProjectXent
{
    // TLib :     // TLib : OLE Automation : {00020430-0000-0000-C000-000000000046}
    importlib("stdole2.tlb");

    // Forward declare all types defined in this typelib
    interface _Class1;

    [
      odl,
      uuid(B6306DEB-9CD8-4F3B-9DCC-55E64B75EB8B),
      version(1.0),
      hidden,
      dual,
      nonextensible,
      oleautomation
    ]
    interface _Class1 : IDispatch {
        [id(0x60030000)]
        HRESULT Main();
    };

    [
      uuid(BC220BF2-AAF8-41B2-8A55-6DE71AF838D0),
      version(1.0)
    ]
    coclass Class1 {
        [default] interface _Class1;
    };
};

Подскажите, пожалуста, что надо взять...
Подпись проходит рефакторинг

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 30.12.2006 (Сб) 15:48

То есть даже глядя на приведённый в статье код, ты не видишь, где IID и CLSID?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 30.12.2006 (Сб) 16:02

GSerg
В статье написано два значения, выделенных цветными маркерами, выделенного я там не нашёл. Может я просто торможу...
ну помогите, пожалуйста, просто никогда с таким не приходилось встречаться, вот и торможу... :oops:
Подпись проходит рефакторинг

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 30.12.2006 (Сб) 16:21

Повторю вопрос.
Глядя на код статьи (на ВЕСЬ), ты не понимаешь, где эти значения?

И почему ты решил использовать то, что не понимаешь? Может разобраться сначала? Или сразу охота писать что-то вредительское, пусть и копипастом? :roll:
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 30.12.2006 (Сб) 20:51

C какой стати сразу вредительское?
Вам лишь бы опустить человека...
Ну нету там ничего, выделенного маркёрами. Не знаю я что такое IID и CLSID...
А хотя чё я тут распинаюсь, не хотите подсказывать, не надо. Тоже мне умные нашлись. Отвечать на мой вопрос (это на случай, если кто всё-таки надумает, что врядли) не надо. Просто ОРГОМНОЕ спасибо за оказанный радушный приём внимание, а также за "помощь".

PS: Умеете вы, ребята, в трудную минуту "поддержать"...
Подпись проходит рефакторинг

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 03.01.2007 (Ср) 12:56

Я просил Гайдара сделать подсветку раз 10, но тщетно.
В этом коде
CLSID:BC220BF2-AAF8-41B2-8A55-6DE71AF838D0
IID:B6306DEB-9CD8-4F3B-9DCC-55E64B75EB8B
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 03.01.2007 (Ср) 16:55

ANDLL
Спасибо огромное за помощь и ещё более огромный респект за статью.
Подпись проходит рефакторинг

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 03.01.2007 (Ср) 16:58

ANDLL
Спасибо огромное за помощь и ещё более огромный респект за статью!
Подпись проходит рефакторинг

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 03.01.2007 (Ср) 18:23

ANDLL писал(а):Я просил Гайдара сделать подсветку раз 10, но тщетно.
В этом коде
CLSID:BC220BF2-AAF8-41B2-8A55-6DE71AF838D0
IID:B6306DEB-9CD8-4F3B-9DCC-55E64B75EB8B

Кстати, если в браузере нажать Ctrl + F5, и присмотреться, то можно ответить, что эти значения уже почти месяц как красные :)
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

Пред.

Вернуться в Статьи

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

    TopList