Skip to main content

SQL注入とは何ですか?

struction Structured Query Language(SQL)インジェクションは、データベース駆動型のWebサイトに対してほとんど常に試みられる攻撃の一種です。サイトを駆動するデータベースのテーブルに保存されているデータを破壊、変更、または表示することにより、データ管理を妨害するために、サイトのSQLクエリに悪意のあるコードを挿入することは努力です。SQLは、データベースに保存されているデータを作成、更新、取得するために採用されている標準的なプログラミング言語です。クレジットカード番号、人の医療記録、オンラインバンキングや電子メールなどのアカウントのユーザー名、パスワード、およびさまざまなタイプの識別番号などの機密情報をサイバー犯罪者に公開することができます。データの盗難は、おそらくSQLインジェクションを使用しようとする人の主な目標ですが、クロスサイトスクリプティングなど、このまたは他のタイプのコードインジェクション技術を使用する唯一の動機ではありません。嫌いな情報を表示するウェブサイトへの訪問者は、SQLインジェクション攻撃を試みてサイトを無効にしたり、データを盗んだり、サイトの後ろの人々のミッションを破壊したりする可能性があります。サイトの所有者によってアカウントを禁止したかもしれない不満を抱いた訪問者は、サイトの人気をうらやむか、彼または彼女が敵であると考えている誰かのオンラインビジネスを破壊しようとしています。SQLの知識は明らかにSQLインジェクション攻撃を開始するために必要ですが、他のプログラミング言語と比較して、一般的に学習するのが非常に難しい言語とは見なされておらず、基本的な、しかし使用方法の堅実な理解だけで多くを達成できます。それ。これは、Webサイトに対してSQLインジェクションを試みるために必要なスキルを持っているインターネットをサーフィンする人がいることを意味します。彼らはSQL注入に対して安全です。このような重要なセキュリティを達成するための方法はほとんど常にあります。これらの方法のほとんどは、単純だが非常に効果的なソリューションと見なされています。たとえば、開発者は、HyperText Preprocessor(PHP)言語でスクリプトするときにMySQL_REAL_ESCAPE_STRING()関数または準備されたステートメントを使用できます。攻撃を防ぐために選択された方法は、セキュリティをセットアップしてもサイト全体のパフォーマンスを無視することはできないため、慎重に考慮する必要があります。