информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Spanning Tree Protocol: недокументированное применениеАтака на InternetВсе любят мед
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
LSP находится полностью в userspace 01.10.06 23:27  Число просмотров: 2331
Автор: Killer{R} <Dmitry> Статус: Elderman
<"чистая" ссылка>
LSP находится полностью в userspace
по сути это просто документированный механизм заменяющий собой winsock API hooking
потому не надо думать про какие то там пакеты (только если не работать с RAW IP) - все это обрабатывается в ядре, думать надо про то что это прежде всего врапперы функций winsock'а.
<programming>
Несколько вопросов по Layered Service Provider 01.10.06 17:28  
Автор: makeworld Статус: Member
<"чистая" ссылка>
Кто работал с LSP, подскажите..

1. Принцип работы заключается в том, что при получении/отправки пакета, callback-ом вызываются WSPRecv/WSPSend ? Если так, в буфере весь пакет или только данные (payload)? Или вызов этих функций привязан к какому-то внутреннему буферу, накапливающему данные, к которому периодически предоставляется доступ через эти функции?

2. LSP работает в режиме пользователя? При разработке можно использовать функции WinAPI, CryptoAPI?

3. Есть ли какой-нибудь таймаут при обработке данных в WSPRecv/WSPSend? Например, при ожидании семафора или выполнения трудоемкой операции, через какой-нибудь фиксированный промежуток времени пакет отправляется/сбрасывается? Или можно сколько угодно пакет "удерживать"?

4. При изменении пакета нужно самому пересчитывать контрольные суммы? Или все автоматом пересчитывается? Как увеличить размер полезной нагрузки пакета? Вот например функция WSPSend:

int WSPAPI
WSPSend(
        SOCKET          s,
        LPWSABUF        lpBuffers,
        DWORD           dwBufferCount,
        LPDWORD         lpNumberOfBytesSent,
        DWORD           dwFlags,
        LPWSAOVERLAPPED lpOverlapped,
        LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,
        LPWSATHREADID   lpThreadId,
        LPINT           lpErrno
       )

---

Как я понимаю пакет находится в буфере на который указывает lpBuffers. Если я хочу переписать буффер мне нужно писать по этому указателю? При превышении dwBufferCount это должно по идее вызвать переполнение. Или это по другому делается?
LSP находится полностью в userspace 01.10.06 23:27  
Автор: Killer{R} <Dmitry> Статус: Elderman
<"чистая" ссылка>
LSP находится полностью в userspace
по сути это просто документированный механизм заменяющий собой winsock API hooking
потому не надо думать про какие то там пакеты (только если не работать с RAW IP) - все это обрабатывается в ядре, думать надо про то что это прежде всего врапперы функций winsock'а.
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach