mirror of
https://github.com/mukul975/Anthropic-Cybersecurity-Skills.git
synced 2026-06-11 13:44:56 +03:00
c21af3347e
- Add scripts/agent.py and references/api-reference.md to all remaining skills - Update all 648 LICENSE files: copyright now reads 'Mahipal' - Add implementing-security-monitoring-with-datadog (new skill with full anatomy) - All 649 skills now have: SKILL.md, LICENSE, scripts/agent.py, references/api-reference.md
57 lines
1.8 KiB
Markdown
57 lines
1.8 KiB
Markdown
# Software-Defined Perimeter — API Reference
|
|
|
|
## Core SDP Concepts
|
|
|
|
| Component | Description |
|
|
|-----------|-------------|
|
|
| SDP Controller | Central policy engine managing authentication and authorization |
|
|
| SDP Gateway | Enforces access policies, terminates encrypted tunnels |
|
|
| SDP Client | End-user agent performing Single Packet Authorization (SPA) |
|
|
| SPA (Single Packet Authorization) | Cryptographic knock before TCP connection allowed |
|
|
|
|
## Appgate SDP Admin API
|
|
|
|
| Method | Endpoint | Description |
|
|
|--------|----------|-------------|
|
|
| POST | `/admin/login` | Authenticate and get Bearer token |
|
|
| GET | `/admin/sites` | List configured sites |
|
|
| GET | `/admin/policies` | List access policies |
|
|
| GET | `/admin/entitlements` | List entitlements (resource access rules) |
|
|
| GET | `/admin/appliances` | List SDP gateways and controllers |
|
|
| GET | `/admin/identity-providers` | List identity providers |
|
|
| POST | `/admin/entitlements` | Create new entitlement |
|
|
|
|
## Dark Port Scanning
|
|
|
|
```python
|
|
import socket
|
|
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
|
sock.settimeout(5)
|
|
result = sock.connect_ex((host, port)) # Non-zero = port dark (SDP enforced)
|
|
```
|
|
|
|
## Mutual TLS Verification
|
|
|
|
```python
|
|
import ssl
|
|
ctx = ssl.create_default_context()
|
|
ctx.load_cert_chain("client.crt", "client.key")
|
|
with ctx.wrap_socket(socket.socket(), server_hostname=host) as s:
|
|
s.connect((host, 443))
|
|
```
|
|
|
|
## SPA Packet Structure
|
|
|
|
| Field | Description |
|
|
|-------|-------------|
|
|
| Random Data | 16 bytes of random padding |
|
|
| Username | SDP client identity |
|
|
| Timestamp | Prevents replay attacks |
|
|
| HMAC | SHA-256 authentication code |
|
|
|
|
## External References
|
|
|
|
- [Appgate SDP API Docs](https://sdphelp.appgate.com/adminguide/rest-api-guide.html)
|
|
- [CSA SDP Specification](https://cloudsecurityalliance.org/research/sdp/)
|
|
- [fwknop SPA Tool](https://www.cipherdyne.org/fwknop/)
|