MCPInstall

authenticated-session-acquisition

Acquire an authenticated session THROUGH MFA/OTP on an in-scope target and emit a reusable session artifact (Playwright storageState + Bearer) so executors can test the post-auth attack surface. Use when the highest-value authenticated classes (BOLA/IDOR/mass-assignment/injection on the real data APIs) are blocked because login is gated by SMS-OTP or TOTP MFA. Distinct from the authentication skill (which ATTACKS auth); this one legitimately authenticates and hands the session to the rest of the engagement.

Installs
111
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/transilienceai/communitytools --skill authenticated-session-acquisition
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads authenticated-session-acquisition automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Authenticated Session Acquisition

On financial and multi-tenant targets the login is gated by SMS OTP / TOTP MFA that an autonomous run cannot satisfy, so the post-auth surface (BOLA/IDOR/mass-assignment/injection on the real data APIs, session handling, API pivots) silently collapses to pre-auth findings only. This skill's job is narrow and concrete: get one legitimate authenticated session and hand it to the executors as a reusable artifact. It does not attack the auth mechanism — see authentication for that.

The artifact contract (how the session reaches executors)

Emit both, into the engagement's OUTPUT_DIR, referenced BY NAME (never inline secrets — credential-loading.md):

  • OUTPUT_DIR/<asset>/session/storageState.json — the Playwright storage state (cookies + localStorage) for browser-driven post-auth testing.
  • OUTPUT_DIR/<asset>/session/bearer.txt — the raw access/ID token (+ its expires_at) for direct API replay.

Executors consume these exactly like any env-loaded secret: the scope file's creds_env names the realm, and the session path is passed as a file reference, so no token is ever written into a prompt, experiments.md, or attack-chain.md. Re-run this skill when the token expires (record expires_at; refresh rather than re-login where a refresh token exists).

Modes (pick by what the client can provide)

ModeWhenHow
TOTP-from-seedThe client shared the TOTP secret (Base32 seed) for a test accountGenerate the current code deterministically with tools/totp_now.py <BASE32_SEED>, submit it in the login flow. Fully autonomous, repeatable.
Explicit-OTPThe operator can read a one-time code (SMS/email/authenticator) at run timeDrive login to the OTP prompt, the operator supplies the code once, continue.
Human-in-the-loop resumeOTP arrives out-of-band and the run must pausePersist the pre-OTP browser context, pause; the operator completes the challenge; resume and capture storageState.

Provider recipes

Detailed per-IdP flows are in reference/session-acquisition.md: Auth0, Okta, Amazon Cognito (SRP auth + the UNSIGNED unauthenticated-posture check), and Descope. Each recipe ends by exporting storageState.json + bearer.txt in the contract above.

When a session cannot be acquired — defer honestly, do not fake

If no test account / OTP seed is available and no OTP can be relayed, the realm's post-auth surface is untestable through no fault of the tester. Record it honestly instead of a fabricated NA or a silent miss:

  1. File a client-input request at reports/client-input-requests/CIR-NNN.md naming exactly what's needed ("needs test account / OTP seed / allowlist for <realm>").
  2. Set a realm-level BLOCKED_REASON in attack-chain.md.
  3. Mark that realm's post-auth coverage cells status:"deferred" in coverage.json, each carrying deferral_reason + client_input_request (the CIR path) — see coverage-matrix.md. The deterministic gate then discloses the deferred surface in the report rather than hiding it, and only the parent orchestrator (via coverage_gate.py --accept-deferrals) may finalize a substantiated-deferred engagement. A scope that is entirely auth-gated never completes.

The preflight cred-reach probe (preflight-checklist.md, Phase-1 gate) is what triggers this path: present creds are not working creds; verify reachability per realm before spawning post-auth executors.

Workflow

  1. Read the scope: which realms/tenants are in creds_env, which assets are behind them, roe.reversible_writes for the test tenant.
  2. Identify the IdP (login redirect host / /.well-known/openid-configuration / SDK bundle) → pick the recipe.
  3. Acquire the session in the appropriate mode → write storageState.json + bearer.txt.
  4. Verify: one minimal authenticated request returns an authorized response (not 401/403/login-redirect).
  5. Hand the artifact paths to the post-auth executor batch; on failure, run the defer path above.

Anti-Patterns

  • Do not paste tokens, seeds, or cookies into prompts, experiments.md, attack-chain.md, or any tools/*.md — reference the artifact file by path only.
  • Do not brute-force or bypass the OTP/MFA challenge here — that is an authentication finding, not session acquisition.
  • Do not mark an MFA-blocked cell covered/NA — mark it deferred with a filed CIR so the gate discloses it.
  • Do not test outside the authenticated tenant you were given, and honor roe.reversible_writes (create-then-delete only in your own test tenant).

Reference

  • reference/session-acquisition.md — per-IdP acquisition recipes (Auth0 / Okta / Cognito / Descope) + the storageState/Bearer export.
  • tools/totp_now.py — stdlib RFC-6238 TOTP generator (the TOTP-from-seed mode).

FAQ

What does the authenticated-session-acquisition skill do?

Acquire an authenticated session THROUGH MFA/OTP on an in-scope target and emit a reusable session artifact (Playwright storageState + Bearer) so executors can test the post-auth attack surface. Use when the highest-value authenticated classes (BOLA/IDOR/mass-assignment/injection on the real data APIs) are blocked because login is gated by SMS-OTP or TOTP MFA. Distinct from the authentication skill (which ATTACKS auth); this one legitimately authenticates and hands the session to the rest of the engagement.

How do I install authenticated-session-acquisition?

Run npx skills add https://github.com/transilienceai/communitytools --skill authenticated-session-acquisition in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/authenticated-session-acquisition/ (personal) or .claude/skills/authenticated-session-acquisition/ (project).

Which AI agents can use authenticated-session-acquisition?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is authenticated-session-acquisition safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains authenticated-session-acquisition?

It is published by transilienceai in transilienceai/communitytools. It has 111 recorded installs.

More from transilienceai/communitytools

View all →

attack-path-stitcher

transilienceai/communitytools

Stitches confirmed single-asset findings into multi-hop attack paths across the organization. Builds a graph where nodes are assets and edges are confirmed exploit hops citing the findings that enable them.

1.4K installs

blockchain-security

transilienceai/communitytools

Smart contract security testing and blockchain CTF exploitation. Covers Solidity vulnerability analysis, EVM storage manipulation, delegatecall attacks, CREATE/CREATE2 address prediction, and common DeFi exploit patterns. Use when analyzing Solidity contracts, solving blockchain challenges, or testing smart contract security.

Business & Finance575 installs

hackerone

transilienceai/communitytools

HackerOne bug bounty automation - parses scope CSVs, deploys parallel pentesting agents per asset, validates PoCs, and generates platform-ready submission reports.

osint

transilienceai/communitytools

Open the skill to read its SKILL.md instructions.

237 installs

reconnaissance

transilienceai/communitytools

Open the skill to read its SKILL.md instructions.

231 installs

cve-poc-generator

transilienceai/communitytools

Open the skill to read its SKILL.md instructions.

Security218 installs

Popular backend & apis skills

View category →

find-skills

vercel-labs/skills

Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.

OfficialBackend & APIs4.1M installs

entra-app-registration

microsoft/azure-skills

Guides Microsoft Entra ID app registration, OAuth 2.0 authentication, and MSAL integration. USE FOR: create app registration, register Azure AD app, configure OAuth, set up authentication, add API permissions, generate service principal, MSAL example, console app auth, Entra ID setup, Azure AD authentication. DO NOT USE FOR: Key Vault secrets (use azure-keyvault-expiration-audit), general Azure resource security guidance.

OfficialBackend & APIs566.7K installs

This skill should be used when the user wants to "write agent code", "build an agent with ADK", "add a tool", "create a callback", "define an agent", "use state management" — in a project that needs ADK (Agent Development Kit) API patterns and code examples. It provides a quick reference for agent types, tool definitions, orchestration patterns, callbacks, state management, the graph Workflow API, and reference recipes to study. Do NOT use for scaffolding (use google-agents-cli-scaffold) or deployment (use google-agents-cli-deploy).

Backend & APIs514.8K installs

embedded-captions

heygen-com/hyperframes

Add captions or subtitles to an existing single-subject talking-head video without editing the footage. Use for plain verbatim captions, cinematic captions embedded behind the subject, VFX captions, “炸/特效/酷炫字幕,” or a named identity from the 35-style catalog. Route by visual identity, not by backend engine. The quiet anchor rail is the default; embed every word only when the user explicitly wants a fully cinematic treatment. The workflow runs locally end to end, including transcription and subject matting; split multi-shot footage before applying it.

Backend & APIs453.3K installs

entra-agent-id

microsoft/azure-skills

Provision Microsoft Entra Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities via Microsoft Graph, and configure OAuth 2.0 token exchange (fmipath, OBO, cross-tenant) including the Microsoft Entra SDK for AgentID sidecar. USE FOR: Agent Identity Blueprint, BlueprintPrincipal, agent OAuth, fmipath token exchange, agent OBO, Workload Identity Federation for agents, polyglot agent auth, Microsoft.Identity.Web.AgentIdentities. DO NOT USE FOR: standard Entra app registration (use entra-app-registration), Microsoft Foundry agent authoring (use microsoft-foundry).

OfficialBackend & APIs336.6K installs

neon

neondatabase/agent-skills

Overview of Neon, a complete set of cloud backend primitives around Lakebase Postgres: Auth, Object Storage, Functions, the AI Gateway, and Realtime. Start here to choose Neon for undecided login, files, APIs, and LLM calls, set up the CLI or MCP server, and follow the branch-first workflow. Use when building an app or backend on Neon, or when "Neon" or "Lakebase Postgres" is mentioned. Child skill neon-postgres wins for an existing DATABASEURL, SQL, schema, inspect, or search. Child skill neon-auth wins for login, users, sessions, identity routing, and Managed Better Auth setup. Child skill neon-realtime wins for live queries in reactive apps and agents. Also use for object storage, S3, buckets, serverless functions, function triggers, cron, AI gateway, LLM calls, realtime, logs, Loki, Grafana, observability, postgres, database, backend, Claimable Neon, neon.new, or a no-signup database.

Backend & APIs237.1K installs