Acunetixを使用して、アプリケーションのセキュリティスキャンを実行します。最近、以下の整数の脆弱性エラーに遭遇しました。
私の知る限り、レポートはクエリ文字列内の整数オーバーフロー攻撃を阻止していないことを示しているようです。最終的に整数に解決されるクエリ文字列を使用しますが、使用する前に、最初に暗号化され、次に復号化され、intを使用してintに変換されConvert.ToInt32()
ます。代わりに使用する必要があることはわかっていますTryParse()
が、ハッカーがmaxより大きい整数値を入力したとしても、整数に変換しようとする前に復号化しようとすると失敗します。これは、私の意見では整数オーバーフローが発生する場所です。それは、復号化が失敗したときにエラーが発生しない限りですか?
私はこれについてかなり混乱していて、Google検索はc#やasp.netではなくc++のような管理されていない言語にほとんど関係しているのであまり役に立ちませんでした。どんな助けでも大歓迎です。