本章導言#

「日光之下並無新事」這句老話用在協定結構上格外貼切。不論二進位或文字協定,它們的組成方式都遵循少數幾種共通的模式與結構;一旦理解,就能套用到任何新遇上的協定。本章逐一說明這些常見結構,並確立本書後續用來描述它們的表示法。讀完之後,你應該能在任何未知協定中快速指認出這些型別。

理解協定的組成方式之後,你也會開始看見可被利用的行為模式——也就是攻擊協定本身的切入點。找出協定弱點的細節留到第 10 章,本章先專注在「結構」。

本章的價值在於「辨識」而非「記憶」。真正該內化的是:看到一段未知位元組時,能問出正確的問題——這是數值嗎?是大端序還是小端序?長度是誰決定的?這是不是 TLV?