Session Hijacking Module 11 1778
-
Upload
phong-pham -
Category
Documents
-
view
30 -
download
1
description
Transcript of Session Hijacking Module 11 1778
GVHD: Lê Tự Thanh
SVTH: Trần Ngọc Khải
BỘ THÔNG TIN VÀ TRUYỀN THÔNG
Trường Cao Đẳng Công Nghệ Thông Tin Hữu Nghị Việt Hàn
CEH
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 2
TIN TỨC AN NINH
eSecurity Planet Firesheep sửa chữa dễ dàng như HTTPS
- Tháng 11 năm 2010 được nhớ đến như là tháng Firesheep
phát nổ trên khán đài máy tính, sự vui sướng của sinh viên đại
học ở khắp mọi nơi. Việc thêm vào của trình duyệt firefox làm
nó dễ dàng chiếm được quyền truy cập của bất kì một tài khoản
facebook nào trong khi họ kết nối đến internet bằng cách sử
dụng mở, kết nối Wi-Fi là không an toàn.
- Tất nhiên, một phiên tấn công lỗ hổng thì firesheep đã biết rõ
cách tấn công và phạm vi bảo mật cho tất cả thời gian, những gì
giúp cho firesheep có cuộc tấn công ngoạn mục dễ dàng. Và
thật không công bằng khi làm nổi bật việc facebook rất dễ bị
tấn công nếu chỉ vì các trang cộng đồng nổi tiếng khác, như:
Flickr, Foursquare cũng như Wordpress thì quá nhạy cảm với
firesheep. C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 3
Session Hijacking là gì?
Các kỹ thuật chiếm quyền điều khiển
phiên chính
Brute Forcing
Spoofing vs. Hijacking
Quá trình chiếm quyền điều khiển phiên
Các loại chiếm quyền điều khiển phiên
Session Hijacking trong mô hình OSI
Session Hijacking mức ứng dụng
Session Hijacking mức mạng
Tấn công TCP/IP
Công cụ chiếm quyền điều khiển phiên
Biện pháp đối phó
Kiến trúc IPSec
Thâm nhập thử nghiệm
NỘI DUNG CHÍNH
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 4
LƯU ĐỒ MODULE
Khái niệm
Session
Hijacking
Session
Hijacking
mức ứng
dụng
Session
Hijacking
mức mạng
Công cụ
chiếm quyền
điều khiển
phiên
Biện pháp
đối phó
Thâm
nhập thử
nghiệm
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 5
Session Hijacking là gì?
Session Hijacking đề cập đến
việc khai thác một phiên máy
tính hợp lệ nơi mà kẻ tấn công
chiếm một phiên làm việc giữa
2 máy tính
Kẻ tấn công đánh cắp session
ID hợp lệ đang được sử dụng
để vào hệ thống và thăm dò
dữ liệu
Trong Session Hijacking
TCP, kẻ tấn công chiếm
1 phiên TCP giữa 2 máy
Khi hầu hết các xác thực chỉ
xảy ra lúc bắt đầu của phiên
TCP, điều này cho phép kẻ tấn
công truy cập vào máy
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 6
Mối nguy hiểm từ Hijacking
Hầu hết các
biện pháp đối
phó không làm
việc trừ khi bạn
dùng mã hóa
Chiếm
quyền điều
khiển là dễ
dàng khởi
động
Mối đe dọa
đánh cắp nhận
dạng, mất thông
tin, gian lận, …
Hầu hết các
máy tính sử
dụng giao thức
TCP/IP dễ
dàng bị tấn
công
Bạn có thể bảo
vệ và chống lại
nó chỉ 1 phần,
trừ khi bạn
chuyển qua
giao thức bảo
mật khác
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 7
Tại sao Session Hijacking lại thành công?
Không khóa tài khoản
Sesion Ids không hợp
lệ
Session ID yếu hệ
thuật toán
Phiên không giới hạn
thời gian kết thúc
Truyền dữ liệu văn bản
tường minh Session Ids nhỏ
Xử lí không an toàn
7
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 8
Các kỹ thuật Session Hijacking chính
Brute Forcing Kẻ tấn công cố thử các ID khác nhau cho đến
khi thành công
Kẻ tấn công dùng các kỹ thuật khác nhau để lấy
cắp các Session ID
Stealing
Sử dụng các ID không được tạo ra ngẫu nhiên,
kẻ tấn công cố gắng tính toán các Session ID
Calculating
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 9
Brute forcing
Dùng tấn công brute force, kẻ tấn công cố gắng đoán
session ID đến khi hắn đoán được một session ID
Ví dụ, trên các
địa chỉ, kẻ tấn
công cố gắng
đoán 1 session
ID
Các Session ID
có thể bị lấy cắp
bằng cách dùng
những kỹ thuật
khác nhau như:
1. Sử dụng giao thức HTTP giới
thiệu tiêu đề
2. Kiểm tra lưu lượng mạng
3. Sử dụng các cuộc tấn công
Cross-Site Scripting
4. Gửi Trojans trong các nạn nhân
1. Dùng “referrer attack”,
kẻ tấn công cố thu hút
người dùng nhấp vào 1
đường dẫn đến trang web
khác(1 đường dẫn
mysite,www.mysite.com)
2. Ví dụ, GET /index.html
HTTP/1.0 Host:
www.mysite.com
Referrer:
www.mywebmail.com/vi
ewmsg.asp?msgid=6896
45&SID=2556x54VA75
3. Kẻ tấn công đã lấy được
Session ID của người
dùng gửi khi trình duyệt
gửi đường dẫn giới thiệu
chứa 1 session ID của
người dùng đến trang
web của kẻ tấn công
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 1
0
Tấn công Brute Forcing
Sử dụng các cuộc tấn công Brute Force, kẻ tấn công cố đoán session
ID đến khi hắn tìm thấy session ID chính xác
Có thể dãy những giá trị cho session ID phải bị giới hạn để cuộc tấn
công bruteforce được thực hiện thành công
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 1
1
Tấn công HTTP tham chiếu
Tấn công tham chiếu, kẻ tấn công cố gắng thu
hút người dùng click vào một liên kết đến một
trang web khác.
Ví dụ, GET /index.html HTTP/1.0 Host:
www.mysite.com Referrer:
www.mywebmail.com/viewmsg.asp?msgid=68
9645&SID=2556x54VA75
Trình duyệt gửi URL tham chiếu chứa các
session ID cho kẻ tấn công, và kẻ tấn công
sử dụng session ID của người dùng
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 1
2
Sự khác nhau giữa Spoofing và Hijacking
Tấn công Spoofing Hijacking
Kẻ tấn công giả mạo làm người
dùng khác hoặc máy (nạn nhân) để
truy cập
Kẻ tấn công không chiếm 1
phiên hoạt động hiện có. Thay vào
đó hắn bắt đầu 1 phiên làm việc
mới bằng cách sử dụng thông tin
lấy cắp của nạn nhân
Session hijacking là quá trình
chiếm 1 phiên hoạt động hiện tại
Kẻ tấn công dựa vào người sử
dụng hợp pháp để được kết nối và
xác thực
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 1
3
Quá trình chiếm quyền điều khiển phiên
Đánh hơi
Theo dõi
Đồng bộ hóa
Dự đoán Session ID
Lệnh xâm nhập
Đặt mình vào giữa nạn nhân và mục tiêu (bạn phải có khả năng đánh hơi mạng)
Theo dõi dòng dữ liệu và dự đoán sequence number
Phá vỡ kết nối của máy nạn nhân
Chiếm phiên
Bắt đầu truyền các gói dữ liệu đến máy chủ
mục tiêu
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 1
4
Phân tích gói của một tấn công chiếm phiên cục bộ
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 1
5
Các loại Session Hijacking
Trong 1 tấn công
active, kẻ tấn công
tìm phiên đang hoạt
động và chiếm nó
Với tấn công passive, kẻ
tấn công chiếm quyền
điều khiển 1 phiên, nhưng
ngừng lại, xem và ghi lại
tất cả các lưu lượng truy
cập được gửi ra
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 1
6
Session Hijacking trong mô hình OSI
Hijacking mức mạng Hijacking mức ứng dụng
Mức mạng có thể định nghĩa
là đánh chặn các gói tin trong
quá trình truyền tải giữa máy
chủ và máy khách trên 1
phiên TCP và UDP
Mức ứng dụng là kiểm soát trên
phiên người dùng của HTTP
bằng cách lấy session ID
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 1
7
LƯU ĐỒ MODULE
Khái niệm
Session
Hijacking
Session
Hijacking
mức ứng
dụng
Session
Hijacking
mức mạng
Công cụ
chiếm quyền
điều khiển
phiên
Biện pháp
đối phó
Thâm
nhập thử
nghiệm
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 1
8
Session Hijacking mức ứng dụng
Trên 1 tấn công Session Hijacking, 1 mã thông báo phiên thì bị đánh cắp hoặc mã
thông báo phiên hợp lệ thì được dự đoán sẽ bị truy cập trái phép vào máy chủ web
Session Sniffing Predictable
session token
Man-in-the-
middle attack
Man-in-the-
browser attack Client-side
attacks
Một mã thông
báo phiên có thể
bị xâm hại bằng
nhiều cách khác
nhau
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 1
9
Thăm dò Phiên
Kẻ tấn công dùng thăm dò để chiếm 1 mã thông báo hợp lệ gọi là
“Session ID”
Kẻ tấn công lúc này dùng mã thông báo phiên hợp lệ để truy cập trái
phép vào máy chủ web
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 2
0
Dự đoán Session Token
Nó là phương
pháp dùng cho dự
đoán 1 session ID
hoặc mạo danh
người dùng để sử
dụng trang web
Dự đoán 1
session ID cũng
được biết như là
Session
Hijacking
Bằng cách đoán
giá trị session
duy nhất hoặc
suy ra 1 session
ID hoàn thành
cuộc tấn công
Sử dụng kỹ thuật
session hijacking, kẻ
tấn công có khả
năng gửi các yêu cầu
đến trang web với
các đặc quyền của
thành viên bị xâm
phạm
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 2
1
Làm thế nào để dự đoán 1 Session Token?
Hầu hết các máy chủ server dùng thuật toán tùy chỉnh hoặc 1 mô hình được xác
định trước để tạo các session ID
Kẻ tấn công chiếm một số
các session ID và phân tích
mô hình
Vào 16:25:55 ngày 25 tháng
11 năm 2010, kẻ tấn công có
thể dự đoán thành công
được 1 session ID
Captures
Predicts
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 2
2
Tấn công Man-in-the-Middle
Kiểu tấn công man-in-the-middle là dùng để xâm nhập vào một kết nối
hiện tại giữa các hệ thống và chặn các tin nhắn được trao đổi
Kẻ tấn công dùng các kỹ thuật khác và
tách kết nối TCP thành 2 kết nối
1. Kết nối từ máy khách đến kẻ tấn công
2. Kết nối từ kẻ tấn công đến máy chủ
Sau khi đánh chặn thành công kết nối
TCP, kẻ tấn công có thể đọc, chỉnh sửa, và
chèn dữ liệu gian lận vào các thông tin
liên lạc bị chặn
Trong trường hợp của một giao dịch http,
kết nối TCP giữa client và máy chủ trở
thành mục tiêu
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 2
3
Kiểu tấn công Man-in-the-Browser
Tấn công Man-in-the-browser dùng Trojan Horse để
chặn các cuộc gọi của trình duyệt và các cơ chế bảo
mật hoặc thư viện
Nó làm việc với Trojan Horse đã được cài đặt sẵn và
hoạt động giữa trình duyệt và các cơ chế bảo mật của
nó
Mục tiêu chính của nó là gây ra sự lừa gạt tài chính
bằng các thao tác giao dịch của hệ thống ngân hàng
Internet
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 2
4
Các bước thực hiện tấn công Man-in-the-Browser
Đầu tiên Trojan xâm nhập vào phần
mềm của máy tính (hệ điều hành
hoặc ứng dụng)
Trojan cài đặt mã độc hại (phần
mở rộng tập tin ) và lưu vào cấu
hình trình duyệt
Sau khi người dùng khởi động lại
trình duyệt, mã độc hại dưới hình
thức các tập tin mở rộng được tải
Các tập tin mở rộng đăng ký một xử lý
cho mỗi lần truy cập trang web
Khi trang web được tải, đuôi mở rộng
sử dụng các URL và phù hợp với một
danh sách các các trang web được
biết đến là mục tiêu tấn công
Người sử dụng đăng nhập bảo
mật vào trang web
Nó đăng ký 1 nút xử lý sự kiện khi
tải trang cụ thể là phát hiện một mô
hình cụ thể và so sánh nó với danh
sách mục tiêu của nó
Trình duyệt sẽ gửi các hình thức và
giá trị điều chỉnh đến máy chủ
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 2
5
Các bước thực hiện tấn công Man-in-the-Browser
Khi người dùng nhấp vào nút, mở rộng
sử dụng giao diện DOM và lấy được
tất cả các dữ liệu từ tất cả các trường
hình thức và thay đổi các giá trị
Máy chủ nhận được các giá trị thay
đổi nhưng không thể phân biệt giữa
bản gốc và các giá trị được sửa đổi
Sau khi máy chủ thực hiện xử
lí, 1 xác nhận được tạo ra
Bây giờ, trình duyệt nhận được
xác nhận thay đổi xử lí
Trình duyệt hiển thi xác nhận
với các chi tiết gốc Người sử dụng nghĩ rằng các xử lí
ban đầu đã được nhận bởi máy chủ
mà không có bất kỳ ngăn chặn nào
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 2
6
Kiểu tấn công Client-side
XSS Các đoạn mã
JavaScript độc hại Trojans
Các cuộc tấn công cross-
site scripting là một loại
của cuộc tấn công xen
vào, trong đó các tập
lệnh mã độc hại được xen
vào các trang web
Một kịch bản độc hại
có thể được nhúng
trong một trang web và
không tạo ra bất kỳ loại
cảnh báo nào khi trang
được xem trong mọi
trình duyệt
Trojan horse là một
chương trình trong đó các
mã độc hại được chứa bên
trong lập trình nhìn như vô
hại hoặc dữ liệu trong một
cách mà nó có thể có được
điều khiển và gây thiệt hại
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 2
7
Tập lệnh tấn công Cross-site
Kẻ tấn công có thể làm hại session
token bằng cách gửi mã độc hại hoặc
các chương trình cho các chương trình
client-site
Ví dụ ở đây cho thấy làm
thế nào kẻ tấn công đánh
cắp session token bằng
cách sử dụng tấn công
XSS
Nếu kẻ tấn công gửi một liên kết giả
mạo cho nạn nhân với JavaScript độc
hại, khi nạn nhân nhấp chuột vào liên
kết , JavaScript sẽ chạy và hoàn thành
các hướng dẫn được thực hiện bởi kẻ
tấn công
Ví dụ ở đây sử dụng một
cuộc tấn công XSS để hiển
thị các giá trị cookie của
phiên hiện tại
Sử dụng kỹ thuật tương tự, nó có thể tạo ra
một mã Javascript cụ thể sẽ gửi cookie đến kẻ
tấn công <SCRIPT>alert (document.cookie) </
SCRIPT>
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 2
8
Phiên định hình
Session Fixation là cuộc tấn công chấp nhận cho kẻ tấn công
chiếm 1 phiên người dùng hợp lệ
Các cuộc tấn công cố gắng thu hút người sử dụng để xác thực mình
với một session ID được biết đến và sau đó chiếm phiên người dùng
hợp lệ bởi các kiến thức về các session ID được sử dụng
Kẻ tấn công được cung cấp một session ID ứng dụng web hợp pháp
và cố gắng để thu hút nạn nhân dùng trình duyệt để sử dụng nó
Một vài kỹ thuật để tấn công
thực thi Session Fixation là
Session token trong đối số URL
Session token trong trường biểu mẫu ẩn
Session ID trong 1 cookie
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 2
9
Tấn công phiên định hình
Kẻ tấn công khai thác lỗ hổng của một máy chủ, nơi cho phép người dùng sử dụng SID cố định
Kẻ tấn công cung cấp một SID hợp lệ cho nạn nhân và thu hút anh ta để xác thực cho chính mình
bằng cách sử dụng SID
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 3
0
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 30
LƯU ĐỒ MODULE
Khái niệm
Session
Hijacking
Session
Hijacking
mức ứng
dụng
Session
Hijacking
mức mạng
Công cụ
chiếm quyền
điều khiển
phiên
Biện pháp
đối phó
Thâm
nhập thử
nghiệm
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 3
1
Session Hijacking mức mạng
Tấn công mức mạng được thực hiện trên dòng chảy dữ liệu của giao thức chia sẻ bởi tất
cả các ứng dụng web
Bằng cách tấn công các phiên mức mạng, kẻ tấn công tập hợp một số thông tin quan
trọng được sử dụng để tấn công các phiên mức ứng dụng
Tấn công Blind Tấn công TCP/IP
Tấn công UDP Tấn công RST
Man in the Middle:
gói thăm dò
Giả mạo IP: Định
tuyến gói tin nguồn
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 3
2
Quá trình bắt tay 3 bước
Nếu kẻ tấn công có thể dự đoán sequence tiếp theo và số ACK mà Bob sẽ gửi,
hắn sẽ giả mạo địa chỉ của Bob và bắt đầu một giao tiếp với máy chủ
1. Bob khởi tạo một kết nối với máy chủ và gửi một gói tin đến
máy chủ với các thiết lập bit SYN
2. Máy chủ nhận được gói tin này và gửi một gói tin với bit SYN /
ACK và ISN (Sequece Number ban đầu) cho máy chủ
3. Bob thiết đặt bit ACK acknowledging nhận các gói dữ liệu và
tăng số sequece lên 1
4. Bây giờ, hai máy thành công việc thiết lập một phiên
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 3
3
Các chuỗi số
Các chuỗi số là rất quan trọng trong việc cung cấp một
giao tiếp đáng tin cậy và cũng rất quan trọng cho việc
chiếm một phiên
Chúng là một bộ đếm 32 bit. Do đó, có thể có hơn 4 tỷ
sự kết hợp
Chúng được sử dụng thông tin cho máy nhận trong thứ tự
các gói tin đi khi máy nhận được
Vì vậy, một kẻ tấn công phải đoán thành công thứ tự
chuỗi số để chiếm 1 session
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 3
4
Dự đoán chuỗi số
Sau khi khách hàng gửi gói tin
yêu cầu kết nối (SYN) đến máy
chủ, máy chủ đáp ứng (SYN-
ACK) với một chuỗi số được lựa
chọn, nó phải được công nhận bởi
máy khách
Chuỗi số này là có thể đoán
trước; tấn công kết nối đến máy
chủ đầu tiên với địa chỉ IP riêng
của mình, ghi lại chuỗi số lựa
chọn, và sau đó sẽ mở ra một
kết nối thứ hai từ một địa chỉ IP
giả mạo
Tấn công không nhìn thấy
SYN-ACK (hoặc bất kỳ gói
nào khác) từ máy chủ, nhưng
có thể đoán được đáp ứng
chính xác
Nếu địa chỉ IP nguồn sử dụng để
xác thực, sau đó kẻ tấn công có
thể sử dụng giao tiếp một chiều
để xâm nhập vào máy chủ
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 3
5
Tấn công TCP/IP
Tấn công TCP / IP là một kỹ thuật tấn công sử dụng các gói tin giả mạo để tiếp nhận một kết nối
giữa một nạn nhân và một máy mục tiêu
Kết nối của nạn nhân bị treo và kẻ tấn công sau đó có thể giao tiếp với máy chủ như kẻ tấn công là
nạn nhân
Để khởi động tấn công chiếm TCP / IP, kẻ tấn công phải trên cùng 1 lớp mạng với nạn nhân
Mục tiêu và nạn nhân có thể ở bất cứ đâu
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 3
6
Tấn công TCP/IP
Kẻ tấn công thăm dò kết nối của nạn nhân và sử dụng IP của nạn nhân
để gửi một gói giả mạo với chuỗi số dự đoán
Host xử lí các gói tin giả mạo, tăng số thứ tự và gửi xác nhận đến địa
chỉ IP của nạn nhân
Máy tính nạn nhân là không biết về các gói tin giả mạo, do đó nó bỏ
qua gói ACK máy chủ và ngừng đếm chuỗi số quay lại
Vì vậy, máy chủ nhận được gói dữ liệu với số thứ tự không chính xác
Kẻ tấn công đánh dấu kết nối của nạn nhân với máy chủ vào trạng thái
desynchoronized
Kẻ tấn công theo dõi các chuỗi số và liên tục gửi các gói tin gải mạo
đến từ IP của nạn nhân
Kẻ tấn công tiếp tục giao tiếp với máy chủ trong khi kết nối của nạn
nhân bị treo
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 3
7
IP giả mạo: Định tuyến nguồn gói tin
Định tuyến nguồn gói tin là kỹ thuật được sử dụng để đạt được truy cập
trái phép đến máy tính với trợ giúp của địa chỉ IP máy chủ đáng tin cậy
Địa chỉ IP của máy chủ giả mạo các gói tin để các máy chủ quản lý một
phiên với máy khách, chấp nhận các gói tin
Khi phiên được thiết lập, kẻ tấn công truyền các gói tin giả mạo trước khi
khách hàng đáp ứng
Các gói tin ban đầu bị mất như là máy chủ nhận được gói tin với một
chuỗi số khác nhau
Các gói tin được định tuyến nguồn nơi các phần IP đích có thể được chỉ
định bởi kẻ tấn công
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 3
8
Tấn công RST
Tấn công RST liên quan
đến việc truyền 1 gói authetic-
looking reset (RST) bằng cách sử
dụng địa chỉ nguồn giả mạo và dự
đoán số lượng xác nhận
Nạn nhân tin rằng các nguồn
thực sự gửi các gói tin thiết
lập lại và thiết lập lại kết nối
Tấn công RST có thể được thực
hiện bằng cách sử dụng một gói
công cụ thủ công như gói Bulder
Colasoft và công cụ phân tich
TCP / IP như tcpdump
Bật cờ ACK trong
txpdump các gói tin
thăm dò
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 3
9
Tấn công Blind
Những kẻ tấn công có thể truyền các dữ liệu độc hại hoặc lệnh vào các thông tin
liên lạc bị chặn trong phiên TCP ngay cả khi các định tuyến nguồn bị vô hiệu hóa
Những kẻ tấn công có thể gửi dữ liệu hoặc ý kiến, nhưng không được truy cập để
xem phản ứng
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 4
0
Tấn công Man-in-the-Middle dùng gói thăm dò
Trong cuộc tấn công này, gói thăm dò được sử dụng như một giao diện giữa máy
khách và máy chủ
Các gói dữ liệu giữa máy khách và máy chủ được chuyển qua
máy chủ của kẻ tấn công bằng cách sử dụng hai kỹ thuật
Sử dụng giả mạo giao thức tạo thông điệp điều khiển
của Internet (ICMP) - Đó là một phần mở rộng của IP
để gửi các thông báo lỗi nơi mà kẻ tấn công có thể gửi
tin nhắn để đánh lừa các máy khách và máy chủ
Sử dụng giao thức phân giải địa chỉ (ARP) giả mạo-
ARP dùng để ánh xạ địa chỉ IP cục bộ để địa chỉ phần
cứng hoặc các địa chỉ MAC
ARP giả mạo liên quan đến đánh lừa các máy chủ lưu
trữ bằng cách phát sóng yêu cầu ARP và thay đổi
bảng ARP của nó bằng cách gửi giả mạo ARP trả lời
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 4
1
Tấn công UDP
1.Kẻ tấn công gửi một trả lời giả mạo máy chủ đến UDP của máy khách yêu cầu trước
khi máy chủ đáp ứng với nó
2.Kẻ tấn công sử dụng Man-in-the-Middle để đánh chặn phản ứng của máy chủ cho máy
khách và gửi trả lời giả mạo của chính nó
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 4
2
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 42 C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 42
LƯU ĐỒ MODULE
Khái niệm
Session
Hijacking
Session
Hijacking
mức ứng
dụng
Session
Hijacking
mức mạng
Công cụ
chiếm quyền
điều khiển
phiên
Biện pháp
đối phó
Thâm
nhập thử
nghiệm
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 4
3
Công cụ Session Hijacking: Paros
Paros là một man-in-the-
middle proxy và máy quét
lỗ hổng ứng dụng
Nó cho phép kẻ tấn công
đánh chặn, sửa đổi, và gỡ
lỗi dữ liệu HTTP và
HTTPS on-the-fly giữa
một máy chủ web và trình
duyệt của khách hàng
Nó cũng hỗ trợ giăng bẫy,
proxy-chaining, lọc, và
quét lỗ hổng ứng dụng
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 43
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 4
4
Công cụ Session Hijacking: Burp Suite
Burp Suite cho
phép kẻ tấn công
kiểm tra và sửa đổi
lưu lượng giữa
trình duyệt và ứng
dụng mục tiêu
Nó phân tích tất cả
các loại nội dung,
với tự động yêu
cầu và cú pháp
phản hồi
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 4
5
Công cụ Session Hijacking: Firesheep
Firesheep là một phần mở rộng cho trình duyệt web
firefox, cho phép kẻ tấn công lấy cắp một session ID
hợp lệ để vào được hệ thống và thăm dò dữ liệu
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 4
6
Công cụ Session Hijacking
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 4
7
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 47 C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 47 C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 47
LƯU ĐỒ MODULE
Khái niệm
Session
Hijacking
Session
Hijacking
mức ứng
dụng
Session
Hijacking
mức mạng
Công cụ
chiếm quyền
điều khiển
phiên
Biện pháp
đối phó
Thâm
nhập thử
nghiệm
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 4
8
Biện pháp đối phó
Sử dụng bộ xử lí an toàn (SSL) để tạo ra một kênh giao tiếp an
toàn
Cấp phép xác thực các tập tin cookie qua kết nối HTTPS
Thực hiện đăng xuất chức năng cho người dùng khi kết thúc
phiên
Tạo ra các session ID sau khi đăng nhập thành công
Sử dụng chuỗi hoặc số ngẫu nhiên dài như là một khóa phiên
Vượt qua các dữ liệu được mã hóa giữa người dùng và máy
chủ web
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 4
9
Bảo vệ đề phòng Session Hijacking
Sử dụng mã
hóa
Giảm thiểu truy
cập từ xa
Hướng dẫn cho
người dùng
Tạo các session
ID sau khi đăng
nhập
Giới hạn
kết nối
đến
Sử dụng 1
giao thức bảo
mật
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 5
0
Phương pháp để ngăn chặn Session Hijacking: Tiếp theo
là các nhà phát triển Web
Giảm thời gian tồn tại
của một phiên hoặc
một cookie
Tạo các khóa phiên với
chuỗi dài hoặc số ngẫu
nhiên để gây khó khăn cho
kẻ tấn công đoán một khóa
phiên hợp lệ
Hết hạn phiên ngay
sau khi người dùng
đăng nhập
Mã hóa dữ liệu và
khóa phiên chuyển
giao giữa người sử
dụng và máy chủ web
Ngăn chặn nghe lén
trong hệ thống
Tạo lại các session ID
sau khi đăng nhập thành
công để ngăn chặn cuộc
tấn công cố định phiên
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 5
1
Phương pháp để ngăn chặn Session Hijacking: Tiếp
theo là người dùng Web
Không bấm vào
các liên kết nhận
được thông qua
mail hoặc IM
Sử dụng tường
lửa để ngăn chặn
các nội dung độc
hại xâm nhập
vào mạng
Sử dụng tường lửa
và cài đặt trình
duyệt để hạn chế
các tập tin cookie
Hãy chắc chắn
rằng các trang
web được xác
nhận bởi nơi
đáng tin cậy
Đăng xuất từ trình duyệt
bằng cách bấm vào nút
đăng xuất thay vì đóng
trình duyệt
HTTPS tốt hơn, truyền tải
an toàn hơn HTTP khi
truyền dữ liệu nhạy cảm
và bảo mật
Hãy chắc chắn rằng bạn
xóa hết lịch sử, nội
dung ngoại tuyến và
cookie từ trình duyệt
của bạn sau mỗi lần
giao dịch bí mật và nhạy
cảm
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 5
2
Bảo vệ chống lại tấn công Session Hijacking
Sử dụng giao thức mã hóa có
sẵn tại bộ OpenSSH
Sử dụng xác thực mạnh
(như Kerberos) hoặc peer-
to-peer VPN
Sử dụng các sản phẩm IDS
hoặc ARPwatch giám sát
ngộ độc bộ nhớ cache ARP
Cấu hình các quy tắc nội bộ và
giả mạo bên ngoài thích hợp
trên các gateway
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 5
3
Khắc phục hậu quả Session Hijacking
Quốc phòng chiều sâu là một thành
phần quan trọng của kế hoạch an
ninh toàn diện
Quốc phòng chiều sâu cũng là một
thành phần quan trọng trong việc
bảo vệ mạng từ tấn công session
hijacking
Ý tưởng trung tâm phía sau khái niệm
này là nếu một trong những biện pháp
truy cập không thành công thì đã có
những cấp độ bảo vệ bổ sung để bảo
vệ mạng
Quốc phòng chiều sâu được định
nghĩa là việc thực hành sử dụng
nhiều hệ thống an ninh hoặc các
công nghệ để ngăn chặn sự xâm
nhập mạng
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 5
4
IPSec
IPSec là một tập hợp các giao thức được phát triển bởi IETF để hỗ trợ việc trao
đổi an toàn của các gói tin tại lớp IP
Nó được triển khai rộng rãi để thực hiện các mạng riêng ảo (VPNs)
Lợi ích
Xác thực cùng mức
mạng
Xác thực nguồn
gốc dữ liệu
Toàn vẹn dữ liệu
Cẩn mật dữ liệu
(mã hóa)
Bảo vệ phản hồi
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 5
5
Phương thức của IPSec
Chế độ truyền tải
Xác định hai máy tính
kết nối
Có một tùy chọn để mã
hóa dữ liệu chuyển giao
Tương thích với NAT
Chế độ đường hầm
Các gói dữ liệu đóng gói
được chuyển giao
Có một tùy chọn để mã
hóa dữ liệu chuyển giao
Không tương thích với
NAT
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 5
6
Kiến trúc IPSec
Kiến trúc IPSec
Giao thứ AH Giao thức ESP
Thuật toán xác thực Thuật toán mã hóa
DOI
Quản lí chính
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 5
7
IPSec xác thực và bảo mật
IPSec sử dụng hai dịch vụ
bảo mật khác nhau để xác
thực và bảo mật
Xác thực Header (AH)
Đóng gói bảo mật tải tin
(ESP)
1. Xác thực header (AH)
cung cấp dữ liệu xác
thực của người gửi
2. Đóng gói bảo mật tải
tin (ESP) cung cấp cả
dữ liệu xác thực và
mã hóa (bảo mật) của
người gửi
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 5
8
Các thành phần của IPSec
IPSec dirver Một phần mềm, thực hiện
chức năng mức giao thức là
yêu cầu để mã hóa và giải mã
các gói
IPSec Policy Agent Internet Key Exachange (IKE)
Oakley Internet Security Asscociation
Key Management Protocol
Một dịch vụ của
Windows 2000, thu
thập những thiết lập
chính sách IPSec từ
các hoạt động thư mục
và thiết lập cấu hình
cho hệ thống lúc khởi
động
Giao thức IPSec
cung cấp bảo
mật chính cho
IPSec và các
giao thức khác
Một giao thức, sử dụng thuật toán Diffie-
Hellman để tạo ra khóa chính, và một chìa
khóa đó là cụ thể cho từng phiên trong
chuyển giao dữ liệu IPSec
Phần mềm cho phép hai máy tính để giao tiếp
bằng cách mã hóa các dữ liệu được trao đổi
giữa chúng
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 5
9
Thực hiện IPSec
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 6
0
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 60 C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 60 C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 60 C E H - S E S S I O N H I J A C K I N G - T R Ầ N N GỌ C K H Ả I 60
LƯU ĐỒ MODULE
Khái niệm
Session
Hijacking
Session
Hijacking
mức ứng
dụng
Session
Hijacking
mức mạng
Công cụ
chiếm quyền
điều khiển
phiên
Biện pháp
đối phó
Thâm
nhập thử
nghiệm
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 6
1
Bắt đầu Thâm nhập thử nghiệm Session Hijacking
Xác định vị
trí một phiên
Session ID
được sử
dụng trong
URL?
Session
được mã
hóa?
Session ID
được phục hồi?
Session ID
được mã hóa? Thăm dò lưu lượng phiên
giữa hai máy tính
Hủy bỏ hoặc sử dụng
Trojan để thực hiện
session hijacking
Sử dụng mail lừa
đảo cho phiên cố
định
Crack session ID
mã hóa
Sử dụng các công cụ tự
động để cướp các phiên
Thăm dò lưu lượng truy cập phiên
giữa hai máy tính bằng cách sử dụng
các công cụ như Wireshark, CACE
Pilot, Capsa Network Analyzer,
Windump, v..v...
Sử dụng trojan máy chủ proxy có
thể thay đổi các thiết lập proxy trong
trình duyệt của nạn nhân
Sử dụng các công cụ tự động như
Paros proxy, Burp suite,
Wenscarab,v..v.. để cướp phiên
Crack session ID nếu nó được mã
hóa URL, mã hóa HTML, mã hóa
Unicode, mã hóa Hex hoặc mã hóa
Bases64
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 6
2
Thâm nhập thử nghiệm Session Hijacking
Thực hiện kết nối bình
thường với một trong các
máy
Thu thập 1 vài session
IDs
Dự đoán một session
ID mới
Bruteforce session
IDs
Phát lại session ID
mới
Tài liệu tất cả các kết
quả
Brute force session ID có hiệu lực với
giới hạn phạm vi của giá trị session ID, vì
vậy session ID chính xác được tìm thấy
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 6
3
TÓM TẮT NỘI DUNG
Trong tấn công chiếm quyền điều khiển phiên, kẻ tấn công dựa vào người sử
dụng hợp pháp để kết nối và xác thực, và sau đó sẽ chiếm phiên.
Trong một cuộc tấn công giả mạo, kẻ tấn công giả mạo là một người dùng
khác hoặc máy tính để truy cập.
Thành công chiếm quyền điều khiển phiên truy cập là khó khăn và chỉ có thể
xảy ra khi một số yếu tố dưới sự kiểm soát của kẻ tấn công.
Cướp quyền đăng nhập có thể chủ động hoặc thụ động trong bản chất tùy
thuộc vào mức độ tham gia của các kẻ tấn công.
Một loạt các công cụ tồn tại để hỗ trợ kẻ tấn công gây ra tấn công phiên.
Session hijacking nguy hiểm, và bởi vậy nên nó lại là một sự cần thiết cho
việc thực hiện các biện pháp đối phó triệt để.
C E H - S E S S I O N H I J A C K I N G - T R Ầ N N G Ọ C K H Ả I 6
4
Lời trích dẫn
Có thể phá vỡ bảo mật không làm cho bạn trở
thành một hacker nhưng có thể làm cho bạn trở
thành một kỹ sư
- Eric Raymond,
Một tác giả và là người ủng hộ phần mềm
nguồn mở