既定のASP.Netコントロールセットの一部であるコントロールがあります - すべてがviewstateまたはcontrolstateを常時使用していますか?ASP.Netコントロールはviewstate経由でSQLクエリを公開しますか?
つまり、私はブランドの新しいWebフォーム上に以下のコードを削除した場合、暗号化されていないControlStateを中に置かれ、私のSQL文字列のですか?
<asp:SqlDataSource ID="mobileData" runat="server"
DataSourceMode="DataReader"
SelectCommand="SELECT * from ma.bob WHERE Vendor IS NOT NULL"
/>
私はビューステートとControlStateを暗号化する方法を承知しているが、この一般的な使用例はそれほど恐ろしく安全でない可能性があることに私に狂ったようです。確かに、コントロールステートを変更してSQLインジェクション攻撃を行うことができますか?
私はほとんどの人が敏感なアプリケーションのためのControlStateを暗号化を考えると思うが、私の仮定が真であれば、実際に、 - それは常に行わなければならない - とVisual Studioは、デフォルトでそれを有効にする必要がありますか?
は私が正しく、この考えていますか、私はスティックの間違った終わりを持っているのですか?
あなたは確認することをお勧めします:http://programmers.stackexchange.com/questions/115374/using-sqldatasource-databound-controls-in-asp-net-bad-practice – NotMe
なぜその文字列がViewStateのに行くだろうまたはControlState?静的です。 –