Форум: "Сети";
Текущий архив: 2007.10.21;
Скачать: [xml.tar.bz2];
ВнизMailSlot поймать реального клиента Найти похожие ветки
← →
SergGG © (2007-02-13 12:16) [0]Мастера подскажите, каким образом можно вычислить реального клиента, пославшего сообщение по сети с помощью MailSlota.
Клиент посылает сообщение:
h:=CreateFile( PChar("\\" + ServerName + "\mailslot\messngr), GENERIC_WRITE, FILE_SHARE_READ,nil,OPEN_EXISTING, 0, 0);
WriteFile(h,Mess[1],Length(Mess),DWORD(i),nil);
Где Mess:="ClientName"+#0+"ServerName"+#0+"TextMess";
но клиент может написать в ClientName что угодно.
Поэтому выявить, кто послал сообщение не получается.
И ещё клиент не использует протоколы NetBIOS, Socket, Pipes
← →
alexm_hs © (2007-02-16 23:50) [1]Можно слушать траффик. Простейших снифферов с исходниками на Дельфи много в сети. Им же и посмотреть, какой пакет приходит при получении сообщения.
← →
iXT © (2007-02-17 12:17) [2]Судя по записи автора клиент просто создает файл на удаленном хосте. Если определять со стороны хоста, то в зависимости от ОС, можно определить родителя (создателя) файла.
> SergGG © (13.02.07 12:16)
С чьей стороны надо определять отправителя?
← →
alexm_hs © (2007-02-18 00:08) [3]
> Судя по записи автора клиент просто создает файл на удаленном
> хосте. Если определять со стороны хоста, то в зависимости
> от ОС, можно определить родителя (создателя) файла.
Эт не совсем файл. функция CreateFile создает не только файлы
(This function creates, opens, or truncates a file, COM port, device, service, or console. It returns a handle that you can use to access the object. MSDN).
так что на своем диске вы такого файла не найдете. А вообще надо просто автору разобраться в механизме майлслотов. Можно сделать приложение, которое в фоне будет постоянно читать слот messngr. Возможно там будет инфа об адресе отправителя.
Кстати, когда давно тоже такой проблемой мучился. Слушал сниффером трафик, вроду бы какие-то пакеты при получении сообщения отлавливались
← →
SergGG © (2007-02-20 09:24) [4]> iXT © (17.02.07 12:17) [2]
> С чьей стороны надо определять отправителя?
Со-стороны Servera (тот кто получает сообщение);
> alexm_hs © (18.02.07 00:08) [3]
> А вообще надо просто автору разобраться в механизме майлслотов.
Механизм Я изучил досконально.
> Можно сделать приложение, которое в фоне будет постоянно читать слот > messngr.
Я создал такое приложение
> Возможно там будет инфа об адресе отправителя.
Там есть информация и приходит она только в таком виде:"ClientName"#0"ServerName"#0"TextMess";
т.е. что Client отправляет, то Server и получает.
А мне нужны сведения о реальном Hoste Clienta.
Заранее спасибо!
← →
iXT © (2007-02-20 10:40) [5][1] Чем не понравилось?
← →
alexm_hs © (2007-02-20 21:17) [6]тогда только ловить пакеты. В этом нет ничего страшно сложного. На дельфи полно примеров сниферов (у Rouse_ даже вроде видел). Этож точно в виде пакета приходит. Там по-любому ИП и МАК релаьные будут (если отправитель уж совсем не извращенец и не составлял пакет вручную :)) Посмотрите для начала обычным сниффером, что там вам сваливается при получении сообщ
← →
iXT © (2007-02-20 22:23) [7]
> alexm_hs © (20.02.07 21:17) [6]
Сниф вернет IP, но не username. А там теоретически может быть Anybody
← →
alexm_hs © (2007-02-21 18:22) [8]так а что требуется -то? в заголовке сообщения всегда стоит адрес хоста (ип или днс), либо "левое" имя (в случае анонимного сообщения). Никто о юзернэйме и не говорил. Его-то и не получишь. Я так понял, автор очень хочет знать, к кому идти, в случае если его послали в анонимном сообщении. Думаю, для нахождения анонима в данном случае достаточно будет ИП. а дальше дело техники. :)
← →
SergGG © (2007-02-22 10:01) [9]> Я так понял, автор очень хочет знать, к кому идти, в случае если его
> послали в анонимном сообщении.
Вы правильно поняли.
Я попробовал сниффером отловить, Всё получается. Но у него есть свои недостатки:
- Если в сети куча народа, Сниффер просто заберает все рессурсы;
- пробовал фильтровать, лучше, но нето.
Короче Сниффер постоянно сканирует Все входящие и исходящие пакеты, которые проходят через сетевую карту. А из всех полученых пакетов Я уже выбираю (фильтрую) необходимый.
А есть ли способ, чтобы Сниффер не сканировал все пакеты, а ждал получения определённого пакета?
И ещё Сниффер работает за счёт инициализации Sockets, а создать Сниффер другим способом, например, на основе NetBIOSa возможно?
← →
iXT © (2007-02-23 09:44) [10]
> А есть ли способ, чтобы Сниффер не сканировал все пакеты,
> а ждал получения определённого пакета?
А как он узнает его? В лицо: "О, это ты. Идика сюда, щаз я тебя просканирую"? :)
← →
alexm_hs © (2007-02-23 16:54) [11]Боюсь, другого выхода нет :((
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2007.10.21;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.034 c