CWE-1021 là gì?
Ứng dụng web không hạn chế, hoặc hạn chế không đúng cách, các khung hay lớp giao diện người dùng thuộc về ứng dụng hoặc miền khác.
Ứng dụng web không hạn chế, hoặc hạn chế không đúng cách, các khung hay lớp giao diện người dùng thuộc về ứng dụng hoặc miền khác.
Điểm yếu xảy ra khi nội dung có thể được kết xuất bên trong, phủ lên, hoặc đặt cạnh giao diện người dùng của ứng dụng hay miền khác mà không có biện pháp hạn chế đầy đủ. Kẻ tấn công có thể lợi dụng hành vi này để che giấu vị trí hoặc mục đích của một điều khiển, từ đó khiến người dùng tương tác với ứng dụng nền ngoài dự định. Vấn đề này thường được gọi là clickjacking hoặc tấn công UI redress; trên thiết bị di động, tình huống tương tự thường được gọi là tapjacking, trong đó người dùng chạm vào giao diện đã bị thao túng.
Đây là điểm yếu phát sinh trong giai đoạn triển khai, ảnh hưởng đến ứng dụng web và không phụ thuộc vào ngôn ngữ lập trình hay công nghệ cụ thể. Đặc trưng của điểm yếu là không thực thi đúng quy định về những ứng dụng hoặc miền bên ngoài được phép nhúng hay kết xuất ứng dụng, bao gồm thông qua frame, lớp phủ và các phần tử nhúng liên quan. Hồ sơ cũng dùng các thuật ngữ clickjacking, UI redress attack và tapjacking; tapjacking chỉ tình huống tương tác bằng thao tác chạm trong ứng dụng di động.
Tác động chính thuộc phạm vi kiểm soát truy cập. Bằng cách khiến người dùng kích hoạt các điều khiển bị che giấu hoặc gây hiểu lầm, kẻ tấn công có thể đạt được đặc quyền hoặc mạo nhận danh tính, vượt qua cơ chế bảo vệ, đọc dữ liệu ứng dụng hoặc sửa đổi dữ liệu ứng dụng. Kết quả cụ thể phụ thuộc vào chức năng của ứng dụng nền, chẳng hạn thay đổi cài đặt quyền riêng tư trong ứng dụng mạng xã hội.
| Tác động | Phạm vi | Diễn giải |
|---|---|---|
| Chiếm đặc quyền hoặc mạo danh, Vượt qua cơ chế bảo vệ, Đọc dữ liệu ứng dụng, Thay đổi dữ liệu ứng dụng | Kiểm soát truy cập | An attacker can trick a user into performing actions that are masked and hidden from the user's view. The impact varies widely, depending on the functionality of the underlying application. For example, in a social media application, clickjacking could be used to trick the user into changing privacy settings. |
Áp dụng các hạn chế theo nhiều lớp trong giai đoạn triển khai:
X-Frame-Options để chỉ định những miền được phép nhúng ứng dụng, đồng thời lưu ý các giới hạn và khoảng trống trong quá trình triển khai, bao gồm nhu cầu cho phép nhiều miền.X-Frame-Options, sử dụng tập lệnh phá khung trên những trang không được phép bị nhúng. Biện pháp này không đủ để sử dụng đơn độc vì tập lệnh có thể bị vượt qua và có thể xử lý không đúng nhiều khung lồng nhau.frame-ancestors hoặc frame-src để kiểm soát nội dung được phép nhúng.object, embed hoặc applet.Phân tích tĩnh tự động, còn gọi là Static Application Security Testing, có thể phát hiện một số trường hợp mà không cần thực thi ứng dụng. Phương pháp này xây dựng mô hình luồng dữ liệu và luồng điều khiển trong mã nguồn hoặc mã đã biên dịch, sau đó tìm các mẫu dễ bị tổn thương nối nguồn đầu vào với điểm nhận tương tác với thành phần bên ngoài hoặc lớp thấp hơn. Hồ sơ đánh giá phương pháp này có hiệu quả cao, nhưng chỉ nêu khả năng phát hiện một số trường hợp chứ không phải mọi trường hợp.
| Phương pháp | Cách làm | Hiệu quả |
|---|---|---|
| Phân tích tĩnh tự động | Automated static analysis, commonly referred to as Static Application Security Testing (SAST), can find some instances of this weakness by analyzing source code (or binary/compiled code) without having to execute it. Typically, this is done by building a model of data flow and control flow, then searching for potentially-vulnerable patterns that connect "sources" (origins of input) with "sinks" (destinations where the data interacts with external components, a lower layer such as the OS, etc.) | Cao |
Hồ sơ chính thức cung cấp các ví dụ tiêu biểu sau, không phải danh sách đầy đủ:
CVE-2017-7440: Tính năng xem trước email của một ứng dụng máy tính để bàn cho phép clickjacking thông qua thư email được tạo đặc biệt.CVE-2017-5697: Một sản phẩm phần cứng hoặc firmware có cơ chế bảo vệ clickjacking không đầy đủ trong giao diện người dùng web.CVE-2017-4015: Một sản phẩm ngăn ngừa mất dữ liệu bị clickjacking thông qua tiêu đề phản hồi HTTP.CVE-2016-2496: Tapjacking trong hộp thoại cấp quyền của hệ điều hành di động cho phép truy cập bộ nhớ riêng tư thông qua cửa sổ chồng lấn một phần.CVE-2015-1241: Một trình duyệt web bị tapjacking liên quan đến điều hướng trang và các sự kiện chạm hoặc cử chỉ.CVE-2017-0492: Giao diện hệ thống của một hệ điều hành di động cho phép ứng dụng độc hại tạo lớp phủ giao diện toàn màn hình để đạt được đặc quyền.Dưới đây là các lỗ hổng tiêu biểu liên quan đến CWE-1021, dựa theo mức độ ưu tiên
CWE™ Program, operated by The MITRE Corporation. Copyright © 2006–2026, The MITRE Corporation. The MITRE Corporation hereby grants you a non-exclusive, royalty-free license to use CWE for research, development, and commercial purposes. CWE Terms of Use.
Giải pháp CyStack VulnScan liên tục phát hiện tài sản, xác minh lỗ hổng và giúp đội ngũ bảo mật ưu tiên khắc phục cho toàn bộ doanh nghiệp.
Khám phá CyStack VulnScanvi