Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 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.051 c
3-1181547201
Krants
2007-06-11 11:33
2007.10.21
Разрешить изменения текста в TDBEdit


1-1186377350
Berkut
2007-08-06 09:15
2007.10.21
Передеча форматированного текста в Word


2-1190789736
l_v
2007-09-26 10:55
2007.10.21
ServerSocket


11-1173903627
VVU
2007-03-14 23:20
2007.10.21
Прямоугольник текста в StrigGrid


2-1190481611
Yogan
2007-09-22 21:20
2007.10.21
idsmtpserver





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский