1. TCP RST là gì?
Trong giao thức TCP, cờ RST (Reset) được sử dụng để kết thúc ngay lập tức một kết nối TCP khi có lỗi hoặc khi một bên không còn chấp nhận phiên kết nối đó.
Một gói TCP có cờ RST thường được gửi khi:
Khác với quá trình đóng kết nối TCP bình thường:
FIN → ACK → FIN → ACK
RST không cần handshake, kết nối bị cắt ngay lập tức.
2. TCP RST Hijack là gì?
TCP RST Hijacking là kỹ thuật tấn công trong đó attacker:
Khi nhận được packet RST hợp lệ, hệ điều hành sẽ đóng kết nối TCP ngay lập tức.
Mục tiêu:
3. Điều kiện để thực hiện TCP RST Hijack
Attacker cần biết một số thông tin của session:
Thông tin này thường thu được bằng:
4. Cách hoạt động của TCP RST Hijack
Giả sử có kết nối:
Client -------- TCP session -------- Server
Attacker gửi gói:
Fake packet
SRC = Server IP
DST = Client IP
Flag = RST
SEQ = đúng sequence number
Khi client nhận được:
TCP RST
→ hệ điều hành tin rằng server reset session
→ đóng kết nối ngay lập tức
Session bị gián đoạn.
Tổng kết
TCP RST Hijacking là một kỹ thuật tấn công khá đơn giản nhưng hiệu quả để:
Tuy nhiên, với các cơ chế bảo mật hiện đại như randomized sequence number và authentication, việc thực hiện tấn công này ngày càng khó khăn hơn.
Trong giao thức TCP, cờ RST (Reset) được sử dụng để kết thúc ngay lập tức một kết nối TCP khi có lỗi hoặc khi một bên không còn chấp nhận phiên kết nối đó.
Một gói TCP có cờ RST thường được gửi khi:
- Kết nối đến một port không mở
- Một host nhận được packet không thuộc session hợp lệ
- Một bên muốn reset session ngay lập tức
Khác với quá trình đóng kết nối TCP bình thường:
FIN → ACK → FIN → ACK
RST không cần handshake, kết nối bị cắt ngay lập tức.
2. TCP RST Hijack là gì?
TCP RST Hijacking là kỹ thuật tấn công trong đó attacker:
- Quan sát một kết nối TCP đang hoạt động
- Giả mạo một gói TCP có cờ RST
- Gửi gói này đến một trong hai phía của session
Khi nhận được packet RST hợp lệ, hệ điều hành sẽ đóng kết nối TCP ngay lập tức.
Mục tiêu:
- Ngắt kết nối người dùng
- Tấn công DoS nhẹ
- Làm gián đoạn session quan trọng
3. Điều kiện để thực hiện TCP RST Hijack
Attacker cần biết một số thông tin của session:
| Source IP | giả mạo host gửi |
| Destination IP | host nhận |
| Source port | port của client |
| Destination port | port của server |
| Sequence number | để packet được chấp nhận |
- Packet sniffing
- Man-in-the-Middle
- Network monitoring
4. Cách hoạt động của TCP RST Hijack
Giả sử có kết nối:
Client -------- TCP session -------- Server
Attacker gửi gói:
Fake packet
SRC = Server IP
DST = Client IP
Flag = RST
SEQ = đúng sequence number
Khi client nhận được:
TCP RST
→ hệ điều hành tin rằng server reset session
→ đóng kết nối ngay lập tức
Session bị gián đoạn.
Tổng kết
TCP RST Hijacking là một kỹ thuật tấn công khá đơn giản nhưng hiệu quả để:
- Ngắt kết nối TCP
- Làm gián đoạn dịch vụ
- Thực hiện DoS nhẹ
Tuy nhiên, với các cơ chế bảo mật hiện đại như randomized sequence number và authentication, việc thực hiện tấn công này ngày càng khó khăn hơn.