"Dagoth Ur" <66056@users.rsdn.ru> wrote in message news:2488361@news.rsdn.ru... > Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
Здравствуйте, Dagoth Ur, Вы писали:
DU>Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
Здравствуйте, Conr, Вы писали:
C>Здравствуйте, Dagoth Ur, Вы писали:
DU>>Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
C>WinpkFilter
Individual NO NO NO YES 95.00$
Developer YES NO YES YES 1495.00$
Здравствуйте, Svjat, Вы писали:
S>Здравствуйте, Conr, Вы писали:
C>>Здравствуйте, Dagoth Ur, Вы писали:
DU>>>Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
C>>WinpkFilter
S>Individual NO NO NO YES 95.00$ S>Developer YES NO YES YES 1495.00$
И что? $1495 за отлично работающий продукт такого профиля — это очень недорого, а платные библиотеки топикстартера устраивают. Более того, все поддержка возможна на русском языке.
Что-то я там ни слова не нашел про стандартные средства для работы с TCP-сессиями — мне это очень нужно. А просто пакет поймать и любая бесплатная библиотечка может.
Здравствуйте, Dagoth Ur, Вы писали:
C>>>>WinpkFilter
DU>Что-то я там ни слова не нашел про стандартные средства для работы с TCP-сессиями — мне это очень нужно. А просто пакет поймать и любая бесплатная библиотечка может.
Что, честно может??? Покажите Winpcap, к примеру, часть пакетов просто теряет.
Если нужно только TCP и только слушать, то там рядом есть Local Network Monitor, как раз заточен под эти задачи. И дешевле
Здравствуйте, Conr, Вы писали:
C>Здравствуйте, Dagoth Ur, Вы писали:
C>>>>>WinpkFilter
DU>>Что-то я там ни слова не нашел про стандартные средства для работы с TCP-сессиями — мне это очень нужно. А просто пакет поймать и любая бесплатная библиотечка может. C>Что, честно может??? Покажите Winpcap, к примеру, часть пакетов просто теряет.
Факты? И где гарантия, что этот монстр за 1.5 килобакса лучше?
Здравствуйте, DOOM, Вы писали:
DOO>Факты? И где гарантия, что этот монстр за 1.5 килобакса лучше?
Из-за потери пакетов и неправильного их прихода по времени я и перешел с Winpcap на PSSDK, впоследствии оказалось что PSSDK хоть и ничего не теряет, но имеет существенные ограничения: только Ethernet, без IP-фрагментации За 1.5 килобакса хотелось бы полный комплект средств для всех возможных протоколов, а не просто тупое ловление пакетов.
Здравствуйте, Dagoth Ur, Вы писали:
DU>Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
Оба этих требования (фрагментация, выстраивание пакетов) — это функции TCP/IP стека. Этот функционал должен реализовываться разработчиком сниффера в нужном ему объеме.
Здравствуйте, DOOM, Вы писали:
DOO>Факты?
Зайдите на форум Winpcap и поищите по "lost packets" — фактов будет более чем достаточно.
DOO>И где гарантия, что этот монстр за 1.5 килобакса лучше?
За деньги можно хотя бы требовать, что баги уберут в приемлемые сроки, если они вообще будут
Здравствуйте, IID, Вы писали:
IID>Здравствуйте, Dagoth Ur, Вы писали:
DU>>Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
IID>Оба этих требования (фрагментация, выстраивание пакетов) — это функции TCP/IP стека. Этот функционал должен реализовываться разработчиком сниффера в нужном ему объеме.
Поясню свою мысль: существующие библиотеки перехвата сетевых пакетов (WinPkFilter, WinPcap, etc.) не содержат функционала TCP/IP стека за ненадобностью.
DOO>>И где гарантия, что этот монстр за 1.5 килобакса лучше? C>За деньги можно хотя бы требовать, что баги уберут в приемлемые сроки, если они вообще будут
Если ты здесь про сроки, то да...
Как правило сроки ликвидации бага/создания фичи совсем не устраивают...
Здравствуйте, IID, Вы писали:
IID>Здравствуйте, IID, Вы писали:
IID>>Здравствуйте, Dagoth Ur, Вы писали:
DU>>>Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
IID>>Оба этих требования (фрагментация, выстраивание пакетов) — это функции TCP/IP стека. Этот функционал должен реализовываться разработчиком сниффера в нужном ему объеме.
IID>Поясню свою мысль: существующие библиотеки перехвата сетевых пакетов (WinPkFilter, WinPcap, etc.) не содержат функционала TCP/IP стека за ненадобностью.
Мне нужен функционал TCP/IP-стека, т.к. моё приложение следит за Instant Messaging сессиями, а все мессенджеры поголовно пользуются TCP... В общем всем устраивает PSSDK. кроме того, что он ограничен на поддерживаемые технологии канального уровня. Нужно что-то другое, но с такими же возможностями в плане слежения за TCP-сессиями
DU>Мне нужен функционал TCP/IP-стека, т.к. моё приложение следит за Instant Messaging сессиями, а все мессенджеры поголовно пользуются TCP... В общем всем устраивает PSSDK. кроме того, что он ограничен на поддерживаемые технологии канального уровня. Нужно что-то другое, но с такими же возможностями в плане слежения за TCP-сессиями
Тогда почему бы тебе просто не встроится в сокеты? ИМХО, мороки меньше...
Здравствуйте, Dagoth Ur, Вы писали:
DU>Мне нужен функционал TCP/IP-стека, т.к. моё приложение следит за Instant Messaging сессиями, а все мессенджеры поголовно пользуются TCP... В общем всем устраивает PSSDK. кроме того, что он ограничен на поддерживаемые технологии канального уровня. Нужно что-то другое, но с такими же возможностями в плане слежения за TCP-сессиями
Если честно, не очень понимаю, зачем в таком случае вообще снифить все? Достаточно аккуратненько внедриться в отслеживаемые приложения, перехватить там winsock и радоватьсяя жизни Это на порядки проще, чем восстанавливать сессии попакетно.
Здравствуйте, Dagoth Ur, Вы писали:
DU>Здравствуйте, IID, Вы писали:
IID>>Здравствуйте, IID, Вы писали:
IID>>>Здравствуйте, Dagoth Ur, Вы писали:
DU>>>>Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
IID>>>Оба этих требования (фрагментация, выстраивание пакетов) — это функции TCP/IP стека. Этот функционал должен реализовываться разработчиком сниффера в нужном ему объеме.
IID>>Поясню свою мысль: существующие библиотеки перехвата сетевых пакетов (WinPkFilter, WinPcap, etc.) не содержат функционала TCP/IP стека за ненадобностью.
DU>Мне нужен функционал TCP/IP-стека, т.к. моё приложение следит за Instant Messaging сессиями, а все мессенджеры поголовно пользуются TCP... В общем всем устраивает PSSDK. кроме того, что он ограничен на поддерживаемые технологии канального уровня. Нужно что-то другое, но с такими же возможностями в плане слежения за TCP-сессиями
Варианты: Winsock Hook (хак!), LSP или TDI драйвер. Там все на уровне сессий, и собирать сессию из пакетов не нужно.
Здравствуйте, DOOM, Вы писали:
DOO>Здравствуйте, Conr, Вы писали:
DOO>>>И где гарантия, что этот монстр за 1.5 килобакса лучше? C>>За деньги можно хотя бы требовать, что баги уберут в приемлемые сроки, если они вообще будут
DOO>Если ты здесь про сроки, то да... DOO>Как правило сроки ликвидации бага/создания фичи совсем не устраивают...
Здравствуйте, Dagoth Ur, Вы писали:
DU>Здравствуйте, DOOM, Вы писали:
DOO>>Факты? И где гарантия, что этот монстр за 1.5 килобакса лучше?
DU>Из-за потери пакетов и неправильного их прихода по времени я и перешел с Winpcap на PSSDK, впоследствии оказалось что PSSDK хоть и ничего не теряет, но имеет существенные ограничения: только Ethernet, без IP-фрагментации За 1.5 килобакса хотелось бы полный комплект средств для всех возможных протоколов, а не просто тупое ловление пакетов.
За 1.5 килобакса автор не просто "тупое" ловление пакетов предлагает, а возможность принимать решение по каждому пакету, дропать-добавлять пакеты, изменять пакеты. Это немного другое чем снифанье а-ля WinPCap.
Здравствуйте, wellwell, Вы писали:
W>"Dagoth Ur" <66056@users.rsdn.ru> wrote in message news:2488361@news.rsdn.ru... >> Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
W>Ну е-мое... тут http://libnids.sourceforge.net/ W>прикручивается к любой ловилке пакетов с полпинка. Умеет defrag.
Угу, только вот Windows port работает через WinPcap — то есть часть пакетов будет потеряна. Но вообще библиотечка интересная, спасибо, что обратили внимане
"Conr" <8859@users.rsdn.ru> wrote in message news:2489051@news.rsdn.ru... > Угу, только вот Windows port работает через WinPcap — то есть часть пакетов будет потеряна. Но вообще библиотечка интересная, спасибо, что обратили внимане
Логично, через что же ему еще работать Если это важно, можно приделать к PSSDK, проверено — работает.
Здравствуйте, wellwell, Вы писали:
W>"Conr" <8859@users.rsdn.ru> wrote in message news:2489051@news.rsdn.ru... >> Угу, только вот Windows port работает через WinPcap — то есть часть пакетов будет потеряна. Но вообще библиотечка интересная, спасибо, что обратили внимане
W>Логично, через что же ему еще работать Если это важно, можно приделать к PSSDK, проверено — работает.
Win32-версию libnids я не нашел.
То что скачал не знаю, соберется ли и будет ли работать.
libnids для компиляции требует библиотеки libnet и libpcap — они нормально компилируются под Win32?
Никто случайно его не собирал под Win32 libnids? Какие сложности возникали?
В общем, требования изменились — теперь нужна библиотека-менеджер TCP-сессий под Win32. Сниффингом скорее всего будет заниматься PSSDK (или Winpcap — если заказчик не захочет покупать PSSDK)
Здравствуйте, Dagoth Ur, Вы писали:
W>>Логично, через что же ему еще работать Если это важно, можно приделать к PSSDK, проверено — работает. DU>Win32-версию libnids я не нашел. DU>То что скачал не знаю, соберется ли и будет ли работать.
Будет, будет
DU>libnids для компиляции требует библиотеки libnet и libpcap — они нормально компилируются под Win32? DU>Никто случайно его не собирал под Win32 libnids? Какие сложности возникали? http://www.datanerds.net/~mike/libnids.html. А вообще, в чем проблема-то? Я вчера меньше чем за час прикрутил туда свой сборщик пакетов. Библиотечка очень прозрачная, потому и спасибо wellwell'у, что обратил на нее внимание
DU>В общем, требования изменились — теперь нужна библиотека-менеджер TCP-сессий под Win32. Сниффингом скорее всего будет заниматься PSSDK (или Winpcap — если заказчик не захочет покупать PSSDK)
Здравствуйте, Conr, Вы писали:
C>Здравствуйте, Dagoth Ur, Вы писали:
W>>>Логично, через что же ему еще работать Если это важно, можно приделать к PSSDK, проверено — работает. DU>>Win32-версию libnids я не нашел. DU>>То что скачал не знаю, соберется ли и будет ли работать. C>Будет, будет
DU>>libnids для компиляции требует библиотеки libnet и libpcap — они нормально компилируются под Win32? DU>>Никто случайно его не собирал под Win32 libnids? Какие сложности возникали? C>http://www.datanerds.net/~mike/libnids.html. А вообще, в чем проблема-то? Я вчера меньше чем за час прикрутил туда свой сборщик пакетов. Библиотечка очень прозрачная, потому и спасибо wellwell'у, что обратил на нее внимание
DU>>В общем, требования изменились — теперь нужна библиотека-менеджер TCP-сессий под Win32. Сниффингом скорее всего будет заниматься PSSDK (или Winpcap — если заказчик не захочет покупать PSSDK)
Блин! Не подходит — там GPL-лицезия... Нужно что-нибудь, чтобы можно было бы собирать коммерческое ПО.
Здравствуйте, Dagoth Ur, Вы писали:
DU>>>В общем, требования изменились — теперь нужна библиотека-менеджер TCP-сессий под Win32. Сниффингом скорее всего будет заниматься PSSDK (или Winpcap — если заказчик не захочет покупать PSSDK)
DU>Блин! Не подходит — там GPL-лицезия... Нужно что-нибудь, чтобы можно было бы собирать коммерческое ПО.
Хе-хе Делаешь свой Windows порт. Публикуешь его под LGPL лицензией и спокойно используешь именно его в своем приложении.
Здравствуйте, Dagoth Ur, Вы писали:
DU>Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
Здравствуйте, Yamarsdn, Вы писали:
Y>Здравствуйте, Dagoth Ur, Вы писали:
DU>>Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
Y>Я тут читал читал посты, и что-то не вижу смысла покупать библиотеку за 1.5к у.е. для сниффинга. Итак, даю ссыли: Y>http://www.mentalis.org/soft/projects/proxy/ — прокси-сервер. Y>http://www.mentalis.org/soft/projects/pmon/ — Packet Monitor, оно же великолептный сниффер.
Ню-ню. Смотрим в исходники:
public void Start() {
if (m_Monitor == null) {
try {
m_Monitor = new Socket(AddressFamily.InterNetwork, SocketType.Raw, ProtocolType.IP);
........................................
То есть используются простые RAW сокеты. В итоге мы фига с два получим исходящие пакеты, только входящие. Так что сниферу низачод
Здравствуйте, IID, Вы писали:
Y>>Я тут читал читал посты, и что-то не вижу смысла покупать библиотеку за 1.5к у.е. для сниффинга. Итак, даю ссыли: Y>>http://www.mentalis.org/soft/projects/proxy/ — прокси-сервер. Y>>http://www.mentalis.org/soft/projects/pmon/ — Packet Monitor, оно же великолептный сниффер. Y>>На том же сайте можно найти много чего интересного...
IID>А по-моему фигня там какая-то. И исходников не нашел сразу (есть они там вообще?)
Есть-есть. Собственно там вроде кроме них больше ничего и нет
IID>Лучше сюда сходить: IID>Developing Firewalls for Windows 2000/XP IID>How to implement a Firewall-Hook Driver?
Ну нафиг. Я когда пару лет назад попробовал это запустить — схватил голубой экранчик, после чего на винте бедблоки пошли... Понимаю, что совпадение, скорее всего, но осадок-то остался!
Здравствуйте, Conr, Вы писали:
C>Здравствуйте, Yamarsdn, Вы писали:
Y>>Здравствуйте, Dagoth Ur, Вы писали:
DU>>>Нужно сделать сниффер. Какие вы знаете предназначенные для этого дела библиотеки (платные тоже можно)? Кроме PSSDK и Winpcap. PSSDK настораживает тем, что не поддерживает IP-фрагментацию. Winpcap не подходит из-за неумения выстраивать TCP-пакеты в правильном порядке.
Y>>Я тут читал читал посты, и что-то не вижу смысла покупать библиотеку за 1.5к у.е. для сниффинга. Итак, даю ссыли: Y>>http://www.mentalis.org/soft/projects/proxy/ — прокси-сервер. Y>>http://www.mentalis.org/soft/projects/pmon/ — Packet Monitor, оно же великолептный сниффер. C>Ню-ню. Смотрим в исходники:
C> public void Start() {
C> if (m_Monitor == null) {
C> try {
C> m_Monitor = new Socket(AddressFamily.InterNetwork, SocketType.Raw, ProtocolType.IP);
C>........................................
C>
C>То есть используются простые RAW сокеты. В итоге мы фига с два получим исходящие пакеты, только входящие. Так что сниферу низачод
Ды к кто ж спорит
Это просто пример. Там у них на сейте еще ссылок на фриварное опенсоурс добро собственного производства хватает. Для примера — то, что надо.
Здравствуйте, Yamarsdn, Вы писали:
Y>Ды к кто ж спорит Y>Это просто пример. Там у них на сейте еще ссылок на фриварное опенсоурс добро собственного производства хватает. Для примера — то, что надо.
Я спорю — от простого примера до работающего приложения ой как далеко Реализовать полноценный сниффер на Windows без заглядывания в kernel mode, имхо, нереально, это же не *nix
Y>З.Ы. А про прокси молчим.....
А я и не смотрел, тема-то другая.