SQLインジェクションの脆弱性の簡単な説明

SQLインジェクションの脆弱性とは

バイドゥは説明した:

SQLインジェクションとは、ユーザーが入力したデータの合法性をWebアプリケーションが判断しないか、フィルタリングが厳密でないことを意味します。攻撃者は、管理者の知らないうちに、Webアプリケーションで定義されたクエリステートメントの最後にSQLステートメントを追加できます。不正な操作の場合、データベースサーバーを欺いて、不正なクエリを実行し、対応するデータ情報をさらに取得します。

SQLインジェクションの根本的な原因を個人的に理解します。

データベースと対話するステートメントを作成する場合、ユーザーが入力したデータは、コンテンツをフィルタリングせずに直接sqlステートメントでスプライスされます。その結果、ユーザーはステートメント全体の構造を変更できるため、直接フィルターをかけずに異なるデータベース操作ステートメントを生成できます。実行するデータベースエンジン。

SQLインジェクションがWebサイトに害を及ぼす

攻撃者は、データベースを直接または間接的に操作できます。SQLインジェクションの害は、常にowaspランキングリストのトップ10にランクされています。その害は自明であり、データと権限を直接取得できますが、危険な動作に注意を払い、境界を越えないでください。

SQLインジェクションの脆弱性Webサイトを掘り下げる方法:

ブラックボックス侵入テスト

Webサイトの各パラメーター値について、データベースと対話するかどうかを検討します。たとえば、ランディングページ、httpヘッダーの取得(user-agent / client-ipなど)、注文処理、クエリ関数

ホワイトボックスのセキュリティテスト

コードを読み、データベース関連のステートメントを探すか、関連する関数ポイントを組み合わせて、目的の方法でSQLステートメントを見つけます。白黒のボックスチェックを行うと、大量のコードがより効率的に表示され、主に受信パラメーターが直接かどうかを確認できます。スプライシング、入力パラメーターが完全なフィルター機能によってフィルターされるかどうか。PHPのpdoがプリコンパイルされているかどうかなど、他のSQLステートメント作成モードが採用されているかどうか、そしてもちろんプリコンパイルは完全に安全ではありません。

このWebサイトのSQLインジェクションの脆弱性を発見した場合

データベースのコンテンツをクエリし、Webサイトのデータを取得し、バックグラウンドでログインするためのバックグラウンドログインアカウントのパスワードを取得し、コンテンツのフィッシングやその他の間接的な使用を変更します(権限が小さい場合)。データベースを使用して直接権限を増やし、文章を書き、システムコマンドを実行します(権限が十分な場合)。待って。

この脆弱性の使い方

インターネット上のSQLインジェクションはrceと同じではありません。SQLインジェクションは、Webサイトがデータベースと相互作用する場所を簡単に推測できるため、ブラックボックス出力SQLインジェクションの脆弱性も非常に多くなりますが、より安全な
Webサイトと比較されます関数のインポートとフィルタリングの一連の処理により、ブラックボックスも非常に大きくなります。ホワイトボックスの利点は、フィルタリングされたもの、SQLステートメントの記述方法
、データベースにスプライスされているかどうかなどを確認できることです。ターゲットを絞った、つまり、コードの内容はより多くなります。追跡し、上下に照会します。ここに文があります、sqlmapは非常に優れたツールであり、高度な自動化で知られているため、
侵入時の時間を大幅に節約できます。ほとんどの人が知っており、使用したと思いますが、ツールはまだツールです。ポイント。

発見された脆弱性を修正する方法

一般的な方法は多数ありますが、簡単な方法は、既製のフィルター関数を直接インポートすることです。たとえば、360safe関数やdedecmsで使用されるフィルター関数は非常に使いやすいですが、
完全に安全であるとは限りません。コードを入力すると、関数は認識されず、直接無効になります。したがって、最も重要なことは、プリコンパイルやその他の操作などのSQLステートメントを作成するときの仕様と、組み込みの
フィルター関数です。ここに文を挿入します。ほとんどの場合、単一引用符をフィルターするだけで、ほとんどのSQLに抵抗できます。インジェクト、単一引用符をラップせずに直接デジタルタイプをスプライスしない限り、自然
に単一引用符をフィルタリングすることは無意味です。入力値をパラメーター化することも予防策ですが、絶対的なものは常になく、例は引用されません。大物は理解しており、入力は必要ありません。また、wafを購入した場合、
座ってリラックスできます。wafは抜け穴を修正できません。wafはマスターの前にブロッキング機能がありません。wafに関する説明も後で説明しますが、あまりよくありません。エラーがある場合は修正してください。

おすすめ

転載: www.cnblogs.com/xiaqingfeng/p/12740035.html