2011-12-06 22 views
0

我写了一个c#程序,它在pcap文件中查找facebook消息。但现在它不起作用。在facebook聊天中捕获传入消息

我的程序会在IPv4数据包

"application/json" and "\"msg\":{\"text\"" 

字符串。

但昨天我注意到没有这样的数据包发送了。相反,这些现在我可以通过搜索

"/ajax/chat/send.php" 

区分Facebook的聊天数据包,但是此字符串仅用于传出消息。对于传入的消息,我找不到任何关键字符串。 有什么想法?

+0

我找到了自己的解决方案。 Facebook以文本/普通http数据包的形式发送聊天包并进行gzip压缩。所以如果你想捕获和解析所有的Facebook聊天消息,你必须重新构建TCP会话并解压缩流并解析字符串。 –

回答

1

ipv4数据包中的应用程序数据(HTTP聊天数据)可以被分段,即单个ipv4数据包可能不包含完整字符串“application/json”或“\”msg \“:{\”text \“”。

更好的方法是捕获更高级别的HTTP流量(由pcap预处理)。以下是关于HTTP流量嗅探相关信息 - https://serverfault.com/questions/84750/monitoring-http-traffic-using-tcpdump

有HTTP流量转储你可以分析更多的一贯的时尚信息,并确保碎片是不是一个问题