web-dev-qa-db-ja.com

sqlmapを使用して特別な形式の脆弱性を悪用するにはどうすればよいですか?

ZAPプロキシを使用して、ログインがGETリクエストでログイン可能であると判断しました。 "AND" 1 "=" 1は注入可能でしたが、次の形式でURLが返されました。

https://example.com/login%22%20AND%20%221%22=%221

私はチェックしました、そしてそれはその時点で注射可能です、しかし私はそれを利用するためにどのパラメータを使うべきかわかりません。リダイレクトが無効になっている(図には示されていません)現在のセットアップが機能していません。設定は次のとおりです。

sqlmap -u "https://example.com/login%22%20AND%20%221%22=%221" --level=5 --risk=3 --fingerprint --common-tables --dbs --all --common-columns --technique=BEUSTQ --keep-alive --dependencies --hex --timeout=120 --time-sec=10

何らかの理由で、無効にされている場合でも、sqlmapはlogin" AND "1"="1#1*に変更しています。

1
Sanic Rider

このURLはhttps://example.com/login" AND "1"="1です。このパラメータにはそのように使用することはできません。

SqlMap には、*charを使用できるオプションがあります。

URI注入ポイント

インジェクションポイントがURI自体の中にある特別な場合があります。 sqlmapは、手動で指定されない限り、URIパスに対して自動テストを実行しません。コマンドラインでこれらのインジェクションポイントを指定するには、sqlmapでテストしてSQLインジェクションを活用する各URIポイントの後にアスタリスク(*)を追加します。

これは、たとえば、ApacheWebサーバーのmod_rewriteモジュールが使用されている場合や他の同様のテクノロジーの場合に特に役立ちます。

有効なコマンドラインの例は次のとおりです。

$ python sqlmap.py "http://targeturl/param1/varlue1*/param2/value2"
3
s3yfullah