- vừa được xem lúc

Tabnabbing - hiểu để bảo vệ website của bạn

0 0 6

Người đăng: Vinh Phạm

Theo Viblo Asia

Việc mở liên kết trong tab mới là điều khá phổ biến khi xây dựng website. Tuy nhiên, ít ai biết rằng hành động này có thể vô tình khiến người dùng dễ bị tấn công bởi kỹ thuật "Tabnabbing". Vậy kỹ thuật này là gì và có cách nào để phòng tránh?

Tabnabbing là gì?

Tabnabbing là một dạng tấn công lừa đảo (phishing) nhắm vào các tab không hoạt động trên trình duyệt. Khi bạn đang tập trung vào một tab, liên kết ở tab đã mở trước đó có thể bị kẻ xấu chiếm quyền. Điều này khiến bạn bị chuyển hướng từ trang web dự định sang một trang web giả mạo.

Điểm mấu chốt của Tabnabbing nằm ở việc trang web độc hại được thiết kế rất giống với trang web thật. Do đó, người dùng thường không nhận ra sự khác biệt khi quay lại tab đó. Họ vô tình cung cấp thông tin cá nhân mà không biết rằng kẻ tấn công đang chờ đợi để đánh cắp chúng.

Kẻ tấn công có thể lợi dụng nhiều cách để xâm nhập vào một trang web uy tín, bao gồm:

  • Quảng cáo độc hại: Lẩn trốn trong các banner quảng cáo.
  • Tiện ích của bên thứ ba: Khai thác lỗ hổng bảo mật của các tiện ích được nhúng trên trang web.
  • Nội dung do người dùng tạo ra: Các bài đăng trên diễn đàn, bình luận chứa mã JavaScript độc hại.

Ví dụ thực tế về tấn công Tabnabbing

Hãy tưởng tượng một trang web yêu cầu thông tin cá nhân của bạn và tự động đăng xuất khi bạn không hoạt động trong một thời gian nhất định. Lúc này, kẻ tấn công có thể nhanh chóng thay thế trang web thật bằng một trang giả mạo. Khi bạn quay lại tab đó, bạn sẽ không nhận ra sự khác biệt và tiếp tục đăng nhập, vô tình trao thông tin cho kẻ xấu.

Mục đích của Tabnabbing, giống như các cuộc tấn công lừa đảo khác, là lừa người dùng nhập thông tin nhạy cảm (thường là thông tin đăng nhập hoặc tài chính) vào trang web giả mạo.

Để bảo vệ người dùng khỏi nguy cơ này, bạn có thể sử dụng thuộc tính rel="noopener noreferrer" khi tạo liên kết mở ra tab mới trong HTML.

Cách mở liên kết trong tab mới trong HTML

Để mở liên kết trong tab mới, bạn chỉ cần thêm thuộc tính target="_blank" vào thẻ <a> trong HTML như sau:

<p>Tìm hiểu về lập trình tại <a href ="https://viblo.asia/" target="_blank">Viblo.asia</a><p/>

Trên trang web khi này liên kết sẽ hiển thị như sau: "Tìm hiểu về lập trình tại Viblo.asia"

Cách thêm thuộc tính noopener và noreferrer

Tuy nhiên, càng mở nhiều tab, bạn càng dễ bị tấn công bởi Tabnabbing. Bởi vì tab càng không hoạt động lâu thì nguy cơ bị kẻ xấu lợi dụng càng cao.

Để ngăn chặn điều này, bạn nên thêm thuộc tính rel="noopener noreferrer" vào thẻ <a> như sau:

<p>Tìm hiểu về lập trình tại <a href ="https://viblo.asia/" target="_blank" rel="noopener noreferrer">Viblo.asia</a><p/>

Lợi ích của việc sử dụng noopener và noreferrer

noopener ngăn chặn các đoạn mã độc hại truy cập vào tab hoặc cửa sổ đã mở liên kết hiện tại. Điều này được thực hiện bằng cách đặt thuộc tính Window.opener() thành null.

noreferrer ngăn trang web bên ngoài biết rằng bạn đã liên kết đến họ. Điều này đồng nghĩa với việc dữ liệu truy cập của bạn sẽ không được gửi đến trang web đó.

Tóm lại, việc hiểu rõ về Tabnabbing và cách phòng tránh là vô cùng cần thiết để đảm bảo an toàn cho website và bảo vệ người dùng khỏi những rủi ro tiềm ẩn trên không gian mạng.

Bình luận

Bài viết tương tự

- vừa được xem lúc

Tạo ra virus bằng tool (Part1)

Virus. Tác hại của nó để lại cũng nặng nề:. . Gây khó chịu cho chúng ta là tác hại đầu tiên.

0 0 48

- vừa được xem lúc

Facebook và google "hiểu" chúng ta như thế nào?

Tổng quan. Đã bao giờ bạn gặp những tình huống dưới đây và đặt câu hỏi thắc mắc tại sao chưa.

0 0 48

- vừa được xem lúc

Mã hoá dữ liệu trên Android với Jetpack Security

Jetpack Security (JetSec) là thư viện được xây dựng từ Tink - dự án mã nguồn mở, bảo mật đa nền tảng của Google. Jetpack Security được sử dụng cho việc mã hoá File và SharedPreferences.

0 0 66

- vừa được xem lúc

Tái hiện vụ bị đánh cắp 2 triệu DAI (~2 triệu USD) của Akropolis

Tổng quan. .

0 0 108

- vừa được xem lúc

Bảo mật internet: HTTPS và SSL/TLS như giải thích cho trẻ 5 tuổi

(Mình chém gió đấy, trẻ 5 tuổi còn đang tập đọc mà hiểu được cái này thì là thần đồng, là thiên tài, là mình cũng lạy). . . Xin chào các bạn.

0 0 90

- vừa được xem lúc

Phân biệt server xịn và server pha ke bằng SSL Pinning

Xin chào các bạn, trong bài viết này mình muốn chia sẻ về một kĩ thuật rất nên dùng khi cần tăng tính bảo mật của kết nối internet: SSL Pinning. Trong bài viết trước, mình đã giải thích khá kĩ về SSL,

0 0 584