web-dev-qa-db-ja.com

自動インクリメントパラメータを使用したSQLインジェクション

私は現在APIペンテストを実行しており、API呼び出しの1つにSQLiがあると思います。 Webサービスの特定のアイテムを更新し、リクエストごとにバージョン番号を増やす必要があります。

リクエストの本文は基本的に次のとおりです。

{"id":"1234","version":2,"name":"sqli-here*"}

次のリクエストは次のようにする必要があります。

{"id":"1234","version":3,"name":"sqli-here*"}

スクリプトで mitmproxy を使用して、自動的にバージョンを上げるか、SQLiを手動でスクリプト化できます。

SQLMapまたはBurp Proでこれを実現する方法はありますか?

1

--eval SQLMapのパラメータ、理論的には:

-data='{"id": 1}' --eval "f = open('cnt.txt','r+'); id = int(f.readline()); f.seek(0,0); f.write(str(id+1)); f.close()"

詳細については http://aetherlab.net/2014/07/advanced-sqlmap-features-eval/ を参照してください-基本的に、SQLMapはJSONデータを変更し、Pythonコード。Pythonコードはcnt.txtというファイルを読み取り(手動で作成する必要があります)、ID変数をインクリメントする前に、その値を使用してID変数を置き換えますファイルに保存されます。

3
Matthew