Gần đây tôi đã đọc một tiêu đề giấy "All You Ever Wanted to Know about Dynamic Taint Analysis and Forward Symbolic Execution (but Might Have Been Afraid to Ask)" bởi Dr. EJ Schwartz. Trong bài báo, ông chủ yếu nói về các ứng dụng của họ trong bối cảnh an ninh mức nhị phân.Khoảng cách giữa việc thực thi biểu tượng và phân tích taint là gì?
Tôi tò mò về sự khác biệt chính xác giữa phân tích taint động và thực hiện biểu tượng chuyển tiếp.
Từ những gì tôi có thể thấy, phân tích vết nhơ theo dõi các luồng thông tin từ đối tượng x (nguồn) để phản đối y (chìm), bất cứ khi nào thông tin chứa trong biến x được chuyển giao cho đối tượng y. Vì vậy, mối quan tâm chính là đối tượng có thể là bị ảnh hưởng quá mức bởi nguồn. Trong khi thực thi biểu tượng xử lý một số đầu vào làm giá trị tượng trưng và cố gắng để biểu thị các biến khác với các biến tượng trưng; do đó nó trả lời về điều kiện nào đầu vào tượng trưng ảnh hưởng đến các chương trình thành công.
Tôi có thể thấy rằng ở cấp độ nhị phân, phân tích sơ bộ thường được đề cập đến với lỗ hổng do địa chỉ trả lại ghi đè; trong khi thực hiện biểu tượng có thể đối phó với nhiều loại vấn đề dễ bị tổn thương như integer overflow, lỗi runtime khẳng định, nguồn rò rỉ (ví dụ, rò rỉ bộ nhớ, tập tin mở/đóng), tràn bộ đệm. Tuy nhiên có vẻ như phân tích taint hiện đại không chỉ liên quan đến việc phân tích luồng dữ liệu , hầu hết trong số họ sẽ theo dõi các điều kiện điều khiển luồng; và trong một số tình huống phát hiện dễ bị tổn thương, đầu vào bị nhiễm độc cũng được biểu diễn như là giá trị tượng trưng và được nhân giống như cách thực hiện biểu tượng. Ở phía bên kia, các công cụ thực thi biểu tượng không thể sử dụng đầy đủ các giá trị ký hiệu được phân cách bởi các điều kiện đường dẫn khác nhau do các giới hạn của các bộ giải quyết ràng buộc cơ bản và thời gian chạy thực hiện/giải thích ; do đó, họ không thể đạt được chi tiết cao chi nhánh hoặc đường dẫn mức độ phù hợp như mong đợi.
Vì vậy, trong trường hợp tổng quát, chúng ta có thể nói rằng phân tích taint là một loại thực hiện biểu tượng thô, hoặc thực hiện mang tính biểu tượng là một loại phân tích vết nhơ chính xác?
Có thể có giá trị để đăng câu hỏi này tại StackExchange Computer Science hoặc StackExchange Reverse Engineering. – stackoverflowwww