
SQLMap tamper apiは、あらゆる言語のtamperスクリプトを受け入れます
SQLmap用の改変スクリプト(tamper script)のAPIです。お好みのプログラミング言語を使って改変スクリプトを記述できます。
このAPIは、SQLmapが改変スクリプトの記述にPythonしか受け付けないという制限を解決します。
taper-api.py スクリプトは、ペイロード と kwargs をJSON形式({"payload": "", "kwargs": {"headers": {}}})で外部の改変スクリプトの標準入力(STDIN)に引数として送信します。
そこから外部スクリプトがJSONを解析・処理し、再びJSON形式で標準出力(STDOUT)に出力します。tamper-api.py がそのJSONを読み取り・解析し、SQLmapに送信します。
,-------(オブジェクトを返す)---------,
| |
[ sqlmap ] --(オブジェクトを送信)--> [tamper-api] --(JSONを送信)--> [your-script]
^ |
|________(JSONを返す)________|
例
#!/usr/bin/env ruby
#
# Author: KING SABRI | @KINGSABRI
# Description: 与えられたペイロード内のすべての文字をBase64エンコードする
# Requirements: なし
#
require 'json'
require 'base64'
@json = JSON.parse(ARGV[0])
@payload = @json["payload"]
@kwargs = @json["kwargs"]
@json["payload"] = Base64.urlsafe_encode64(@payload)
print @json.to_json
忘れずに:
tamper-api.py スクリプトを sqlmap/tamper ディレクトリにコピーしてください。tamper-scripts/[YOUR_LANGUAGE] を確認してください。sqlmap -v3 -u http://example.com/pages.php?page=1 --tamper tamper-api base64encode.rb
https://github.com/[USERNAME]/sqlmap-multi-language-tamper.gitgit checkout -b YourBranchgit add * && git commit '説明'または、新しいリクエストやバグ報告のために Issue を開いてください!