Session poisoning - xaydungphanmem

Report
Ấn định phiên làm việc -SESSION FIXATION
• Là kĩ thuật tấn công cho phép hacker mạo
danh người dùng hợp lệ bằng cách gửi
một session ID hợp lệ đến người dùng,
sau khi người dùng đăng nhập vào hệ
thống thành công, hacker sẽ dùng lại
session ID đó và nghiễm nhiên trở thành
người dùng hợp lệ.
Quá trình tấn công
• Thông qua 3 bước:
– Setup session: thiết lập một «bẫy session « trên 1
server đích và chọn lựa 1 session id sẽ dùng để tấn
công.
– Session fixation: Hacker sẽ dùng session của mình
để gắn vào trình duyệt của người dùng
– Session entrance:Hacker chờ người dùng đăng nhập
vào sever đã dựng sẵn bằng session giả (được đặt
sẵn) , sau đó người dùng đăng nhập bằng session
của mình.
Tấn công trên URL
• Hacker sẽ sử dụng các “mánh” để lừa người
dùng đăng nhập tài khoản thông qua trang
web mà người đó đã dựng sẵn VD như :
http://online.worldbank.dom/login.jsp?session=1234.
• Hacker sẽ có tài khoản của người dùng và sẽ thực hiện
các hành vi khai thác bất hợp pháp trên tài khoản người
dùng đã đăng nhập như tài khoản ngân hàng.
Tấn công trong biến ẩn form
• Tương tự như URL,biến ẩn form nghĩa là sau
khi hacker xem mã HTML của trang web,nhận
thấy session ID được đặt trong biến ẩn của
form ,hacker sẽ gửi 1 session ID cũng trên URL
đó đến người dùng hoặc 1 trang web giống
trang đích nhưng với biến ẩn form mang giá trị
ấn định sẵn .
Tấn công trong cookie
• Bằng việc lợi dụng cookie ,hacker có 3 cách để
đưa 1 session ID đến trình duyệt của nạn nhận :
• Sử dụng ngôn ngữ kịch bản (javascrip ,vbscrip) để
thiết lập 1 cookie trong trình duyệt của nạn nhân
bằng cách thiết lập giá trị “document .cookie=
“sessionid=1234;domain = .worldbank.com”
”.Bên cạnh đó hacker còn có thể thiết lập thời
gian sống cho cookie ,domain cookie.
Cách phòng chống :
• Chống việc đăng nhập với 1 session ID có sẵn bằng cách hủy
bỏ session ID được cung cấp bởi trình duyệt của người dùng
khi đăng nhập và luôn tạo 1 session ID mới khi người dùng
đăng nhập thành công .
• Chống những hacker bên ngoài hệ thống :tạo ứng dụng trên
hệ thống theo hướng giới hạn (chỉ tạo session ID mới cho
người dùng sau khi họ thành công )
• Giới hạn phạm vi ứng dụng của sessionID : Kết hợp session OD
với địa chỉ của trình duyệt ,kết hợp session ID với thông tin
chứng thực được mã hóa ssl,xóa bỏ session khi người dùng
thoát khỏi hệ thống hay hết hiệu lực,thiết lập thời gian hết
hiệu lực của session tránh trường hợp hacker có thể duy trình
session và sử dụng nó lâu dài .
Session poisoning :
• Session poisoning là việc lợi dụng những lỗ
hổng của việc quản lý những session trên các
ứng dụng máy chủ để coppy (ăn cắp) những
session của người dùng bằng những đoạn
script .
Cách phòng chống
• Tạo ra danh sách những thẻ HTML được phép sử
dụng.
• Xóa bỏ thẻ script hay lọc ra bất kì 1 đoạn mã
javascript /java/vbscript
• Lọc dấu nháy đơn ,nháy kép (vì có dấu nháy đơn
,nháy kép có thể chèn đoạn script trong URL) ,và
kí tự null(vì khả năng thêm 1 đoạn mã bất kì sau
kí tự null khiến cho ứng dụng dù đã lọc bỏ thẻ
script vấn không nhận ra ,do ứng dụng nghĩ rằng
chuỗi đã kết thúc từ kí tự null này.)

similar documents