Kỹ thuật Session Hijacking: Brute Forcing • Các kỹ thuật có thể dùng: – Sử dụng HTTP referrer header – Sniffing Network traffic – Sử dụng Cross-Site Scripting – Cài trojan trên máy của
Trang 1KỸ THUẬT TẤN CÔNG VÀ PHÒNG THỦ TRÊN KHÔNG GIAN MẠNG
Trang 2NỘI DUNG
• Module 01: Tổng quan An ninh mạng
• Module 02: Kỹ thuật tấn công
• Module 03: Kỹ thuật mã hóa
• Module 04: Bảo mật hệ điều hành
• Module 05: Bảo mật ứng dụng
• Module 06: Virus và mã độc
• Module 07: Các công cụ phân tích an ninh mạng
• Module 08: Chính sách bảo mật và phục hồi thảm họa
dữ liệu
• Ôn tập
Module 02: Kỹ thuật tấn công
Trang 3Module 02: KỸ THUẬT TẤN CÔNG
• Lesson 01: Footprinting và Reconnaissance
• Lesson 02: Google Hacking
• Lesson 03: Scanning Networks
• Lesson 04: Enumeration
• Lesson 05: System Hacking
• Lesson 06: Sniffer hệ thống mạng
• Lesson 07: Social Engineering
• Lesson 08: Denial of Service
• Lesson 09: Session Hijacking
• Lesson 10: SQL Injection
• Lesson 11: Hacking Wireless Networks
• Lesson 12: Buffer Overflow
Trang 4Mục tiêu bài học
• Giải thích được Session Hijacking là gì ?
• Trình bày được các kỹ thuật Session Hijacking
• So sánh Session Hijacking và Spoofing
• Tiền trình thực hiện Session Hijacking
• Các loại Session Hijacking
• Session Hijacking và mô hình OSI
Trang 5Nội dung
• Tổng quan về Session Hijacking
• Application Level Session Hijacking
• Network Level Session Hijacking
• Session Hijacking Tools
• Cách phòng chồng Session Hijacking
Trang 6Tổng quan về Session Hijacking
Trang 7Session Hijacking là gì ?
• Session Hijacking
– là cách tấn công vào phiên làm việc hợp lệ trên máy tính
– Từ đó attacker chiếm được phiên làm việc giữa hai máy tính
– Attacker “trộm” Session ID hợp lệ và chiếm quyền truy cập vào
hệ thống và “ăn trộm” dữ liệu trên hệ thống
Trang 8Sự nguy hiểm của Hijacking
• Hầu hết có thể khai thác lỗi này nếu không sử dụng cơ chế mã hóa
• Attacker có thể trộm thông tin định danh và các dữ liệu của người dùng
• Hầu hết các máy tính sử dụng TCP/IP có nguy cơ bị khai thác lỗi này
• Có thể chống lại nguy cơ này bằng cách sử dụng giao thức bảo mật hơn
Trang 9Tại sao có thể khai thác lỗi Session
Hijacking
Thuật toán phát sinh Session ID: Yếu
Không cấu hình Account
Lockout cho Session ID
không hợp lệ
Không xác định thời gian hết hạn session
Truyền thông dạng
clear text
Không kiểm soát
được nguy cơ bảo
mật
Kích thước Session ID
nhỏ
Trang 10Các kỹ thuật Session Hijacking Chính
Trang 11Kỹ thuật Session Hijacking: Brute
Forcing
• Các kỹ thuật có thể dùng:
– Sử dụng HTTP referrer header – Sniffing Network traffic
– Sử dụng Cross-Site Scripting – Cài trojan trên máy của nạn nhân
Attacker thử đoán Session ID cho đến khi thành công
1 Sử dụng “referrer attack” Attacker dụ
dỗ user click vào link trỏ tới http://mywebsite.com
2 Người dùng click vào link trên web browser http://mywebsite.com
Và thông tin referrer:
mywebmail.com/viewmsg.asp?msgid= 0902883&SID=23xkjauja
3 Attacker lấy được SID của user gửi
do Browser gửi trong referrer URL
Trang 12So sánh Spoofing Attack và Hijacking
Attack
Trang 13Tiến trình thực hiện Session Hijacking
Trang 14Phân tích gói tin trong Local Session
Hjacking
Trang 15Các loại Session Hijacking
Trang 16Network Level Hijacking
Session Hijacking trong mô hình OSI
Session Hijacking có thể thực hiện ở 2 cấp độ trong mô hình OSI:
Network và Application
Network level có thể định
nghĩa là kỹ thuật chặn các gói
tin của các phiên TCP hoặc
UDP trong quá trình truyền
thông giữa client và server
Application Level Hijacking
Application level là kỹ thuật dành quyền truy cập của các session web bằng cách thu thập Session ID web của người dùng
Trang 17Application Level Session
Hijacking
Trang 18Application Level Session Hijacking
• Các kỹ thuật ở mức Application mà hacker có thể sử
dụng:
– Session Sniffing – Man-in-the-browser Attack – Predictable Session token (Đoán session ID) – Client-side Attacks
Trang 19Session Sniffing
1.Attacker bắt các gói tin và “chụp” lại Session ID hợp lệ của user
2 Attacker sử dụng Session ID hợp lệ để truy cập vào hệ thống
Trang 20Man-in-the-browser Attack
• Attacker đã cài đặt được Trojan trên hệ thống của nạn
nhân
• Attacker thường tập trung vào thu thập thông tin liên
quan đến tài khoản ngân hàng…
Đây là kỹ thuật sử dụng Trojan để chặn các lệnh gọi hàm giữa browser với hệ thống hoặc các thư viện mà browser sử dụng để thu thập thông tin
của user và gửi về cho attacker
Trang 21Predictable Session token
Hầu hết các webserver sử dụng một giải thuật phát sinh Session ID theo
một khuôn mẫu nhất định
Trang 22Chương trình chứa
mã độc chạy trên máy nạn nhân để thu thập thông tin
Trang 23Man-in-the-middle attack
Attacker sử dụng kỹ thuật Man-in-the-middle để xâm nhập vào một kết nối đang hoạt động giữa trong truyền thông giữa máy tính nạn nhân và
server
Trang 24Session Fixation Attack
• Attacker khai thác lỗ hổng của server cho phép user sử dụng fix SID
– SID có thể chứa trong URL, hidden form hoặc trong cookie
Trang 25Network Level Session Hijacking
Trang 26Network Level Session Hijacking
• Các kỹ thuật tấn công Network Level Session Hijacking
– Blind Hijacking – UDP Hijacking – Man in the middle: packet sniffing – TCP/IP Hijacking
– RST Hijacking – IP Spoofing: Source Routed Packets
Attacker sử dụng network level hijacking để thao tác trên luồng dữ liệu của các giao thức được hỗ trợ bởi server nhằm thu thập thông tin quan
trọng để có thể tấn công ở mức application
Trang 273-way Handshake
• Attacker có thể lợi dung số sequence để thực hiện
Session Hijacking ở mức Network
• Attacker có thể đoán số sequence tiếp theo, số ACK và giã mạo địa chỉ của Bob để bắt đầu truyền thông với server
Trang 28TCP/IP Hijacking
• TCP/IP Hijacking là kỹ thuật giã mạo gói tin để chiếm
quyền của một kết nối giữa máy tính của nạn nhân và máy mục tiêu tấn công
• Kết nối của nạn nhân sẽ bị treo và attacker có thể truyền thông với thông tin giã mạo của máy nạn nhân
Trang 29IP Spoofing: Source Routed Packets
• Source Routed Packets là kỹ thuật sử dụng để dành
quyền truy cập trái phép tới máy tính nhờ vào địa chỉ IP hợp lệ (được tin cậy)
• Địa chỉ IP giã mạo được chấp nhận khi gửi các gói tin tới server quản lý session của máy client
• Khi session được thiết lập, attacker “tiêm” các gói tin giã mạo trước khi client kịp phản hồi
• Gói tin của client bị server không chấp nhận vì sai
sequence number
• Các gói tin của attacker sử dụng source routed để định tuyến đến máy tính của attacker
Trang 30RST Hijacking
Trang 31Blind Hijacking
• Attacker có thể gửi các dữ liệu độc hại hoặc câu lệnh trên kệnh truyền của TCP session nếu như source-
routing không thể thực hiện
• Attacker có thể gửi dữ liệu nhưng không nhận được gói tin trả lời
Trang 32Man-in-the-middle: Packet Sniffer
• Có 2 kỹ thuật có thể được sử dụng trong kỹ thuật này
– Giã mạo ICMP
• Attacker gửi thông báo lỗi qua ICMP và lừa máy client và server gửi gói tin đi qua máy attacker
Trang 34Session Hijacking Tools
Trang 35Session Hijacking Tools: Paros
Man-in-the-middle proxy tool cho phép chặn, thay đổi và debug HTTP và
HTTPS data
Trang 36Session Hijacking Tools: Burp Suite
Man-in-the-middle proxy tool cho phép chặn, thay đổi và debug HTTP và
HTTPS data
Trang 37Session Hijacking Tools: Tham khảo
Trang 38Cách phòng chồng Session
Hijacking
Trang 39Cách phòng chồng Session Hijacking
• Sử dụng SSL để tạo kệnh truyền thông an toàn
• Sử dụng cookies authentication trên kênh truyền HTTPS
• Triển khai chứng năng logout cho user khi kết thúc phiên làm việc
• Phát sinh Session ID sau khi đăng nhập thành công
• Sử dụng chuỗi ký tự và số ngẫu nhiên lớn làm session key
• Mã hóa dữ liệu giữa user và web server
Trang 41Q & A