11. ブラインド噴射時間
シーンのデモ
また、これは死にます
使用 SLEEP ()関数は、この関数の背景は、注入点の記載がある場合
この時点で、ブラウザは、しばらくの間、ロードします
コンソールの外観を開きます
実際にこの機能を実行します
これは、時間に応じた時間に基づいて決定されなければならない。真偽は、戻りの先端に基づいて決定されます
ことであれば、判定文で、trueの場合は、ロードし5 falseは、ロードされていない場合は秒。
12. ことで SQLI リモートコントロールサーバ
独自のデータベースと操作するサイトを構築する必要性
それは書かれています
私たちは、見ることができます SELECT 限り、内容がファイルに書き込まれ、PHP 、この構文が正しい、ファイルが実行されます。
そのアクセスで見てみましょう
ためのGET リクエストが、対応するパラメータを取得するためにテスト、およびリモートコードのパラメータはに渡します。
我々は、リンクのいずれかによって行うことができる PHP コード。
リモートコマンドの実行
使用システム(PHPのオペレーティングシステムのコマンドを実行するために使用される機能)、パラメータは次のように渡されるシステム・コマンドの実行
実装について
パラメータは、様々なコマンドに直接書き込むことができます
13. ブルートで SQLI におけるアプリケーションの脆弱性
シーンのデモ(文字)
パッケージについて来ました
送られた侵入者(ブルートフォースすべき対象であるAA )
ここだけのプレゼンテーションを行うために、我々は独自の辞書をアップロードすることができます。
始めます
私たちは、テーブル名を推測するために、このメソッドを使用することができます
我々が扱っていない場合は MySQLのデータベースは、私たちは、クロールにこの方法を使用することができるとき
14.sqlmapのツールが起動し、ケースを説明しましょう
-u:測定を示すURLを
シーンのデモ(真と偽のブラインドに基づきます)
ここでは、エントリポイントがあります
この文をコピーし、起動 SQLMAPを
ヒットは、彼らが自動的にテストを開始し、入力します。
直接はその見つかった名前があり、そこに注入されていることであるGETのタイプ、タイプUNIONクエリ、ブラスト声明など
より詳細なお問い合わせ、
--current-DBは 、現在のデータベース名を取得します
データベース名へのダイレクトアクセス
獲得テーブル
-D データベース名--tables
テーブルに着きます
どの列名のリストを取得します。
-D データベース名-TのGETにテーブルほしいです--columns
取得するには、ユーザーのテーブルのカラム名を
取得したユーザ名、パスワードの値を
-D データベース名-Tのテーブル-C 列名を取得したい--dump
ハッシュ値が(付属しています辞書を選択し、ブルートを選択し、存在していない 1 )、ベースのサフィックスがノックアウトラウンドマッチせずにそれを行うための最初の方法であることを
ブレイクアウト