私は、SQLインジェクションが、パラメタライズされたSQLを使用して、日々の通常のウェブサイトにまだ潜在的な脅威であるかどうか疑問に思いました。 (ASP.NET - '@ 0')。SQLインジェクションは依然として脅威ですか?
これが依然として脅威である場合、クラッカーはこれらのパラメータをどのように上書きまたは回避しますか?
私は、SQLインジェクションが、パラメタライズされたSQLを使用して、日々の通常のウェブサイトにまだ潜在的な脅威であるかどうか疑問に思いました。 (ASP.NET - '@ 0')。SQLインジェクションは依然として脅威ですか?
これが依然として脅威である場合、クラッカーはこれらのパラメータをどのように上書きまたは回避しますか?
OWASPによると、それは(ASP.NETが出てきた長い後)まだ2013年にトップの脅威だった:https://www.owasp.org/index.php/Top_10_2013-A1-Injection
パラメータ化されたSQLは、SQLインジェクションを心配する必要は削除されません。私は以前の開発者がパラメータとして文字列を取得し、その文字列を含むいくつかの動的SQLを作成し、それを実行するストアドプロシージャを作成した会社で働いていました。彼らはパラメータ化されているので安全だと主張していましたが、SQLコードをストアドプロシージャに渡して実行できることを示すことができました。
また、パラメータをサポートする言語を使用しているため、SQLインジェクションから安全であると主張しても、毎回パラメータを使用しているわけではありません。あなたのデータベースにコードを挿入できるのは、誰かのために1つだけです。
はい、SQLインジェクションは依然として脅威です。これらのタイプのものには常に新しい脆弱性が存在します。
注射が依然として脅威と考えられる理由はいくつかあります。
これはほんのわずかです。ただし、SQLデータベースを使用する場合は覚えておいてください。一般の人々がプロジェクトを使用する前に、プロジェクトの脆弱性を考慮してください。
私は、パラメータ化を適切に使うことで、効果的にSQLインジェクションの脅威を効果的に排除することができます。ハッカーは何かをパラアタライズすることはできません。 あなたが記述した状況は、プログラマーがあらかじめコンパイルされたクエリの利点を多かれ少なかれ除去したという点で非常に特有です。有効ですが、おそらくOPが尋ねていたものではありません。興味深いもの: – user2752635
だから、SQLインジェクションはもっとスリップアップに基づいていますか?答えをありがとう: –
@ user2752635文字列の内容がコードとして誤解される可能性がありますが、どうすればそれを避けることができますか? –