Trang Chủ Âm thanh Đập ngăn xếp là gì? - định nghĩa từ techopedia

Đập ngăn xếp là gì? - định nghĩa từ techopedia

Mục lục:

Anonim

Định nghĩa - Stack Smashing có nghĩa là gì?

Đập ngăn xếp là một dạng lỗ hổng trong đó ngăn xếp của ứng dụng máy tính hoặc HĐH buộc phải tràn. Điều này có thể dẫn đến lật đổ chương trình / hệ thống và làm hỏng nó.


Một ngăn xếp, mạch đầu tiên vào trước, là một dạng bộ đệm chứa kết quả trung gian của các hoạt động bên trong nó. Để đơn giản hóa, ngăn xếp ngăn xếp việc đưa nhiều dữ liệu vào một ngăn xếp hơn khả năng giữ của nó. Tin tặc có kỹ năng có thể cố tình đưa dữ liệu quá mức vào ngăn xếp. Dữ liệu quá mức có thể được lưu trữ trong các biến ngăn xếp khác, bao gồm địa chỉ trả về hàm. Khi hàm trả về, nó nhảy tới mã độc trên ngăn xếp, có thể làm hỏng toàn bộ hệ thống. Dữ liệu liền kề trên ngăn xếp bị ảnh hưởng và buộc chương trình bị sập.

Techopedia giải thích Stack Smashing

Nếu chương trình bị ảnh hưởng bởi việc đập ngăn xếp chấp nhận dữ liệu từ các mạng không tin cậy và chạy với các đặc quyền đặc biệt, đó là trường hợp lỗ hổng bảo mật. Nếu bộ đệm chứa dữ liệu được cung cấp bởi người dùng không tin cậy, ngăn xếp có thể bị hỏng bằng cách tiêm mã thực thi vào chương trình, do đó có được quyền truy cập trái phép vào máy tính. Kẻ tấn công cũng có thể ghi đè thông tin luồng điều khiển được lưu trữ trong ngăn xếp.


Khi việc đập ngăn xếp đã phát triển thành một lỗ hổng rất nghiêm trọng, một số công nghệ được triển khai để khắc phục thảm họa đập ngăn xếp. Bảo vệ tràn bộ đệm ngăn xếp thay đổi tổ chức dữ liệu trong khung ngăn xếp của lệnh gọi hàm để bao gồm các giá trị canary. Các giá trị này khi bị hủy chỉ ra rằng một bộ đệm trước nó trong bộ nhớ đã bị tràn. Giá trị Canary giám sát bộ đệm tràn và được đặt giữa dữ liệu điều khiển và bộ đệm trên ngăn xếp. Điều này đảm bảo rằng một bộ đệm tràn làm hỏng chim hoàng yến trước. Một xác minh thất bại của dữ liệu hoàng yến biểu thị một tràn trong ngăn xếp. Ba loại chim hoàng yến là Ngẫu nhiên, Kẻ hủy diệt và XOR ngẫu nhiên.


Canary terminator dựa trên thực tế là tấn công tràn bộ đệm stack phụ thuộc vào các hoạt động chuỗi kết thúc tại các terminator. Chim hoàng yến ngẫu nhiên được tạo ngẫu nhiên từ một daemon thu thập entropy, ngăn kẻ tấn công biết các giá trị. Canaries ngẫu nhiên được tạo ra khi khởi tạo chương trình và được lưu trữ trong các biến toàn cục. Các canary XOR ngẫu nhiên là các sóng mang ngẫu nhiên được XOR sử dụng dữ liệu điều khiển. Nó tương tự như chim hoàng yến ngẫu nhiên ngoại trừ "phương pháp đọc từ ngăn xếp" để lấy chim hoàng yến rất phức tạp. Tin tặc cần dữ liệu hoàng yến, thuật toán và kiểm soát để tạo ra chim hoàng yến ban đầu. Chúng bảo vệ chống lại các cuộc tấn công liên quan đến bộ đệm tràn trong cấu trúc thành các con trỏ để thay đổi con trỏ để trỏ đến một phần dữ liệu điều khiển.

Đập ngăn xếp là gì? - định nghĩa từ techopedia