gpt4 book ai didi

asp.net - ASP.Net 控件是否通过 View 状态公开 SQL 查询?

转载 作者:行者123 更新时间:2023-12-01 04:05:53 26 4
gpt4 key购买 nike

作为默认 ASP.Net 控件集的一部分的控件是否始终使用 viewstate 或 controlstate?

即,如果我将下面的代码放到一个全新的 Web 表单上,我的 SQL 字符串是否处于未加密的控制状态?

<asp:SqlDataSource ID="mobileData" runat="server" 
DataSourceMode="DataReader"
SelectCommand="SELECT * from ma.bob WHERE Vendor IS NOT NULL"
/>

我知道如何加密 View 状态和控制状态,但对我来说,这个常见的用例可能非常不安全,这似乎很疯狂。确实可以通过修改控制状态来执行 SQL 注入(inject)攻击吗?

我认为大多数人都会考虑为敏感应用程序加密控制状态,但实际上,如果我的假设是正确的——那么它应该总是这样做——并且 Visual Studio 应该默认启用它?

我是否正确地考虑了这一点,还是我有错误的一端?

最佳答案

要回答您的问题,没有 .
来自 MSDN

For security purposes, the SelectCommand property is not stored is view state. Because it is possible to decode the contents of view state on the client, storing sensitive information about the database structure in view state could result in an information disclosure vulnerability.

关于asp.net - ASP.Net 控件是否通过 View 状态公开 SQL 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9400980/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com