在完全托管的ASP.NET C#Web应用程序中是否可能发生缓冲区溢出/溢出

时间:2020-03-06 14:57:48  来源:igfitidea点击:

在完全托管的asp.net Web门户中是否可能存在缓冲区溢出/溢出漏洞。如果是,如何进行测试。

解决方案

除非我们利用Web服务器或者.NET / ASP.NET堆栈本身,否则不要这样做。

通常,我们不必担心缓冲区溢出。这是托管代码的主要优点之一,垃圾回收可能是另一个主要优点。

在某些情况下,每当托管代码与非托管代码进行交互时(Win32 API调用,COM互操作,P / Invoke等),我们都应该意识到,基于参数,非托管代码中可能存在缓冲区溢出从托管代码传入。

同样,标记为"不安全"的代码可以以导致缓冲区溢出的方式直接操作内存地址。不过,大多数Ccode都是在不使用"不安全"关键字的情况下编写的。

我有一个工具(HP Dev Inspect)在我的ASP.NET应用程序中检测到可能的"可能的参数缓冲区溢出",这是因为我们的一个TextBoxes中没有MaxLength =" 20"。