Перехват send

Тема в разделе "WASM.NETWORKS", создана пользователем Charm0nt, 19 июл 2010.

  1. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Charm0nt
    Патч. Обнаруживается элементарно всеми детекторами, снимается также.
    Не актуально.
     
  2. Charm0nt

    Charm0nt New Member

    Публикаций:
    0
    Регистрация:
    16 фев 2010
    Сообщения:
    22
    Clerk
    Ага, понятно. Да мне, главное, чтобы эффективно работало и не очень сильно расходовало системные ресурсы. Это пока что на первом месте для меня.
    Что посоветуете использовать? В каком плане "не актуально"? В плане установки перехвата или в плане используемых функций для этого? Есть какие то актуальные библиотеки для перехвата (Delphi), или лучше все пробовать реализовывать самому?

    Сорри, что задаю много вопросов, но я хочу научиться.
     
  3. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Charm0nt
    Троян не должен использовать патчи. Вобще нельзя изменять кодосекции. В связи с этим я даже не рассматриваю всякие движки для сплайсов и тп. как годные для использования(ну разве что для отладки и в качестве надстроек в легальном софте). Актуально такое было лет 6%7 назад. Технологический уровень обоих сторон растёт.
     
  4. Charm0nt

    Charm0nt New Member

    Публикаций:
    0
    Регистрация:
    16 фев 2010
    Сообщения:
    22
    Clerk
    А, имеется в виду под "Патчи" - установка перехвата чужом процессе (то есть изменяем память)?

    А трояны, типа Zeus и т. д. работают разве не с помощью таких технологий как сплайсинг и т. д. для перехвата API?
     
  5. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Charm0nt
    Имеется ввиду изменение секций с кодом в модулях.
     
  6. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Работают, но троянами называются чисто условно. По сути это не трояны.
     
  7. onSide

    onSide New Member

    Публикаций:
    0
    Регистрация:
    18 июн 2008
    Сообщения:
    476
    как-то через одно место все.
    Как может быть неизвестен размер данных которые вы хотите вставить? Указатель в send заменяете на свой, в котором ваши данные. Зачем тут исключения какие-то, если большой размер VirtualAlloc, иначе HeapXxx. Че велсипед изобретать.
     
  8. Charm0nt

    Charm0nt New Member

    Публикаций:
    0
    Регистрация:
    16 фев 2010
    Сообщения:
    22
    onSide
    Новый размер данных может быть запросто неизвестен. Например, если в отправляемом пакете обнаруживаю определенный байт некоторого значения, - значит делаю изменения (дополнения и т. п.). Таких байтов может быть много, значит размер нового блока данных не всегда известный.
     
  9. onSide

    onSide New Member

    Публикаций:
    0
    Регистрация:
    18 июн 2008
    Сообщения:
    476
    Charm0nt
    вариант 1-просто юзаешь HeapReAlloc и делаешь что угодно
    вариант 2-сначала определяешь на сколько изменить размер, и выделяешь память один раз, делаешь изменения.

    И вообще сомневаюсь что у тебя будет такая побайтная замена по очень много раз на один пакет. Задача похожа на теоретическую, сначала попробуй реализовать самый простой для тебя метод и потом смотри подходит тебе или нет.