cuốn sách gpt4 ai đã làm

c - Bảo mật DNS và cổng ngẫu nhiên

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-03 00:53:03 27 4
mua khóa gpt4 Nike

Gần đây tôi đã đọc về DNS các cuộc tấn công đầu độc bộ nhớ đệm . Về cơ bản, chúng có thể xảy ra vì kẻ tấn công có thể đoán ID giao dịch tin nhắn DNS vì nó chỉ là số nguyên 16 bit. Ngay cả khi các số nguyên là ngẫu nhiên, vẫn có khả năng một chuỗi các gói DNS sẽ trùng khớp ngẫu nhiên với một trong 2^16 gói trong một khoảng thời gian ngắn.

Do đó, biện pháp bảo mật thứ hai là ngẫu nhiên hóa cổng. Nếu cổng nguồn UDP là ngẫu nhiên, kẻ tấn công sẽ phải đoán trong một khoảng thời gian ngắncả haicổng nguồnID giao dịch, điều này thường không khả thi. Nhưng tôi đọc được rằng các phiên bản phần mềm DNS cũ hơn, chẳng hạn như các phiên bản trước BIND 9, không thực hiện ngẫu nhiên cổng và do đó dễ bị tấn công.

Điều này đưa tôi đến một câu hỏi: Hầu hết các hệ điều hành UNIX (như Linux và BSD) SOCK_DGRAM Không phải đôi khitự độngChỉ định cổng ngẫu nhiên? không cần gọi trước ràng buộc Trong trường hợp sử dụng? Tôi nghĩ đó là toàn bộ ý tưởng về những cổng phù du. Tại sao các ứng dụng (như BIND) phải cố tình thực hiện ngẫu nhiên cổng?

Tôi hiểu rằng về cơ bản, một hệ điều hành như Linux sẽ có sẵn một loạt cổng tạm thời cho mỗi quy trình. Quá trình có thể gọi ràng buộc()Liên kết ổ cắm UDP với một cổng cụ thể. Nhưng nếu sử dụng ổ cắm UDP (tức là gọi send) mà không gọi lần đầu ràng buộc , hệ điều hành sẽ lười biếng gán một cổng tạm thời ngẫu nhiên cho ổ cắm. Vậy tại sao các phiên bản BIND cũ hơn không tự động thực hiện ngẫu nhiên cổng?

câu trả lời hay nhất

Điều này đưa tôi đến câu hỏi: không phải hầu hết các hệ điều hành UNIX như Linux và BSD đều tự động gán các cổng ngẫu nhiên khi SOCK_DGRAM được sử dụng mà không có lệnh gọi trước để liên kết? Tôi nghĩ đó là toàn bộ ý tưởng với các cổng phù du.

Ý tưởng chính của các cổng phù du không phải là ngẫu nhiên hóa một cách an toàn mà là nhanh chóng chọn ra một số cổng không sử dụng. Các hệ điều hành khác nhau sử dụng các chiến lược khác nhau, một số hơi ngẫu nhiên, một số sử dụng các trình tạo ngẫu nhiên mạnh hơn và một số thậm chí còn phân bổ các cổng theo cách tuần tự. Điều này có nghĩa là không thể dự đoán được các cổng tạm thời để sử dụng DNS trên tất cả các hệ điều hành.

Để biết thêm chi tiết, tôi khuyên bạn nên xem xét RFC 6506 "Khuyến nghị ngẫu nhiên về cổng" và tổng quan về chiến lược lựa chọn cổng https://www.cymru.com/jtk/misc/ephemeralports.html .

Về c - Bảo mật DNS và ngẫu nhiên cổng, chúng tôi tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/29240991/

27 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress