1
owt5008137 2016-03-09 13:55:51 +08:00 via Android 1
chrome 的开发工具和 fiddler 都只能抓 http 协议的,如果它 flash 里用原生 tcp 或者其他的就抓不到了,这时候只能 wireshark 啦,因为它直接抓网卡数据的。然后你需要学会怎么过滤指定端口或指定程序的数据包然后人工粘包。或者我们以前是写插件粘包和 dump 的
|
2
daiv OP @owt5008137 谢谢,那我今天下午尝试用 wireshark 抓 socket ,看是不是数据在里面。 以前 chrome 的工具能看见 websocket
|
3
owt5008137 2016-03-09 14:03:23 +08:00 via Android 1
@daiv 对的, websocket 也可以,我以前也看到过,没太注意忘记了。主要是 wensocket 的握手阶段也走的 http 协议
|
4
daiv OP @owt5008137 如果是 websocket 的话, chrome 是能抓到的。 根据你的了解, flash 实时更新数据 一般用哪些技术?
|
5
daiv OP |
6
daiv OP http://ooo.0o0.ooo/2016/03/09/56dfd1b41093a.jpg
|
7
tees 2016-03-09 15:35:34 +08:00 1
wireshark 抓 socket
|
8
owt5008137 2016-03-09 15:55:47 +08:00 via Android
@daiv 呦,这个也挺不错的。你这是要逆向它的协议吗?如果他有加密的话会很难搞。
我对 python 不熟呦,应该也会有类似 pcap 的 wraper 库吧,刚搜了下有 pypcap ,不知道是不是主流的抓包库。 实时更新数据和语言没什么关系哦。一般情况下就是两种,第一种 tcp 是双工的通道,可以直接推送。第二种就是心跳包,如果有数据的话心跳包的回包带回。 以前 webqq 就是第二种心跳包的形式,所以你会一直在抓包工具里看到心跳交互。你这个看起来也像心跳包,每次收到回包后 3 秒后发下一次心跳 |
9
daiv OP |
10
daiv OP @owt5008137 对了,科来其中一款 free ,非常非常直观。 tcp 的握手这些都有显示。有需要你可以看看。 还以为这些可以简单的 模拟 post get 这样来搞定。
|
11
owt5008137 2016-03-09 16:24:28 +08:00 via Android
@daiv ok 。先 mark 一下,碰到需要的话我去瞧瞧看
|
12
fishioon 2016-03-09 16:33:51 +08:00 2
|
15
pynix 2016-03-09 20:53:39 +08:00
如果是私有协议的话还是挺坑的
|
18
Kilovolt 2016-09-22 00:59:25 +08:00
先发编译看 swf 是如何发包的 如果是 http 就 fd 抓包 socket 的就 wirshark 抓包 然后问题来了 wirshark 要怎么过滤找到 flash 发送的数据包呢? 我现在也遇到同样的问题。。。。
|