информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Страшный баг в WindowsЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Google окончательно прикрывает... 
 С наступающим 
 Серьезная уязвимость в Apache Log4j 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
перехват пакетов через конкретный интерфейс (eth0) 09.10.02 11:00  Число просмотров: 1168
Автор: navigator Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Понятно, создал сокет получаю через него пакеты, но как этот сокет связать с конкретным интерфейсом, чтоб не ловить какие-попало пакеты а именно идущие через него.
<programming>
[Unix] Прехват пакетов через конкретный (ые) интерфейсы... 27.09.02 13:49  
Автор: navigator Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Подскажите кто-нибудь как на С в линухе перехватывать пакеты проходящие через конкретный интерфейс (ы) , может у коро есть примерчик, если нет то может кто хотяб теоретическим алгоритмиком поделится.

Был бы очень благодарен...
А чем тебе исходники tcpdump не нравятся ? (внутри только ссылка ! ) 27.09.02 16:28  
Автор: PS <PS> Статус: Elderman
<"чистая" ссылка>
сылка на исходники
http://cvs.tcpdump.org/cgi-bin/cvsweb/tcpdump/
А чем тебе исходники tcpdump не нравятся ? (внутри только ссылка ! ) 28.09.02 09:33  
Автор: navigator Статус: Незарегистрированный пользователь
Отредактировано 28.09.02 09:42  Количество правок: 1
<"чистая" ссылка>
не, ну это само сосбой понятно, что можно взять и покопать, просто хотелосьбы чтоб просто алгоритмик подсказали как это делается.......
И еще интересно, как перехватить все пакеты который проходят через конкретный интерфейс (например гейта )....
[Unix] Ну вообще то кошерное решение в данном случае это TUN/TAP 01.10.02 14:47  
Автор: XR <eXtremal Research> Статус: The Elderman
<"чистая" ссылка>
Я тоже везде примеры искал, тока небыло. Посмотрел в исходники и всё понял :)) 27.09.02 16:38  
Автор: Access Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Можешь глянуть ещё на www.opennet.ru
в поиске набери "фреймы"
параметр type в финции socket 30.09.02 18:44  
Автор: FreeHermit Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Это делается просто: есть функция
int socket (int domain, int type, int protocol)

создаешь сокет с параметрами:
domain = AF_INET
type = SOCK_PACKET (для этого нужно иметь права суперпользователя)
protocol = 0

и потом работаешь с ним как с простым сокетом...
Тока ещё св-во установи сокету если тебя интересуют не только "свои" пакеты 02.10.02 17:02  
Автор: Access Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Вот кусок:
int openintf(char *d)
{
int fd;
struct ifreq ifr;
int s;
fd=socket(AF_INET, SOCK_PACKET, htons(0x800));
if(fd < 0)
{
perror("cant get SOCK_PACKET socket");
exit(0);
}
strcpy(ifr.ifr_name, d);
s=ioctl(fd,SIOCSIFFLAGS, &ifr);

if(s < 0)
{
close(fd);
perror("cant get flags");
exit(0);
}

ifr.ifr_flags |= IFF_PROMISC;

s=ioctl(fd,SIOCSIFFLAGS, &ifr);

if(s < 0) perror("cant set promiscuous mode");
return fd;
}

Если надо , вошлю полностью. Намыль accesss@yandex.ru
перехват пакетов через конкретный интерфейс (eth0) 09.10.02 11:00  
Автор: navigator Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Понятно, создал сокет получаю через него пакеты, но как этот сокет связать с конкретным интерфейсом, чтоб не ловить какие-попало пакеты а именно идущие через него.
1






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


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