CWE-93: Vô hiệu hóa không đúng các chuỗi CRLF ('Chèn CRLF')

CWE-93 là gì?

CWE-93 là Vô hiệu hóa không đúng các chuỗi CRLF ('Chèn CRLF'). Lỗi phát sinh khi Sản phẩm sử dụng CRLF, tức ký tự xuống dòng và về đầu dòng, như một phần tử đặc biệt để phân tách dòng hoặc bản ghi nhưng không vô hiệu hóa, hoặc vô hiệu hóa không đúng, các chuỗi CRLF trong dữ liệu đầu vào. Hiện có 153 lỗ hổng trong kho dữ liệu liên quan đến CWE-93 và không có lỗ hổng nào nằm trong danh mục khai thác thực tế của CISA.

THỨ HẠNG OWASP TOP 10:20255 — A05:2025 — Injection
Tổng số CVE liên quan (365 ngày)153
Mức trừu tượngCơ bản
Khả năng khai thác-

Số lượng lỗ hổng nằm trong CWE-93

153 lỗ hổngTăng 1291% so với cùng kỳ

Không có dữ liệu

Chưa có dữ liệu về lỗ hổng trong CISA KEV cho CWE-93

Định nghĩa chính thức

TheoMitre CWE

Chi tiết kỹ thuật

CRLF có ý nghĩa cú pháp trong nhiều định dạng và giao tiếp dựa trên dòng. Nếu ứng dụng đưa đầu vào chưa được kiểm soát vào một vị trí mà CRLF được diễn giải, người dùng có thể chèn thêm ranh giới dòng hoặc bản ghi và làm thay đổi cấu trúc dữ liệu mà ứng dụng hoặc thành phần tiếp theo xử lý. Vì vậy, dữ liệu vốn chỉ nên là nội dung có thể trở thành một phần của cấu trúc thông điệp, mục nhập nhật ký hoặc dữ liệu gửi đi, dẫn đến việc sửa đổi dữ liệu ứng dụng.

Đặc điểm

Điểm yếu này phát sinh khi dữ liệu đầu vào có thể chứa CRLF và ứng dụng truyền dữ liệu đó đến một thành phần sử dụng CRLF để phân tách dòng hoặc bản ghi. Khi không được trung hòa đúng cách, dữ liệu được cung cấp có thể thay đổi ranh giới giữa các dòng hoặc trường dữ liệu, thay vì chỉ được xử lý như nội dung thông thường. Điểm yếu không phụ thuộc vào ngôn ngữ lập trình cụ thể và được ghi nhận phát sinh trong giai đoạn triển khai.

Hậu quả thường gặp

Hậu quả được ghi nhận thuộc phạm vi tính toàn vẹn: kẻ tấn công có thể sửa đổi dữ liệu ứng dụng bằng cách chèn thêm dòng, bản ghi hoặc tiêu đề tại nơi CRLF được diễn giải. Các trường hợp tiêu biểu bao gồm sửa tiêu đề của yêu cầu gửi đi, tạo mục nhật ký giả, thêm tiêu đề thư và tách phản hồi HTTP.

Dữ liệu MITRE CWE chính thức
Tác độngPhạm viDiễn giải
Thay đổi dữ liệu ứng dụngTính toàn vẹn-

Biện pháp giảm thiểu rủi ro

Trong quá trình triển khai, tránh sử dụng CRLF làm chuỗi đặc biệt nếu có thể. Lọc hoặc đặt trong cơ chế trích dẫn phù hợp các chuỗi CRLF trong dữ liệu do người dùng kiểm soát trước khi sử dụng dữ liệu trong ngữ cảnh có diễn giải CRLF.

Dữ liệu MITRE CWE chính thức
  1. Hiện thực hóaAvoid using CRLF as a special sequence.
  2. Hiện thực hóaAppropriately filter or quote CRLF sequences in user-controlled input.

Cách phát hiện trong hệ thống

Phân tích tĩnh tự động, thường được gọi là SAST, có thể phát hiện một số trường hợp bằng cách phân tích mã nguồn hoặc mã nhị phân mà không cần thực thi. Phương pháp này thường lập mô hình luồng dữ liệu và luồng điều khiển, sau đó tìm các mẫu dễ bị lỗi nối nguồn dữ liệu đầu vào với các điểm đích nơi dữ liệu tương tác với thành phần bên ngoài hoặc lớp thấp hơn như hệ điều hành; hiệu quả được ghi nhận là cao, nhưng phương pháp này không nhất thiết phát hiện mọi trường hợp.

Dữ liệu MITRE CWE chính thức
Phương phápCách làmHiệu quả
Phân tích tĩnh tự độngAutomated 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

Lỗ hổng điển hình

Các ví dụ sau đây là các trường hợp tiêu biểu, không phải danh sách đầy đủ:

  • CVE-2002-1771: Chèn CRLF cho phép tạo proxy phát tán thư rác bằng cách thêm các tiêu đề thư từ địa chỉ email hoặc tên.
  • CVE-2002-1783: Chèn CRLF trong tham số của hàm API cho phép sửa đổi tiêu đề của các yêu cầu gửi đi.
  • CVE-2004-1513: Ký tự về đầu dòng cho phép tạo các mục giả mạo trong tệp nhật ký máy chủ web.
  • CVE-2006-4624: Chuỗi khai thác cho phép chèn các mục nhật ký giả cùng dấu thời gian giả bằng CRLF.
  • CVE-2005-1951: Chuỗi khai thác trong đó ứng dụng chấp nhận CRLF trong mã định danh đối tượng, cho phép tách phản hồi HTTP.
  • CVE-2004-1687: Chuỗi khai thác tách phản hồi HTTP thông qua CRLF trong tham số liên quan đến URL.
Nguồn (2)

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.

Tìm hiểu thêm

Kiểm tra chuyên sâu cùng giải pháp quản lý rủi ro Web toàn diện

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.