public interface IExtensionHelpers
IBurpExtenderCallbacks.getHelpers
を呼び出すと、このインタフェースのインスタンスを取得できます。修飾子と型 | メソッドと説明 |
---|---|
byte[] |
addParameter(byte[] request,
IParameter parameter)
HTTPリクエストに新しいパラメータを追加し、必要に応じてContent-Lengthヘッダを更新します。
|
IRequestInfo |
analyzeRequest(byte[] request)
HTTPリクエストを分析し、それについて各種のキーの詳細を取得します。
|
IRequestInfo |
analyzeRequest(IHttpRequestResponse request)
HTTPリクエストを分析し、それについて各種のキーの詳細を取得します。
|
IRequestInfo |
analyzeRequest(IHttpService httpService,
byte[] request)
HTTPリクエストを分析し、それについて各種のキーの詳細を取得します。
|
IResponseInfo |
analyzeResponse(byte[] response)
HTTPレスポンスを分析し、それについて各種のキーの詳細を取得します。
|
IResponseKeywords |
analyzeResponseKeywords(java.util.List<java.lang.String> keywords,
byte[]... responses)
1つ以上のレスポンスを分析して指定したキーワードの出現回数を調べ、各キーワードの出現回数の詳細を取得できる
IResponseKeywords オブジェクトを返します。 |
IResponseVariations |
analyzeResponseVariations(byte[]... responses)
1つ以上のレスポンスを分析して属性の種類数を調べ、その種類の出現回数を取得できる
IResponseVariations オブジェクトを返します。 |
byte[] |
base64Decode(byte[] data)
指定されたデータをBase64デコードします。
|
byte[] |
base64Decode(java.lang.String data)
指定されたデータをBase64デコードします。
|
java.lang.String |
base64Encode(byte[] data)
指定されたデータをBase64エンコードします。
|
java.lang.String |
base64Encode(java.lang.String data)
指定されたデータをBase64エンコードします。
|
IHttpHeader |
buildHeader(java.lang.String name,
java.lang.String value)
指定された詳細情報に基づいて
IHttpHeader オブジェクトを構築します。 |
byte[] |
buildHttpMessage(java.util.List<java.lang.String> headers,
byte[] body)
指定されたヘッダとメッセージ本文を含むHTTPメッセージを構築します。
|
byte[] |
buildHttpRequest(java.net.URL url)
指定されたURLへの GET リクエストを作成します。
|
IHttpService |
buildHttpService(java.lang.String host,
int port,
boolean useHttps)
指定された詳細情報に基づいて
IHttpService オブジェクトを構築します。 |
IHttpService |
buildHttpService(java.lang.String host,
int port,
java.lang.String protocol)
指定された詳細情報に基づいて
IHttpService オブジェクトを構築します。 |
IParameter |
buildParameter(java.lang.String name,
java.lang.String value,
byte type)
指定された詳細情報に基づいて
IParameter オブジェクトを構築します。 |
java.lang.String |
bytesToString(byte[] data)
バイト配列から文字列形式にデータを変換します。
|
IParameter |
getRequestParameter(byte[] request,
java.lang.String parameterName)
HTTPリクエスト内の指定したパラメータの詳細を取得します。
|
int |
indexOf(byte[] data,
byte[] pattern,
boolean caseSensitive,
int from,
int to)
指定したパターンがデータ内で最初に出現する部分を検索します。
|
IScannerInsertionPoint |
makeScannerInsertionPoint(java.lang.String insertionPointName,
byte[] baseRequest,
int from,
int to)
指定された詳細に基づいて
IScannerInsertionPoint オブジェクトを構築します。 |
byte[] |
removeParameter(byte[] request,
IParameter parameter)
HTTPリクエストからパラメータを削除し、必要に応じてContent-Lengthヘッダを更新します。
|
byte[] |
stringToBytes(java.lang.String data)
データを文字列からバイト配列に変換します。
|
byte[] |
toggleRequestMethod(byte[] request)
リクエストのメソッドのGETとPOSTを切り替えます。
|
byte[] |
updateParameter(byte[] request,
IParameter parameter)
HTTPリクエスト内のパラメータ値を更新し、必要に応じてContent-Lengthヘッダを更新します。
|
byte[] |
urlDecode(byte[] data)
指定したデータをURLデコードします。
|
java.lang.String |
urlDecode(java.lang.String data)
指定したデータをURLデコードします。
|
byte[] |
urlEncode(byte[] data)
指定したデータをURLエンコードします。
|
java.lang.String |
urlEncode(java.lang.String data)
指定したデータをURLエンコードします。
|
IRequestInfo analyzeRequest(IHttpRequestResponse request)
request
- 分析するリクエストを含んだIHttpRequestResponse
オブジェクト。IRequestInfo
オブジェクト。IRequestInfo analyzeRequest(IHttpService httpService, byte[] request)
httpService
- リクエストに関連付けられたHTTPサービス。これはオプションで、null
の場合はIRequestInfo
オブジェクトは完全なリクエストURLを持ちません。request
- 分析するリクエスト。IRequestInfo
オブジェクト。IRequestInfo analyzeRequest(byte[] request)
IRequestInfo
オブジェクトは、完全なURLを持ちません。完全なURLを取得するには、analyzeRequest()
をオーバーロードした他のメソッドを使用してください。request
- 分析するリクエスト。IRequestInfo
オブジェクト。IResponseInfo analyzeResponse(byte[] response)
response
- 分析するレスポンス。IResponseInfo
オブジェクト。IParameter getRequestParameter(byte[] request, java.lang.String parameterName)
analyzeRequest()
を使用してください。request
- 指定したパラメータを検査するリクエスト。parameterName
- 取得するパラメータの名前。IParameter
オブジェクト、またはパラメータが存在しない場合はnull
。java.lang.String urlDecode(java.lang.String data)
data
- デコードするデータ。java.lang.String urlEncode(java.lang.String data)
data
- エンコードするデータ。byte[] urlDecode(byte[] data)
data
- デコードするデータ。byte[] urlEncode(byte[] data)
data
- エンコードするデータ。byte[] base64Decode(java.lang.String data)
data
- デコードするデータ。byte[] base64Decode(byte[] data)
data
- デコードするデータ。java.lang.String base64Encode(java.lang.String data)
data
- エンコードするデータ。java.lang.String base64Encode(byte[] data)
data
- エンコードするデータ。byte[] stringToBytes(java.lang.String data)
bytesToString()
メソッドとは反対の変換を行い、この二つのメソッドを使い文字列に変換したバイトベースのデータとそれを戻したデータは、完全性の維持が保証されます(ただし指定された文字セットを反映する変換では当てはまりません)。data
- 変換するデータ。java.lang.String bytesToString(byte[] data)
stringToBytes()
メソッドとは反対の変換を行い、この二つのメソッドを使い文字列に変換したバイトベースのデータとそれを戻したデータは、完全性の維持が保証されます(ただし指定された文字セットを反映する変換では当てはまりません)。data
- 変換するデータ。int indexOf(byte[] data, byte[] pattern, boolean caseSensitive, int from, int to)
String.indexOf()
と同じように、バイトベースのデータで動作します。data
- 検索するデータ。pattern
- 検索するパターン。caseSensitive
- 検索で大文字小文字を区別するかどうかのフラグ。from
- 検索を開始するdata
のオフセット。to
- 検索を終了するdata
のオフセット。byte[] buildHttpMessage(java.util.List<java.lang.String> headers, byte[] body)
headers
- メッセージに含めるヘッダのリスト。body
- メッセージのボディ、ない場合はnull
。byte[] buildHttpRequest(java.net.URL url)
url
- リクエストを作成するURL。byte[] addParameter(byte[] request, IParameter parameter)
request
- パラメータを追加するリクエスト。parameter
- 追加するパラメータの詳細を含んだIParameter
オブジェクト。サポートしているパラメータ形式は次の通りです: PARAM_URL
、PARAM_BODY
、PARAM_COOKIE
。byte[] removeParameter(byte[] request, IParameter parameter)
request
- パラメータを削除するリクエスト。parameter
- 削除するパラメータの詳細を含んだIParameter
オブジェクト。サポートしているパラメータ形式は次の通りです: PARAM_URL
、PARAM_BODY
、PARAM_COOKIE
。byte[] updateParameter(byte[] request, IParameter parameter)
removeParameter()
を呼び出して古いタイプのパラメータを削除し、その後addParameter()
を呼び出して新しいタイプのパラメータを追加してください。request
- 更新するパラメータを含んだリクエスト。parameter
- 更新するパラメータの詳細を含んだIParameter
オブジェクト。サポートしているパラメータ形式は次の通りです: PARAM_URL
、PARAM_BODY
、PARAM_COOKIE
。byte[] toggleRequestMethod(byte[] request)
request
- メソッドを切り替えるHTTPリクエスト。IHttpService buildHttpService(java.lang.String host, int port, java.lang.String protocol)
IHttpService
オブジェクトを構築します。host
- HTTPサービスホスト。port
- HTTPサービスポート。protocol
- HTTPサービスプロトコル。IHttpService
オブジェクト。IHttpService buildHttpService(java.lang.String host, int port, boolean useHttps)
IHttpService
オブジェクトを構築します。host
- HTTPサービスホスト。port
- HTTPサービスポート。useHttps
- HTTPサービスプロトコルにHTTPSかHTTPを使用するかどうかのフラグ。IHttpService
オブジェクト。IParameter buildParameter(java.lang.String name, java.lang.String value, byte type)
IParameter
オブジェクトを構築します。name
- パラメータ名。value
- パラメータ値。type
- IParameter
インタフェースで定義されている、パラメータタイプ。IParameter
オブジェクト。IHttpHeader buildHeader(java.lang.String name, java.lang.String value)
IHttpHeader
オブジェクトを構築します。name
- ヘッダ名。value
- ヘッダ値。IHttpHeader
オブジェクト。IScannerInsertionPoint makeScannerInsertionPoint(java.lang.String insertionPointName, byte[] baseRequest, int from, int to)
IScannerInsertionPoint
オブジェクトを構築します。ベースリクエスト内の固定位置にペイロードを配置した単純な挿入ポイントを素早く作成する場合に使用します。insertionPointName
- 挿入ポイントの名前。baseRequest
- スキャンリクエストを作成するリクエスト。from
- ペイロードポジションの開始オフセット。to
- ペイロードポジションの終了オフセット。IScannerInsertionPoint
オブジェクト。IResponseVariations analyzeResponseVariations(byte[]... responses)
IResponseVariations
オブジェクトを返します。responses
- 分析するレスポンス。IResponseVariations
オブジェクト。IResponseKeywords analyzeResponseKeywords(java.util.List<java.lang.String> keywords, byte[]... responses)
IResponseKeywords
オブジェクトを返します。keywords
- 検索するキーワード。responses
- 分析するレスポンス。IResponseKeywords
オブジェクト。