Có thể có lỗ hổng tràn bộ đệm/tràn ngập trong cổng web asp.net được quản lý hoàn toàn không. Nếu có thì thử nghiệm như thế nào.Có thể tràn bộ đệm/tràn bộ đệm trong ứng dụng web asp.net C# hoàn toàn được quản lý
Trả lời
Không trừ khi bạn khai thác máy chủ web hoặc ngăn xếp .NET/ASP.NET.
Trong trường hợp chung, bạn không cần phải lo lắng về việc tràn bộ đệm. Đây là một trong những lợi thế chính của mã được quản lý, thu gom rác thải có lẽ là lợi thế lớn khác.
Có một vài trường hợp cạnh mà bạn cần biết - bất kỳ lúc nào mã được quản lý của bạn tương tác với mã không được quản lý (cuộc gọi API Win32, COM interop, P/Invoke, v.v.) có khả năng tràn bộ đệm trong phần không được quản lý mã, dựa trên các thông số được truyền từ mã được quản lý.
Ngoài ra mã được đánh dấu là "không an toàn" có thể trực tiếp thao tác địa chỉ bộ nhớ theo cách gây tràn bộ đệm. Hầu hết mã C# được viết mà không sử dụng từ khóa "không an toàn".
Tôi đã có một công cụ (HP Dev Inspect) phát hiện có thể "tràn bộ đệm tham số có thể" trong ứng dụng ASP.NET của tôi và đó là vì chúng tôi không có MaxLength = "20" trong một trong các TextBox của chúng tôi ..
Loại tràn bộ đệm khác nhau, loại tốt. Nếu giá trị của hộp văn bản của bạn được bỏ qua, ví dụ, một tham số SQL, nó có thể tàn phá - hoặc nếu nó được chuyển đến một hàm không mong đợi toàn bộ văn bản của "Call of Cthulu" cho một tham số, nó có thể cư xử tệ. Biết rằng những người dùng hiểu biết (chẳng hạn như những người sử dụng phần mở rộng của Nhà phát triển Web của FF) chỉ có thể tắt MaxLength. Đó là một phòng thủ tiện lợi, không phải thứ gì đó mà bạn nên trông cậy. Bạn nên luôn kiểm tra đầu vào của người dùng trong thời gian dài nếu nó quan trọng. – Broam
- 1. Quản lý bộ nhớ được chia sẻ hoàn toàn .NET.
- 2. Quản lý bộ nhớ/bộ nhớ đệm cho các đối tượng tốn kém trong C#
- 3. Quản lý bộ nhớ WebView
- 4. Emacs reindenting toàn bộ bộ đệm C++
- 5. Tấn công tràn bộ đệm
- 6. Dillema với tràn bộ đệm
- 7. Có hỗ trợ bộ đệm ứng dụng trong nhiều máy chủ trong asp.net (C#) không?
- 8. Không thể hoàn tác ứng dụng web hoàn toàn trong Tomcat 7
- 9. F # tràn bộ đệm async
- 10. Không thể xóa dll được quản lý sau khi sử dụng nó trong ứng dụng web asp.net
- 11. Ứng dụng cục bộ html5 có thể có phiên asp.net không? (ứng dụng web cục bộ cho iPhone)
- 12. Chức năng C/C++ nào thường được sử dụng không chính xác và có thể dẫn đến tràn bộ đệm?
- 13. Quản lý vùng đệm bằng cách sử dụng C#
- 14. Biên dịch C để cho phép tràn bộ đệm
- 15. Tạo toàn bộ ứng dụng web bằng cách sử dụng quản trị django
- 16. tràn bộ đệm kích thước dbms_output
- 17. Lỗi tràn bộ đệm không hoạt động
- 18. Quản lý bộ nhớ không có nhánh?
- 19. Hoàn thành toàn bộ dòng trong Emacs?
- 20. quản lý bộ nhớ java
- 21. Tôi có thể xóa bộ đệm sớm bằng ASP.NET không?
- 22. Vị trí của bộ nhớ đệm ASP.NET
- 23. ConEmu: Tìm kiếm toàn bộ bộ đệm
- 24. Có thể đánh giá toàn bộ bộ đệm trong Emacs không?
- 25. Quản lý bộ nhớ toàn cầu trong C++ trong ngăn xếp hoặc đống?
- 26. Quản lý bộ nhớ cho các ứng dụng chuyên sâu bộ nhớ cố ý
- 27. Gửi() allways gửi toàn bộ bộ đệm?
- 28. Triết lý quản lý bộ nhớ trong C++ là gì?
- 29. Làm cách nào để lấy thông tin về Ngoại lệ tràn bộ đệm trong một ứng dụng hỗn hợp?
- 30. C++: về quản lý bộ nhớ
Bạn có thể giải thích thêm được không. –
Nếu mã của bạn được quản lý hoàn toàn, thì không có cách nào để đệm tràn mã mà bạn viết. Nhưng ngăn xếp (.NET và như vậy) mà bạn được xây dựng trên đầu trang không được viết bằng mã được quản lý thuần túy, vì vậy có khả năng khai thác chúng, ngay cả khi nó nhỏ. –
Cảm ơn rất nhiều câu trả lời của bạn. –