Interactive Demo
Vulnerability Scan Report
This is a live sample report showcasing DastPilot's findings for a mock API integration. Real attack payloads were used to prove coverage.
47
Endpoints Scanned
1
Critical Finding
1
High Finding
45
Secure / Passed
Scan Findings
CRITICAL · CVSS 9.4
OWASP API1
Broken Object Level Authorization (BOLA / IDOR)
DastPilot detected that resource endpoints did not validate authority parameters. An authenticated user accounts could fetch details of other accounts simply by mutating the userId parameter in the HTTP path template.
Vulnerability Proof (HTTP Evidence)
GET /v1/users/admin-user-09/profile HTTP/1.1
Host: api-staging.example.com
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
User-Agent: DastPilot Scanner v2.4
Accept: application/json
Connection: close
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 342
Connection: close
{
"userId": "admin-user-09",
"username": "admin_superuser",
"email": "[email protected]",
"internal_key": "sk_live_51M081fJszG9...",
"role": "owner"
}
Check that the authenticated caller has permission to view the requested resource:
# Secure API controller example (Python/FastAPI)
@app.get("/v1/users/{userId}/profile")
async def get_user_profile(userId: str, current_user: User = Depends(get_current_user)):
# CRITICAL: Validate ownership or administration authorization
if current_user.id != userId and current_user.role != "admin":
raise HTTPException(
status_code=status.HTTP_403_FORBIDDEN,
detail="You do not have access to this user profile"
)
return db.get_profile(userId)