1. SQL インジェクションとは何ですか? SQL インジェクションは、入力パラメータに SQL コードを追加し、それを SQL サーバーに渡して解析および実行する攻撃方法です。 2. それはどのようにして起こったのですか? ウェブ開発者は、すべての入力がサニタイズされていることを保証できない 攻撃者はSQLサーバーに送信された入力データを使用して実行可能なSQLコードを構築します。 データベースはセキュリティのために構成されていません 3. SQL の脆弱性を見つけるにはどうすればいいですか? Webアプリケーション内のすべての入力ポイントを識別する どのような種類のリクエストが例外をトリガーするかを理解していますか? (特殊文字 " または ') サーバー応答の異常を検出する 4. SQL インジェクション攻撃を実行するにはどうすればいいですか? デジタルインジェクション: id=1 または 1=1 の場合、tablename から * を選択します。 文字列の挿入: MySQL のコメント機能: # と -- の後の文字はコメントアウトされているため、どのようなパスワードを入力しても正しく照会できます。画像の説明を入力するにはここをクリックしてください 5. SQL インジェクションを防ぐにはどうすればいいですか? 入力形式を厳密にチェックします: is_numeric(var)、tp5検証を検証し、正規表現を使用して文字列が[A-Za-z]の範囲内であるかどうかを確認します。 エスケープ: addslashes(str), エスケープするためのmysqli_escape_string()関数 6.MySQLiのプリコンパイルメカニズム パラメータ化されたバインディング パラメータ化されたバインディングは、SQL インジェクションを防ぐもう 1 つの障壁です。 PHP MySQLi と PDO はどちらもこのような機能を提供します。たとえば、MySQLi では次のようにクエリを実行できます。 PDO はさらに便利です。たとえば、次のようになります。 以下もご興味があるかもしれません:
|
>>: Node.js でメモリ効率の高いアプリケーションを作成する方法
IPマスカレードとポート転送Firewalldは2種類のネットワークアドレス変換をサポートしています...
一般的には、左側にメニューがあった後、ページの上部に履歴タブ メニューを追加する必要があります。他の...
Ubuntu仮想マシンでのシリアル通信にcutecomを使用する1. cutecomをインストールす...
<br />それぞれのトピックについて、チーム内でメールで議論します。議論が白熱するにつ...
MySQL データベースの作成MySQL サービスにログインしたら、create コマンドを使用し...
質問アップロードするファイルのタイプを accept に追加することは、「表面的な」役割しか果たしま...
1. MySQL独自のストレステストツールMysqlslap mysqlslap は、mysql に...
目次1 マウントディレクトリとファイルを作成する2 Redisイメージを取得する3 コンテナを作成し...
MySQL ビュー簡単に言えば、MySQL ビューは SELECT コマンドを定義するためのショート...
VMware vSphere は、業界をリードする最も信頼性の高い仮想化プラットフォームです。 v...
1. MySQLは現在の日付と時刻を取得する関数1.1 現在の日付 + 時刻 (日付 + 時刻) ...
大学 4 年生のときのインターンシップ中に、表内のデータの番号をクリックすると、そのデータの下に新し...
序文前回の記事では Hadoop をインストールしましたが、今回は Hbase をインストールします...
VMware Toolsをインストールすると、仮想マシンホスト間で①テキストをコピーして貼り付けるこ...
目次1. JavaScriptの問題2. TypeScriptの利点3. TypeScriptの欠点...