A. 網路中的ACK; SYN; FIN都是什麼
這是網路安全中幾個重要的名詞,現總結如下
ACK是一種確認應答,在數據通信傳輸中,接收站發給發送站的一種傳輸控制字元。它表示確認發來的數據已經接受無誤。
SYN攻擊屬於DOS攻擊的一種,它利用TCP協議缺陷,通過發送大量的半連接請求,耗費CPU和內存資源。是最常見又最容易被利用的一種攻擊手法。
FIN是用來掃描保留的埠,發送一個FIN包(或者是任何沒有ACK或SYN標記的包)到目標的一個開放的埠,然後等待回應。許多系統會返回一個復位標記。
B. tcp協議中syn ack fin各有什麼作用
TCP的三次握手是怎麼進行的了:發送端發送一個SYN=1,ACK=0標志的數據包給接收端,請求進行連接,這是第一次握手;接收端收到請求並且允許連接的話,就會發送一個SYN=1,ACK=1標志的數據包給發送端,告訴它,可以通訊了,並且讓發送端發送一個確認數據包,這是第二次握手;最後,發送端發送一個SYN=0,ACK=1的數據包給接收端,告訴它連接已被確認,這就是第三次握手。之後,一個TCP連接建立,開始通訊。*SYN:同步標志 同步序列編號(Synchronize Sequence Numbers)欄有效。該標志僅在三次握手建立TCP連接時有效。它提示TCP連接的服務端檢查序列編號,該序列編號為TCP連接初始端(一般是客戶端)的初始序列編號。在這里,可以把TCP序列編號看作是一個范圍從0到4,294,967,295的32位計數器。通過TCP連接交換的數據中每一個位元組都經過序列編號。在TCP報頭中的序列編號欄包括了TCP分段中第一個位元組的序列編號。*ACK:確認標志 確認編號(Acknowledgement Number)欄有效。大多數情況下該標志位是置位的。TCP報頭內的確認編號欄內包含的確認編號(w+1,Figure-1)為下一個預期的序列編號,同時提示遠端系統已經成功接收所有數據。*RST:復位標志 復位標志有效。用於復位相應的TCP連接。*URG:緊急標志 緊急(The urgent pointer) 標志有效。緊急標志置位,*PSH:推標志 該標志置位時,接收端不將該數據進行隊列處理,而是盡可能快將數據轉由應用處理。在處理 telnet 或 rlogin 等交互模式的連接時,該標志總是置位的。*FIN:結束標志 帶有該標志置位的數據包用來結束一個TCP回話,但對應埠仍處於開放狀態,准備接收後續數據三次握手Three-way Handshake 一個虛擬連接的建立是通過三次握手來實現的 1. (B) --> [SYN] --> (A) 假如伺服器A和客戶機B通訊. 當A要和B通信時,B首先向A發一個SYN (Synchronize) 標記的包,告訴A請求建立連接. 注意: 一個 SYN包就是僅SYN標記設為1的TCP包(參見TCP包頭Resources). 認識到這點很重要,只有當A受到B發來的SYN包,才可建立連接,除此之外別無他法。因此,如果你的防火牆丟棄所有的發往外網介面的SYN包,那麼你將不能讓外部任何主機主動建立連接。 2. (B) <-- [SYN/ACK] <--(A) 接著,A收到後會發一個對SYN包的確認包(SYN/ACK)回去,表示對第一個SYN包的確認,並繼續握手操作. 注意: SYN/ACK包是僅SYN 和 ACK 標記為1的包. 3. (B) --> [ACK] --> (A) B收到SYN/ACK 包,B發一個確認包(ACK),通知A連接已建立。至此,三次握手完成,一個TCP連接完成 Note: ACK包就是僅ACK 標記設為1的TCP包. 需要注意的是當三此握手完成、連接建立以後,TCP連接的每個包都會設置ACK位 這就是為何連接跟蹤很重要的原因了. 沒有連接跟蹤,防火牆將無法判斷收到的ACK包是否屬於一個已經建立的連接.一般的包過濾(Ipchains)收到ACK包時,會讓它通過(這絕對不是個好主意). 而當狀態型防火牆收到此種包時,它會先在連接表中查找是否屬於哪個已建連接,否則丟棄該包 四次握手Four-way Handshake 四次握手用來關閉已建立的TCP連接 1. (B) --> ACK/FIN --> (A) 2. (B) <-- ACK <-- (A) 3. (B) <-- ACK/FIN <-- (A) 4. (B) --> ACK --> (A) 注意: 由於TCP連接是雙向連接, 因此關閉連接需要在兩個方向上做。ACK/FIN 包(ACK 和FIN 標記設為1)通常被認為是FIN(終結)包.然而, 由於連接還沒有關閉, FIN包總是打上ACK標記. 沒有ACK標記而僅有FIN標記的包不是合法的包,並且通常被認為是惡意的C. TCP報文的FIN是finish還是final
tcp send finish,告知對端,本端數據發送完畢。