Skip to content

feat(web-security): add interactsh API as native callback provider#83

Merged
GangGreenTemperTatum merged 1 commit into
mainfrom
ads/cap-1143-support-appinteractshcom-in-get_callback
Jul 9, 2026
Merged

feat(web-security): add interactsh API as native callback provider#83
GangGreenTemperTatum merged 1 commit into
mainfrom
ads/cap-1143-support-appinteractshcom-in-get_callback

Conversation

@GangGreenTemperTatum

Copy link
Copy Markdown
Contributor

Adds a pure-Python interactsh client as a second-priority callback provider, sitting between webhook.site (primary) and interactsh-client CLI (fallback). This enables OOB testing via app.interactsh.com's protocol without requiring the Go binary to be installed.

Protocol implementation:

  • RSA-2048 keypair generation for secure interaction retrieval
  • POST /register with base64-encoded PEM public key
  • GET /poll with AES-256-CTR + RSA-OAEP decryption of interactions
  • POST /deregister for cleanup on reset
  • Tries all 6 public interactsh servers (oast.pro/live/site/online/fun/me)
  • Supports INTERACTSH_SERVER env var for custom/self-hosted servers

Provider priority: webhook_site → interactsh_api → interactsh_cli

Changes:

  • tools/callback.py: Add _InteractshSession, crypto helpers, register/poll/deregister
  • tests/test_callback.py: 55 tests covering all 3 providers, crypto round-trip, fallback orchestration, deduplication, and tool method behavior
  • capability.yaml: Add cryptography>=41.0 dependency

Closes CAP-1143

Adds a pure-Python interactsh client as a second-priority callback
provider, sitting between webhook.site (primary) and interactsh-client
CLI (fallback). This enables OOB testing via app.interactsh.com's
protocol without requiring the Go binary to be installed.

Protocol implementation:
- RSA-2048 keypair generation for secure interaction retrieval
- POST /register with base64-encoded PEM public key
- GET /poll with AES-256-CTR + RSA-OAEP decryption of interactions
- POST /deregister for cleanup on reset
- Tries all 6 public interactsh servers (oast.pro/live/site/online/fun/me)
- Supports INTERACTSH_SERVER env var for custom/self-hosted servers

Provider priority: webhook_site → interactsh_api → interactsh_cli

Changes:
- tools/callback.py: Add _InteractshSession, crypto helpers, register/poll/deregister
- tests/test_callback.py: 55 tests covering all 3 providers, crypto round-trip,
  fallback orchestration, deduplication, and tool method behavior
- capability.yaml: Add cryptography>=41.0 dependency

Closes CAP-1143
@GangGreenTemperTatum GangGreenTemperTatum merged commit 4e2636d into main Jul 9, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant