Open12

Burp MCPを使ってみる

ニョーンニョーン

BurpはCommunity Edition。
BApp Storeからインストールできる。

ニョーンニョーン

今回はCursor経由で使う。(そもそもMCPツール自体あまり使ったことがない)

ニョーンニョーン

Burp側はExtensionをインストールしておけば勝手に有効になってた

ニョーンニョーン

https://github.com/portswigger/mcp-server?tab=readme-ov-file#manual-installations あたりを参考にCursorの設定をする。

(少なくともLinux環境では)BurpをインストールしたときについてきたJavaのパスと、拡張機能の.jarパスを設定すると動く。

.cursor/mcp.json
{
  "mcpServers": {
    "burp": {
      "command": "~/BurpSuiteCommunity/jre/bin/java",
      "args": [
          "-jar",
          "~/.BurpSuite/mcp-proxy/mcp-proxy-all.jar",
          "--sse-url",
          "http://127.0.0.1:9876"
      ]
    }
  }
}

拡張機能のパスはインストールしたBurp MCPのOutputから確認できた。

ニョーンニョーン

MCPサーバーを使ってくれなくて困っていたが、プロジェクトに設定するでなく、グローバルに設定したら使ってくれた。
そういうものなのだろうか(gitリポジトリになってないから?しらんけど)

ニョーンニョーン

ところでBurp MCPはプロキシログを記録してくれないのか...?

(リピーターの設定とか、設定情報の取得はできた)

ニョーンニョーン

元記事にも書いてあったわ...

リクエストは送ることができるが,http historyやRepeaterのresponseにはログが残らない。なぜなら,MCP ServerはBurp自体を操作しているのではなく,Burp APIを使ってBurpを操作しているためである。
だが,変わりにLoggerタブにログが出力されているので証跡が残らないわけではない。
https://qiita.com/sigma_devsecops/items/a49b7df6e772256759ee#repeaterから連続してリクエストを送る

ニョーンニョーン

使い道ががわからんな。プロキシログの取得とかはできるので、まとめたりするのには使えるかもしれない。

(DVWAがコンテキストに入ってしまってあれな感じだけどまぁ)