2012-09-13 50 views

回答

0

所以你想重建什麼.proto消息通過應用層協議傳遞?

這並不像聽起來那麼容易。首先,.proto消息不能通過線路原始發送,因爲接收者需要知道它們有多長。它們需要以某種方式進行封裝,可能是在HTTP POST中,或者預先加上了4字節的原始大小。我不知道你的應用會是什麼,但你需要處理。

其次,你不能從消息中重建完整的.proto。您只能獲得標籤號碼和類型,而不是名稱。此外,你將失去有關子消息的信息 - 子消息和純字符串的編碼是相同的(你可以通過目測確定哪些是通過它們進行編碼的,但我認爲你不能自動完成)。你也永遠不會知道從未發送過的可選項目。但是你可以在沒有原型的情況下解析緩衝區,並獲得一些合理的數據(整數,重複字符串等)。

第三,您需要從pcap日誌中重建應用程序字節流。我不知道該怎麼做,但我懷疑有些工具會爲你做。