chore: import upstream snapshot with attribution
CI / Shell Format Check (push) Has been cancelled
CI / Check Ruby (3.4) (push) Has been cancelled
CI / CI Config (push) Has been cancelled
CI / Test on Node ${{ matrix.node }} and ${{ matrix.os }}${{ matrix.shard && format(' (shard {0}/3)', matrix.shard) || '' }} (push) Has been cancelled
CI / Build on Node ${{ matrix.node }} (push) Has been cancelled
CI / Style Check (push) Has been cancelled
CI / Generate Assets (push) Has been cancelled
CI / Check Python (3.14) (push) Has been cancelled
CI / Check Python (3.9) (push) Has been cancelled
CI / Build Docs (push) Has been cancelled
CI / Code Scan Action (push) Has been cancelled
CI / Site tests (push) Has been cancelled
CI / webui tests (push) Has been cancelled
CI / Run Integration Tests (push) Has been cancelled
CI / Run Smoke Tests (push) Has been cancelled
CI / Go Tests (push) Has been cancelled
CI / Share Test (push) Has been cancelled
CI / Redteam (Production API) (push) Has been cancelled
CI / Redteam (Staging API) (push) Has been cancelled
CI / GitHub Actions Lint (push) Has been cancelled
CI / Check Ruby (3.0) (push) Has been cancelled
release-please / release-please (push) Has been cancelled
release-please / build (push) Has been cancelled
release-please / publish-npm (push) Has been cancelled
release-please / publish-npm-backfill (push) Has been cancelled
release-please / docker (push) Has been cancelled
release-please / publish-code-scan-action (push) Has been cancelled
release-please / attest-code-scan-action (push) Has been cancelled
Deploy local.promptfoo.app / Deploy to Cloudflare Pages (push) Has been cancelled
Test and Publish Multi-arch Docker Image / test (push) Has been cancelled
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-amd64 platform:linux/amd64 runner:ubuntu-latest]) (push) Has been cancelled
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-arm64 platform:linux/arm64 runner:ubuntu-24.04-arm]) (push) Has been cancelled
Test and Publish Multi-arch Docker Image / merge-docker-digests (push) Has been cancelled
Test and Publish Multi-arch Docker Image / Attest Multi-arch Image (push) Has been cancelled
Validate Renovate Config / Validate Renovate Configuration (push) Has been cancelled
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 11 KiB |
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<browserconfig>
|
||||
<msapplication>
|
||||
<tile>
|
||||
<square150x150logo src="/mstile-150x150.png"/>
|
||||
<TileColor>#da532c</TileColor>
|
||||
</tile>
|
||||
</msapplication>
|
||||
</browserconfig>
|
||||
@@ -0,0 +1,174 @@
|
||||
{
|
||||
"bytes_scanned": 82,
|
||||
"issues": [
|
||||
{
|
||||
"message": "Found REDUCE opcode invoking dangerous global: posix.system",
|
||||
"severity": "critical",
|
||||
"location": "tests/assets/samples/pickles/malicious_system_call.pkl (pos 79)",
|
||||
"details": {
|
||||
"pickle_source": "tests/assets/samples/pickles/malicious_system_call.pkl",
|
||||
"opcode": "REDUCE",
|
||||
"module": "posix",
|
||||
"name": "system",
|
||||
"import_reference": "posix.system",
|
||||
"global_position": 28,
|
||||
"function": "system",
|
||||
"associated_global": "posix.system",
|
||||
"pickle_rule_code": "DANGEROUS_CALL"
|
||||
},
|
||||
"why": "The 'posix' module provides direct access to POSIX system calls on Unix-like systems. Like the 'os' module, it can execute arbitrary system commands and manipulate the file system. The 'posix.system' function is equivalent to 'os.system' and poses the same security risks.",
|
||||
"timestamp": 1750000000.0,
|
||||
"type": "pickle_check",
|
||||
"rule_code": "S201"
|
||||
}
|
||||
],
|
||||
"checks": [
|
||||
{
|
||||
"name": "Path Exists",
|
||||
"status": "passed",
|
||||
"message": "Path exists",
|
||||
"location": "tests/assets/samples/pickles/malicious_system_call.pkl",
|
||||
"details": {
|
||||
"path": "tests/assets/samples/pickles/malicious_system_call.pkl"
|
||||
},
|
||||
"timestamp": 1750000000.0
|
||||
},
|
||||
{
|
||||
"name": "Path Readable",
|
||||
"status": "passed",
|
||||
"message": "Path is readable",
|
||||
"location": "tests/assets/samples/pickles/malicious_system_call.pkl",
|
||||
"details": {
|
||||
"path": "tests/assets/samples/pickles/malicious_system_call.pkl"
|
||||
},
|
||||
"timestamp": 1750000000.0
|
||||
},
|
||||
{
|
||||
"name": "File Type Validation",
|
||||
"status": "passed",
|
||||
"message": "File type validation passed",
|
||||
"location": "tests/assets/samples/pickles/malicious_system_call.pkl",
|
||||
"details": {},
|
||||
"timestamp": 1750000000.0
|
||||
},
|
||||
{
|
||||
"name": "File Integrity Hash",
|
||||
"status": "passed",
|
||||
"message": "File integrity hashes calculated",
|
||||
"location": "tests/assets/samples/pickles/malicious_system_call.pkl",
|
||||
"details": {
|
||||
"md5": "7866977b6b51d7fa3e6602e7238b13cf",
|
||||
"sha256": "f98e96e2a0e16ca139b0a7250f7bdae4d2340fa1386ee6bfd667ab2784b2e51e",
|
||||
"sha512": "498ad126ed53104c568aff5c68b497b5676432ad9cc1b48890c0d945f6a8efcfdc409acfe345e4a9ba7eaca05189846c68fa692eab8f515fa56e5f5670e02e16",
|
||||
"file_size": 82
|
||||
},
|
||||
"timestamp": 1750000000.0
|
||||
},
|
||||
{
|
||||
"name": "REDUCE Opcode Safety Check",
|
||||
"status": "failed",
|
||||
"message": "Found REDUCE opcode invoking dangerous global: posix.system",
|
||||
"severity": "critical",
|
||||
"location": "tests/assets/samples/pickles/malicious_system_call.pkl (pos 79)",
|
||||
"details": {
|
||||
"pickle_source": "tests/assets/samples/pickles/malicious_system_call.pkl",
|
||||
"opcode": "REDUCE",
|
||||
"module": "posix",
|
||||
"name": "system",
|
||||
"import_reference": "posix.system",
|
||||
"global_position": 28,
|
||||
"function": "system",
|
||||
"associated_global": "posix.system",
|
||||
"pickle_rule_code": "DANGEROUS_CALL"
|
||||
},
|
||||
"why": "The 'posix' module provides direct access to POSIX system calls on Unix-like systems. Like the 'os' module, it can execute arbitrary system commands and manipulate the file system. The 'posix.system' function is equivalent to 'os.system' and poses the same security risks.",
|
||||
"rule_code": "S201",
|
||||
"timestamp": 1750000000.0
|
||||
}
|
||||
],
|
||||
"files_scanned": 1,
|
||||
"assets": [
|
||||
{
|
||||
"path": "tests/assets/samples/pickles/malicious_system_call.pkl",
|
||||
"type": "pickle",
|
||||
"size": 82
|
||||
}
|
||||
],
|
||||
"has_errors": false,
|
||||
"scanner_names": ["pickle"],
|
||||
"file_metadata": {
|
||||
"tests/assets/samples/pickles/malicious_system_call.pkl": {
|
||||
"file_size": 82,
|
||||
"file_hashes": {
|
||||
"md5": "7866977b6b51d7fa3e6602e7238b13cf",
|
||||
"sha256": "f98e96e2a0e16ca139b0a7250f7bdae4d2340fa1386ee6bfd667ab2784b2e51e",
|
||||
"sha512": "498ad126ed53104c568aff5c68b497b5676432ad9cc1b48890c0d945f6a8efcfdc409acfe345e4a9ba7eaca05189846c68fa692eab8f515fa56e5f5670e02e16"
|
||||
},
|
||||
"opcode_count": 15,
|
||||
"license_info": [],
|
||||
"copyright_notices": [],
|
||||
"license_files_nearby": [],
|
||||
"is_dataset": true,
|
||||
"is_model": true,
|
||||
"risk_score": 0.0,
|
||||
"scan_timestamp": 1750000000.0,
|
||||
"opcode_counts": {
|
||||
"FRAME": 1,
|
||||
"SHORT_BINUNICODE": 3,
|
||||
"PROTO": 1,
|
||||
"TUPLE1": 1,
|
||||
"MEMOIZE": 6,
|
||||
"STACK_GLOBAL": 1,
|
||||
"REDUCE": 1,
|
||||
"STOP": 1
|
||||
},
|
||||
"globals_count": 1,
|
||||
"import_references": [
|
||||
{
|
||||
"opcode": "STACK_GLOBAL",
|
||||
"module": "posix",
|
||||
"name": "system",
|
||||
"import_reference": "posix.system",
|
||||
"position": 28,
|
||||
"is_dangerous": true
|
||||
}
|
||||
],
|
||||
"callable_invocations": [
|
||||
{
|
||||
"opcode": "REDUCE",
|
||||
"module": "posix",
|
||||
"name": "system",
|
||||
"import_reference": "posix.system",
|
||||
"global_position": 28,
|
||||
"opcode_position": 79,
|
||||
"positional_arg_count": 1
|
||||
}
|
||||
],
|
||||
"callable_invocations_truncated": false,
|
||||
"protocols": [4],
|
||||
"first_pickle_end_pos": 82,
|
||||
"pickle_report_status": "complete",
|
||||
"pickle_verdict": "malicious",
|
||||
"pickle_source": "tests/assets/samples/pickles/malicious_system_call.pkl",
|
||||
"pickle_coverage": {
|
||||
"bytes_scanned": 82,
|
||||
"bytes_total": 82,
|
||||
"opcode_count": 15,
|
||||
"raw_scan_complete": true,
|
||||
"opcode_scan_complete": true
|
||||
},
|
||||
"pickle_primary_engine": "rust",
|
||||
"pickle_cve_raw_detector_skipped": true,
|
||||
"pickle_secrets_raw_detector_skipped": true,
|
||||
"pickle_jit_raw_detector_skipped": true,
|
||||
"pickle_network_raw_detector_skipped": true
|
||||
}
|
||||
},
|
||||
"content_hash": "6ad17e8e4197a0dfade4b382474db9a46e55625bef1bc42189e3314eff1c362a",
|
||||
"start_time": 1750000000.0,
|
||||
"duration": 0.015,
|
||||
"total_checks": 5,
|
||||
"passed_checks": 4,
|
||||
"failed_checks": 1,
|
||||
"success": true
|
||||
}
|
||||
|
After Width: | Height: | Size: 648 B |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 332 KiB |
|
After Width: | Height: | Size: 31 KiB |
|
After Width: | Height: | Size: 94 KiB |
|
After Width: | Height: | Size: 354 KiB |
|
After Width: | Height: | Size: 2.1 MiB |
@@ -0,0 +1,66 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 550">
|
||||
<!-- Background -->
|
||||
<rect width="800" height="600" fill="#f8fafc" />
|
||||
|
||||
<!-- Grid Lines -->
|
||||
<g stroke="#e2e8f0" stroke-width="1">
|
||||
<path d="M 50 50 L 750 50" />
|
||||
<path d="M 50 550 L 750 550" />
|
||||
<path d="M 50 50 L 50 550" />
|
||||
<path d="M 750 50 L 750 550" />
|
||||
</g>
|
||||
|
||||
<!-- Core Agent Components Section -->
|
||||
<g transform="translate(100, 100)">
|
||||
<rect width="240" height="400" rx="8" fill="#f1f5f9" stroke="#94a3b8" stroke-width="2"/>
|
||||
<text x="120" y="40" text-anchor="middle" font-family="Arial" font-size="16" fill="#1e293b" font-weight="bold">Core Agent</text>
|
||||
|
||||
<!-- Reasoning Engine -->
|
||||
<rect x="20" y="60" width="200" height="80" rx="6" fill="#dbeafe" stroke="#3b82f6" stroke-width="2"/>
|
||||
<text x="120" y="100" text-anchor="middle" font-family="Arial" font-size="14" fill="#1e293b">Reasoning Engine</text>
|
||||
<text x="120" y="120" text-anchor="middle" font-family="Arial" font-size="12" fill="#64748b">Planning & Decision Making</text>
|
||||
|
||||
<!-- Memory System -->
|
||||
<rect x="20" y="160" width="200" height="80" rx="6" fill="#fee2e2" stroke="#ef4444" stroke-width="2"/>
|
||||
<text x="120" y="200" text-anchor="middle" font-family="Arial" font-size="14" fill="#1e293b">Memory System</text>
|
||||
<text x="120" y="220" text-anchor="middle" font-family="Arial" font-size="12" fill="#64748b">Short & Long Term Storage</text>
|
||||
|
||||
<!-- Tool Integration -->
|
||||
<rect x="20" y="260" width="200" height="80" rx="6" fill="#d1fae5" stroke="#10b981" stroke-width="2"/>
|
||||
<text x="120" y="300" text-anchor="middle" font-family="Arial" font-size="14" fill="#1e293b">Tool Integration</text>
|
||||
<text x="120" y="320" text-anchor="middle" font-family="Arial" font-size="12" fill="#64748b">APIs & Function Calls</text>
|
||||
</g>
|
||||
|
||||
<!-- External Systems Section -->
|
||||
<g transform="translate(460, 100)">
|
||||
<rect width="240" height="400" rx="8" fill="#f1f5f9" stroke="#94a3b8" stroke-width="2"/>
|
||||
<text x="120" y="40" text-anchor="middle" font-family="Arial" font-size="16" fill="#1e293b" font-weight="bold">External Systems</text>
|
||||
|
||||
<!-- Knowledge Base -->
|
||||
<rect x="20" y="60" width="200" height="80" rx="6" fill="#fae8ff" stroke="#d946ef" stroke-width="2"/>
|
||||
<text x="120" y="100" text-anchor="middle" font-family="Arial" font-size="14" fill="#1e293b">Knowledge Base</text>
|
||||
<text x="120" y="120" text-anchor="middle" font-family="Arial" font-size="12" fill="#64748b">Vector & Traditional DBs</text>
|
||||
|
||||
<!-- API Gateway -->
|
||||
<rect x="20" y="160" width="200" height="80" rx="6" fill="#fff7ed" stroke="#f97316" stroke-width="2"/>
|
||||
<text x="120" y="200" text-anchor="middle" font-family="Arial" font-size="14" fill="#1e293b">API Gateway</text>
|
||||
<text x="120" y="220" text-anchor="middle" font-family="Arial" font-size="12" fill="#64748b">External Services</text>
|
||||
|
||||
<!-- Security Layer -->
|
||||
<rect x="20" y="260" width="200" height="80" rx="6" fill="#f0fdf4" stroke="#22c55e" stroke-width="2"/>
|
||||
<text x="120" y="300" text-anchor="middle" font-family="Arial" font-size="14" fill="#1e293b">Security Layer</text>
|
||||
<text x="120" y="320" text-anchor="middle" font-family="Arial" font-size="12" fill="#64748b">Access Control & Monitoring</text>
|
||||
</g>
|
||||
|
||||
<!-- Connection Lines -->
|
||||
<g stroke="#94a3b8" stroke-width="2" fill="none">
|
||||
<path d="M 340 180 L 460 180" stroke-dasharray="6,3"/>
|
||||
<path d="M 340 280 L 460 280" stroke-dasharray="6,3"/>
|
||||
<path d="M 340 380 L 460 380" stroke-dasharray="6,3"/>
|
||||
</g>
|
||||
|
||||
<!-- Title -->
|
||||
<!--
|
||||
<text x="400" y="40" text-anchor="middle" font-family="Arial" font-size="24" fill="#0f172a" font-weight="bold">AI Agent Architecture</text>
|
||||
-->
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.7 KiB |
|
After Width: | Height: | Size: 257 KiB |
|
After Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 1.5 MiB |
|
After Width: | Height: | Size: 177 KiB |
|
After Width: | Height: | Size: 197 KiB |
@@ -0,0 +1,68 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 600 400">
|
||||
<defs>
|
||||
<linearGradient id="grad1" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#6366f1;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#8b5cf6;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient id="grad2" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#8b5cf6;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#a78bfa;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient id="grad3" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#a78bfa;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#c4b5fd;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient id="grad4" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#c4b5fd;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#ddd6fe;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient id="grad5" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#f97316;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#fb923c;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<filter id="shadow" x="-20%" y="-20%" width="140%" height="140%">
|
||||
<feDropShadow dx="0" dy="2" stdDeviation="3" flood-opacity="0.15"/>
|
||||
</filter>
|
||||
</defs>
|
||||
|
||||
<!-- Level 1: Executive Policy -->
|
||||
<rect x="100" y="10" width="400" height="56" rx="8" fill="url(#grad1)" filter="url(#shadow)"/>
|
||||
<text x="300" y="32" text-anchor="middle" fill="white" font-family="system-ui, -apple-system, sans-serif" font-size="14" font-weight="600">Executive Policy</text>
|
||||
<text x="300" y="50" text-anchor="middle" fill="rgba(255,255,255,0.85)" font-family="system-ui, -apple-system, sans-serif" font-size="12">EOs, national strategies</text>
|
||||
|
||||
<!-- Arrow 1 -->
|
||||
<path d="M300 66 L300 84 L292 76 M300 84 L308 76" stroke="#6366f1" stroke-width="2" fill="none"/>
|
||||
|
||||
<!-- Level 2: Agency Guidance -->
|
||||
<rect x="100" y="88" width="400" height="56" rx="8" fill="url(#grad2)" filter="url(#shadow)"/>
|
||||
<text x="300" y="110" text-anchor="middle" fill="white" font-family="system-ui, -apple-system, sans-serif" font-size="14" font-weight="600">Agency Guidance</text>
|
||||
<text x="300" y="128" text-anchor="middle" fill="rgba(255,255,255,0.85)" font-family="system-ui, -apple-system, sans-serif" font-size="12">OMB memos, regulator statements</text>
|
||||
|
||||
<!-- Arrow 2 -->
|
||||
<path d="M300 144 L300 162 L292 154 M300 162 L308 154" stroke="#8b5cf6" stroke-width="2" fill="none"/>
|
||||
|
||||
<!-- Level 3: Procurement Requirements -->
|
||||
<rect x="100" y="166" width="400" height="56" rx="8" fill="url(#grad3)" filter="url(#shadow)"/>
|
||||
<text x="300" y="188" text-anchor="middle" fill="white" font-family="system-ui, -apple-system, sans-serif" font-size="14" font-weight="600">Procurement Requirements</text>
|
||||
<text x="300" y="206" text-anchor="middle" fill="rgba(255,255,255,0.85)" font-family="system-ui, -apple-system, sans-serif" font-size="12">RFP language, vendor questionnaires</text>
|
||||
|
||||
<!-- Arrow 3 -->
|
||||
<path d="M300 222 L300 240 L292 232 M300 240 L308 232" stroke="#a78bfa" stroke-width="2" fill="none"/>
|
||||
|
||||
<!-- Level 4: Contract Clauses -->
|
||||
<rect x="100" y="244" width="400" height="56" rx="8" fill="url(#grad4)" filter="url(#shadow)"/>
|
||||
<text x="300" y="266" text-anchor="middle" fill="#5b21b6" font-family="system-ui, -apple-system, sans-serif" font-size="14" font-weight="600">Contract Clauses</text>
|
||||
<text x="300" y="284" text-anchor="middle" fill="#7c3aed" font-family="system-ui, -apple-system, sans-serif" font-size="12">Warranties, reporting, audit rights</text>
|
||||
|
||||
<!-- Arrow 4 -->
|
||||
<path d="M300 300 L300 318 L292 310 M300 318 L308 310" stroke="#c4b5fd" stroke-width="2" fill="none"/>
|
||||
|
||||
<!-- Level 5: Evidence (highlighted) -->
|
||||
<rect x="100" y="322" width="400" height="56" rx="8" fill="url(#grad5)" filter="url(#shadow)"/>
|
||||
<text x="300" y="344" text-anchor="middle" fill="white" font-family="system-ui, -apple-system, sans-serif" font-size="14" font-weight="600">Evidence</text>
|
||||
<text x="300" y="362" text-anchor="middle" fill="rgba(255,255,255,0.85)" font-family="system-ui, -apple-system, sans-serif" font-size="12">Eval reports, incident logs, documentation</text>
|
||||
|
||||
<!-- "You are here" indicator -->
|
||||
<circle cx="520" cy="350" r="4" fill="#f97316"/>
|
||||
<text x="532" y="354" font-family="system-ui, -apple-system, sans-serif" font-size="11" font-weight="500" fill="#f97316">You are here</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 273 KiB |
@@ -0,0 +1,97 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 820 300">
|
||||
<defs>
|
||||
<linearGradient id="trackGrad" x1="0%" y1="0%" x2="100%" y2="0%">
|
||||
<stop offset="0%" style="stop-color:#6366f1" />
|
||||
<stop offset="50%" style="stop-color:#a855f7" />
|
||||
<stop offset="100%" style="stop-color:#f97316" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
|
||||
<!-- Title -->
|
||||
<text x="410" y="28" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="17" font-weight="700" fill="#1f2937">2026 AI Regulation Timeline</text>
|
||||
|
||||
<!-- Main timeline track -->
|
||||
<rect x="50" y="138" width="720" height="5" rx="2.5" fill="#e5e7eb"/>
|
||||
<rect x="50" y="138" width="720" height="5" rx="2.5" fill="url(#trackGrad)" opacity="0.6"/>
|
||||
|
||||
<!-- Quarter labels below track -->
|
||||
<text x="140" y="270" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="12" font-weight="600" fill="#9ca3af">Q1</text>
|
||||
<text x="320" y="270" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="12" font-weight="600" fill="#9ca3af">Q2</text>
|
||||
<text x="500" y="270" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="12" font-weight="600" fill="#9ca3af">Q3</text>
|
||||
<text x="680" y="270" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="12" font-weight="600" fill="#9ca3af">Q4</text>
|
||||
|
||||
<!-- Quarter divider ticks -->
|
||||
<line x1="230" y1="133" x2="230" y2="148" stroke="#d1d5db" stroke-width="1"/>
|
||||
<line x1="410" y1="133" x2="410" y2="148" stroke="#d1d5db" stroke-width="1"/>
|
||||
<line x1="590" y1="133" x2="590" y2="148" stroke="#d1d5db" stroke-width="1"/>
|
||||
|
||||
<!-- EVENTS -->
|
||||
<g font-family="system-ui, -apple-system, sans-serif">
|
||||
|
||||
<!-- Jan 1 (below) -->
|
||||
<circle cx="70" cy="140" r="7" fill="#6366f1"/>
|
||||
<circle cx="70" cy="140" r="3" fill="white"/>
|
||||
<line x1="70" y1="147" x2="70" y2="175" stroke="#6366f1" stroke-width="1.5" opacity="0.5"/>
|
||||
<text x="70" y="192" text-anchor="middle" font-size="12" font-weight="700" fill="#6366f1">Jan 1</text>
|
||||
<text x="70" y="208" text-anchor="middle" font-size="10" fill="#4b5563">CA AB 2013</text>
|
||||
<text x="70" y="222" text-anchor="middle" font-size="10" fill="#4b5563">TX HB 149</text>
|
||||
|
||||
<!-- ~Jan 10 (above) -->
|
||||
<circle cx="115" cy="140" r="7" fill="#7c3aed"/>
|
||||
<circle cx="115" cy="140" r="3" fill="white"/>
|
||||
<line x1="115" y1="133" x2="115" y2="105" stroke="#7c3aed" stroke-width="1.5" opacity="0.5"/>
|
||||
<text x="115" y="92" text-anchor="middle" font-size="12" font-weight="700" fill="#7c3aed">~Jan 10</text>
|
||||
<text x="115" y="76" text-anchor="middle" font-size="10" fill="#4b5563">DOJ Task Force</text>
|
||||
|
||||
<!-- Mar 11 (below) - includes FTC -->
|
||||
<circle cx="185" cy="140" r="7" fill="#8b5cf6"/>
|
||||
<circle cx="185" cy="140" r="3" fill="white"/>
|
||||
<line x1="185" y1="147" x2="185" y2="175" stroke="#8b5cf6" stroke-width="1.5" opacity="0.5"/>
|
||||
<text x="185" y="192" text-anchor="middle" font-size="12" font-weight="700" fill="#8b5cf6">Mar 11</text>
|
||||
<text x="185" y="208" text-anchor="middle" font-size="10" fill="#4b5563">M-26-04, FTC</text>
|
||||
<text x="185" y="222" text-anchor="middle" font-size="10" fill="#4b5563">Commerce eval</text>
|
||||
|
||||
<!-- May 19 (above) - TAKE IT DOWN Act -->
|
||||
<circle cx="285" cy="140" r="7" fill="#9333ea"/>
|
||||
<circle cx="285" cy="140" r="3" fill="white"/>
|
||||
<line x1="285" y1="133" x2="285" y2="105" stroke="#9333ea" stroke-width="1.5" opacity="0.5"/>
|
||||
<text x="285" y="92" text-anchor="middle" font-size="12" font-weight="700" fill="#9333ea">May 19</text>
|
||||
<text x="285" y="76" text-anchor="middle" font-size="10" fill="#4b5563">TAKE IT DOWN</text>
|
||||
|
||||
<!-- ~Jun (above) - FCC only -->
|
||||
<circle cx="345" cy="140" r="7" fill="#a855f7"/>
|
||||
<circle cx="345" cy="140" r="3" fill="white"/>
|
||||
<line x1="345" y1="133" x2="345" y2="105" stroke="#a855f7" stroke-width="1.5" opacity="0.5"/>
|
||||
<text x="345" y="92" text-anchor="middle" font-size="12" font-weight="700" fill="#a855f7">~Jun</text>
|
||||
<text x="345" y="76" text-anchor="middle" font-size="10" fill="#4b5563">FCC proceeding</text>
|
||||
|
||||
<!-- Jun 30 (below) -->
|
||||
<circle cx="395" cy="140" r="7" fill="#c026d3"/>
|
||||
<circle cx="395" cy="140" r="3" fill="white"/>
|
||||
<line x1="395" y1="147" x2="395" y2="175" stroke="#c026d3" stroke-width="1.5" opacity="0.5"/>
|
||||
<text x="395" y="192" text-anchor="middle" font-size="12" font-weight="700" fill="#c026d3">Jun 30</text>
|
||||
<text x="395" y="208" text-anchor="middle" font-size="10" fill="#4b5563">CO SB24-205</text>
|
||||
|
||||
<!-- Aug 2 (above) -->
|
||||
<circle cx="480" cy="140" r="7" fill="#ec4899"/>
|
||||
<circle cx="480" cy="140" r="3" fill="white"/>
|
||||
<line x1="480" y1="133" x2="480" y2="105" stroke="#ec4899" stroke-width="1.5" opacity="0.5"/>
|
||||
<text x="480" y="92" text-anchor="middle" font-size="12" font-weight="700" fill="#ec4899">Aug 2</text>
|
||||
<text x="480" y="76" text-anchor="middle" font-size="10" fill="#4b5563">CA SB 942</text>
|
||||
|
||||
<!-- Aug (EU) (below) -->
|
||||
<circle cx="540" cy="140" r="7" fill="#f97316"/>
|
||||
<circle cx="540" cy="140" r="3" fill="white"/>
|
||||
<line x1="540" y1="147" x2="540" y2="175" stroke="#f97316" stroke-width="1.5" opacity="0.5"/>
|
||||
<text x="540" y="192" text-anchor="middle" font-size="12" font-weight="700" fill="#f97316">Aug</text>
|
||||
<text x="540" y="208" text-anchor="middle" font-size="10" fill="#4b5563">EU AI Act</text>
|
||||
<text x="540" y="222" text-anchor="middle" font-size="10" fill="#6b7280">(may slip)</text>
|
||||
|
||||
<!-- Ongoing: dashed extension with arrow -->
|
||||
<line x1="560" y1="140" x2="760" y2="140" stroke="#f97316" stroke-width="2" stroke-dasharray="8,5" opacity="0.35"/>
|
||||
<path d="M760 135 L780 140 L760 145" fill="none" stroke="#f97316" stroke-width="2" opacity="0.5"/>
|
||||
<text x="680" y="170" text-anchor="middle" font-size="10" font-weight="600" fill="#d97706">Ongoing</text>
|
||||
<text x="680" y="184" text-anchor="middle" font-size="9" fill="#6b7280">Preemption litigation</text>
|
||||
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.9 KiB |
@@ -0,0 +1,65 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 700 280">
|
||||
<defs>
|
||||
<linearGradient id="usGrad" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#6366f1;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#8b5cf6;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient id="chinaGrad" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#f97316;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#fb923c;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<filter id="cardShadow" x="-10%" y="-10%" width="120%" height="120%">
|
||||
<feDropShadow dx="0" dy="2" stdDeviation="4" flood-opacity="0.12"/>
|
||||
</filter>
|
||||
</defs>
|
||||
|
||||
|
||||
<!-- US Side -->
|
||||
<g transform="translate(50, 30)">
|
||||
<!-- Header -->
|
||||
<rect x="0" y="0" width="260" height="36" rx="6" fill="url(#usGrad)"/>
|
||||
<text x="130" y="24" text-anchor="middle" fill="white" font-family="system-ui, -apple-system, sans-serif" font-size="14" font-weight="600">US Approach</text>
|
||||
|
||||
<!-- Product box -->
|
||||
<rect x="30" y="56" width="200" height="70" rx="8" fill="white" filter="url(#cardShadow)" stroke="#e5e7eb" stroke-width="1"/>
|
||||
<text x="130" y="85" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="13" font-weight="600" fill="#374151">AI Product</text>
|
||||
<text x="130" y="105" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="11" fill="#6b7280">(model + application)</text>
|
||||
|
||||
<!-- Plus sign -->
|
||||
<text x="130" y="145" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="20" fill="#9ca3af">+</text>
|
||||
|
||||
<!-- Documentation box (separate) -->
|
||||
<rect x="30" y="156" width="200" height="70" rx="8" fill="white" filter="url(#cardShadow)" stroke="#c7d2fe" stroke-width="2" stroke-dasharray="6,3"/>
|
||||
<text x="130" y="182" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="12" font-weight="600" fill="#6366f1">Documentation</text>
|
||||
<text x="130" y="200" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="10" fill="#6b7280">Model cards, eval reports,</text>
|
||||
<text x="130" y="214" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="10" fill="#6b7280">audit trails</text>
|
||||
|
||||
<!-- Label -->
|
||||
<text x="130" y="250" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="11" font-weight="500" fill="#6366f1">"alongside"</text>
|
||||
</g>
|
||||
|
||||
<!-- Divider -->
|
||||
<line x1="350" y1="50" x2="350" y2="250" stroke="#e5e7eb" stroke-width="1" stroke-dasharray="4,4"/>
|
||||
|
||||
<!-- China Side -->
|
||||
<g transform="translate(390, 30)">
|
||||
<!-- Header -->
|
||||
<rect x="0" y="0" width="260" height="36" rx="6" fill="url(#chinaGrad)"/>
|
||||
<text x="130" y="24" text-anchor="middle" fill="white" font-family="system-ui, -apple-system, sans-serif" font-size="14" font-weight="600">China Approach</text>
|
||||
|
||||
<!-- Product box with embedded provenance -->
|
||||
<rect x="30" y="56" width="200" height="170" rx="8" fill="white" filter="url(#cardShadow)" stroke="#e5e7eb" stroke-width="1"/>
|
||||
<text x="130" y="82" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="13" font-weight="600" fill="#374151">AI Product</text>
|
||||
<text x="130" y="100" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="11" fill="#6b7280">(model + application)</text>
|
||||
|
||||
<!-- Embedded provenance box -->
|
||||
<rect x="50" y="115" width="160" height="90" rx="6" fill="#fff7ed" stroke="#fed7aa" stroke-width="2"/>
|
||||
<text x="130" y="140" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="12" font-weight="600" fill="#f97316">Embedded</text>
|
||||
<text x="130" y="160" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="10" fill="#6b7280">Visible labels</text>
|
||||
<text x="130" y="175" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="10" fill="#6b7280">Metadata provenance</text>
|
||||
<text x="130" y="190" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="10" fill="#6b7280">6-month logs</text>
|
||||
|
||||
<!-- Label -->
|
||||
<text x="130" y="250" text-anchor="middle" font-family="system-ui, -apple-system, sans-serif" font-size="11" font-weight="500" fill="#f97316">"embedded"</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 360 KiB |
|
After Width: | Height: | Size: 573 KiB |
|
After Width: | Height: | Size: 270 KiB |
|
After Width: | Height: | Size: 425 KiB |
@@ -0,0 +1,42 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 600">
|
||||
<defs>
|
||||
<style>
|
||||
.title { font: bold 24px sans-serif; }
|
||||
.subtitle { font: italic 18px sans-serif; }
|
||||
.label { font: 14px sans-serif; }
|
||||
</style>
|
||||
</defs>
|
||||
|
||||
<!-- Title -->
|
||||
<text x="400" y="40" text-anchor="middle" class="title">AI Bill of Materials (AIBOM)</text>
|
||||
<text x="400" y="80" text-anchor="middle" class="subtitle">Comprehensive Inventory of AI System Components</text>
|
||||
|
||||
<!-- Main AIBOM circle -->
|
||||
<circle cx="400" cy="350" r="230" fill="#f0f0f0" stroke="#333" stroke-width="3"/>
|
||||
|
||||
<!-- AIBOM Components -->
|
||||
<g>
|
||||
<!-- Model Information -->
|
||||
<circle cx="400" cy="220" r="65" fill="#ff9999"/>
|
||||
<text x="400" y="220" text-anchor="middle" class="label">Model Information</text>
|
||||
|
||||
<!-- Software Dependencies -->
|
||||
<circle cx="270" cy="310" r="65" fill="#99ff99"/>
|
||||
<text x="270" y="310" text-anchor="middle" class="label">Software</text>
|
||||
<text x="270" y="330" text-anchor="middle" class="label">Dependencies</text>
|
||||
|
||||
<!-- Hardware Requirements -->
|
||||
<circle cx="530" cy="310" r="65" fill="#9999ff"/>
|
||||
<text x="530" y="310" text-anchor="middle" class="label">Hardware</text>
|
||||
<text x="530" y="330" text-anchor="middle" class="label">Requirements</text>
|
||||
|
||||
<!-- Data Pipeline -->
|
||||
<circle cx="310" cy="440" r="65" fill="#ffff99"/>
|
||||
<text x="310" y="440" text-anchor="middle" class="label">Data Pipeline</text>
|
||||
|
||||
<!-- Ethical Considerations -->
|
||||
<circle cx="490" cy="440" r="65" fill="#ff99ff"/>
|
||||
<text x="490" y="440" text-anchor="middle" class="label">Ethical</text>
|
||||
<text x="490" y="460" text-anchor="middle" class="label">Considerations</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 27 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 253 KiB |
|
After Width: | Height: | Size: 93 KiB |
|
After Width: | Height: | Size: 474 KiB |
|
After Width: | Height: | Size: 431 KiB |
|
After Width: | Height: | Size: 309 KiB |
|
After Width: | Height: | Size: 918 KiB |
@@ -0,0 +1,49 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 550">
|
||||
<rect width="800" height="550" fill="#f0f8ff"/>
|
||||
|
||||
<text x="400" y="40" font-family="Arial, sans-serif" font-size="24" font-weight="bold" text-anchor="middle" fill="#0000FF">Privilege Escalation in LLM Agent Systems</text>
|
||||
|
||||
<!-- Regular User -->
|
||||
<circle cx="100" cy="275" r="40" fill="#FFA500"/>
|
||||
<text x="100" y="340" font-family="Arial, sans-serif" font-size="16" text-anchor="middle">Regular User</text>
|
||||
|
||||
<!-- LLM Agent -->
|
||||
<rect x="350" y="100" width="100" height="400" fill="#4B0082" rx="10" ry="10"/>
|
||||
<text x="400" y="130" font-family="Arial, sans-serif" font-size="16" fill="white" text-anchor="middle">LLM Agent</text>
|
||||
|
||||
<!-- Server -->
|
||||
<rect x="600" y="100" width="150" height="400" fill="#2F4F4F"/>
|
||||
<text x="675" y="130" font-family="Arial, sans-serif" font-size="16" fill="white" text-anchor="middle">Server</text>
|
||||
|
||||
<!-- Function Levels on Server -->
|
||||
<rect x="610" y="150" width="130" height="60" fill="#32CD32" rx="5" ry="5"/>
|
||||
<text x="675" y="185" font-family="Arial, sans-serif" font-size="14" fill="white" text-anchor="middle">View Data</text>
|
||||
|
||||
<rect x="610" y="220" width="130" height="60" fill="#FFD700" rx="5" ry="5"/>
|
||||
<text x="675" y="255" font-family="Arial, sans-serif" font-size="14" fill="black" text-anchor="middle">Edit Data</text>
|
||||
|
||||
<rect x="610" y="290" width="130" height="60" fill="#FF4500" rx="5" ry="5"/>
|
||||
<text x="675" y="325" font-family="Arial, sans-serif" font-size="14" fill="white" text-anchor="middle">Admin</text>
|
||||
|
||||
<!-- Connections -->
|
||||
<path d="M 140 275 Q 245 210 350 180" fill="none" stroke="#000080" stroke-width="2" marker-end="url(#arrowheadRight)" marker-start="url(#arrowheadLeft)"/>
|
||||
<path d="M 140 275 Q 245 320 350 250" fill="none" stroke="#8B0000" stroke-width="2" stroke-dasharray="5,5" marker-end="url(#arrowheadRight)"/>
|
||||
<path d="M 140 275 Q 245 390 350 320" fill="none" stroke="#8B0000" stroke-width="2" stroke-dasharray="5,5" marker-end="url(#arrowheadRight)"/>
|
||||
<path d="M 450 250 L 600 250" fill="none" stroke="#000080" stroke-width="2" marker-end="url(#arrowheadRight)" marker-start="url(#arrowheadLeft)"/>
|
||||
|
||||
<!-- Labels -->
|
||||
<text x="245" y="200" font-family="Arial, sans-serif" font-size="14" text-anchor="middle">Authorized: viewUserData()</text>
|
||||
<text x="245" y="305" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#8B0000">Exploit: editUserData()</text>
|
||||
<text x="245" y="400" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#8B0000">Exploit: deleteUser()</text>
|
||||
<text x="525" y="230" font-family="Arial, sans-serif" font-size="14" text-anchor="middle">Execute functions</text>
|
||||
|
||||
<!-- Arrowhead definitions -->
|
||||
<defs>
|
||||
<marker id="arrowheadRight" markerWidth="5" markerHeight="4" refX="0" refY="2" orient="auto">
|
||||
<polygon points="0 0, 5 2, 0 4" />
|
||||
</marker>
|
||||
<marker id="arrowheadLeft" markerWidth="5" markerHeight="4" refX="5" refY="2" orient="auto">
|
||||
<polygon points="5 0, 0 2, 5 4" />
|
||||
</marker>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.0 KiB |
@@ -0,0 +1,60 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 600">
|
||||
<defs>
|
||||
<linearGradient id="bgGradient" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#f9f9f9;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#e6e6e6;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<filter id="dropShadow">
|
||||
<feDropShadow dx="2" dy="2" stdDeviation="1" flood-opacity="0.3"/>
|
||||
</filter>
|
||||
</defs>
|
||||
|
||||
<!-- Background -->
|
||||
<rect width="800" height="600" fill="url(#bgGradient)" />
|
||||
|
||||
<!-- Title -->
|
||||
<text x="400" y="50" font-size="28" text-anchor="middle" font-weight="bold" fill="#333" font-family="Arial, sans-serif">AI Bias</text>
|
||||
|
||||
<!-- Central AI node -->
|
||||
<circle cx="400" cy="300" r="80" fill="#3498db" opacity="0.8" filter="url(#dropShadow)" />
|
||||
<text x="400" y="305" font-size="20" text-anchor="middle" fill="white" font-weight="bold" font-family="Arial, sans-serif">LLM</text>
|
||||
|
||||
<!-- Bias type nodes -->
|
||||
<g font-size="14" font-weight="bold" font-family="Arial, sans-serif">
|
||||
<!-- Gender bias -->
|
||||
<circle cx="200" cy="200" r="60" fill="#e74c3c" opacity="0.8" filter="url(#dropShadow)" />
|
||||
<text x="200" y="195" text-anchor="middle" fill="white">Gender</text>
|
||||
<text x="200" y="215" text-anchor="middle" fill="white">Stereotypes</text>
|
||||
<path d="M260 230 Q330 265 360 290" fill="none" stroke="#e74c3c" stroke-width="2" />
|
||||
|
||||
<!-- Racial bias -->
|
||||
<circle cx="600" cy="200" r="60" fill="#2ecc71" opacity="0.8" filter="url(#dropShadow)" />
|
||||
<text x="600" y="195" text-anchor="middle" fill="white">Racial</text>
|
||||
<text x="600" y="215" text-anchor="middle" fill="white">Prejudices</text>
|
||||
<path d="M540 230 Q470 265 440 290" fill="none" stroke="#2ecc71" stroke-width="2" />
|
||||
|
||||
<!-- Political bias -->
|
||||
<circle cx="150" cy="400" r="60" fill="#f39c12" opacity="0.8" filter="url(#dropShadow)" />
|
||||
<text x="150" y="395" text-anchor="middle" fill="white">Political</text>
|
||||
<text x="150" y="415" text-anchor="middle" fill="white">Preferences</text>
|
||||
<path d="M210 370 Q305 335 360 310" fill="none" stroke="#f39c12" stroke-width="2" />
|
||||
|
||||
<!-- Cultural bias -->
|
||||
<circle cx="650" cy="400" r="60" fill="#9b59b6" opacity="0.8" filter="url(#dropShadow)" />
|
||||
<text x="650" y="395" text-anchor="middle" fill="white">Cultural</text>
|
||||
<text x="650" y="415" text-anchor="middle" fill="white">Bias</text>
|
||||
<path d="M590 370 Q495 335 440 310" fill="none" stroke="#9b59b6" stroke-width="2" />
|
||||
|
||||
<!-- Age bias -->
|
||||
<circle cx="300" cy="500" r="60" fill="#1abc9c" opacity="0.8" filter="url(#dropShadow)" />
|
||||
<text x="300" y="495" text-anchor="middle" fill="white">Age Group</text>
|
||||
<text x="300" y="515" text-anchor="middle" fill="white">Stereotypes</text>
|
||||
<path d="M340 445 Q370 375 380 340" fill="none" stroke="#1abc9c" stroke-width="2" />
|
||||
|
||||
<!-- Economic bias -->
|
||||
<circle cx="500" cy="500" r="60" fill="#34495e" opacity="0.8" filter="url(#dropShadow)" />
|
||||
<text x="500" y="495" text-anchor="middle" fill="white">Economic</text>
|
||||
<text x="500" y="515" text-anchor="middle" fill="white">Assumptions</text>
|
||||
<path d="M460 445 Q430 375 420 340" fill="none" stroke="#34495e" stroke-width="2" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.1 KiB |
@@ -0,0 +1,52 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 600">
|
||||
<defs>
|
||||
<linearGradient id="bgGradient" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#f0f8ff;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#e6f3ff;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
|
||||
<!-- Background -->
|
||||
<rect width="800" height="600" fill="url(#bgGradient)" />
|
||||
|
||||
<!-- Central circle -->
|
||||
<circle cx="400" cy="300" r="200" fill="#ffffff" stroke="#3498db" stroke-width="3" opacity="0.7" />
|
||||
|
||||
<!-- Mitigation techniques -->
|
||||
<g font-size="16" fill="#2c3e50">
|
||||
<!-- Diversify Data -->
|
||||
<circle cx="400" cy="150" r="60" fill="#f1c40f" opacity="0.8" />
|
||||
<text x="400" y="145" text-anchor="middle" font-weight="bold">Diversify</text>
|
||||
<text x="400" y="165" text-anchor="middle" font-weight="bold">Data</text>
|
||||
|
||||
<!-- Implement Bias Detection -->
|
||||
<circle cx="580" cy="250" r="60" fill="#e74c3c" opacity="0.8" />
|
||||
<text x="580" y="245" text-anchor="middle" font-weight="bold">Implement</text>
|
||||
<text x="580" y="265" text-anchor="middle" font-weight="bold">Bias Detection</text>
|
||||
|
||||
<!-- Fine-tune Models -->
|
||||
<circle cx="580" cy="350" r="60" fill="#3498db" opacity="0.8" />
|
||||
<text x="580" y="345" text-anchor="middle" font-weight="bold">Fine-tune</text>
|
||||
<text x="580" y="365" text-anchor="middle" font-weight="bold">Models</text>
|
||||
|
||||
<!-- Incorporate Logical Reasoning -->
|
||||
<circle cx="400" cy="450" r="60" fill="#2ecc71" opacity="0.8" />
|
||||
<text x="400" y="445" text-anchor="middle" font-weight="bold">Incorporate</text>
|
||||
<text x="400" y="465" text-anchor="middle" font-weight="bold">Logical Reasoning</text>
|
||||
|
||||
<!-- Evaluate Thoroughly -->
|
||||
<circle cx="220" cy="350" r="60" fill="#9b59b6" opacity="0.8" />
|
||||
<text x="220" y="345" text-anchor="middle" font-weight="bold">Evaluate</text>
|
||||
<text x="220" y="365" text-anchor="middle" font-weight="bold">Thoroughly</text>
|
||||
|
||||
<!-- Address Ongoing Challenges -->
|
||||
<circle cx="220" cy="250" r="60" fill="#e67e22" opacity="0.8" />
|
||||
<text x="220" y="245" text-anchor="middle" font-weight="bold">Address</text>
|
||||
<text x="220" y="265" text-anchor="middle" font-weight="bold">Challenges</text>
|
||||
</g>
|
||||
|
||||
<!-- Central text -->
|
||||
<text x="400" y="290" font-size="24" text-anchor="middle" font-weight="bold" fill="#2c3e50">Gen AI</text>
|
||||
<text x="400" y="320" font-size="24" text-anchor="middle" font-weight="bold" fill="#2c3e50">Bias</text>
|
||||
<text x="400" y="350" font-size="24" text-anchor="middle" font-weight="bold" fill="#2c3e50">Mitigation</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.6 KiB |
@@ -0,0 +1,31 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 400">
|
||||
<rect width="800" height="400" fill="#f0f8ff"/>
|
||||
|
||||
<text x="400" y="40" font-family="Arial, sans-serif" font-size="24" font-weight="bold" text-anchor="middle" fill="#0000FF">Broken Function Level Authorization in AI Systems</text>
|
||||
|
||||
<!-- User Alice -->
|
||||
<circle cx="100" cy="150" r="40" fill="#FFA500"/>
|
||||
<text x="100" y="200" font-family="Arial, sans-serif" font-size="16" text-anchor="middle">Alice</text>
|
||||
|
||||
<!-- Attacker -->
|
||||
<circle cx="100" cy="300" r="40" fill="#FF4500"/>
|
||||
<text x="100" y="350" font-family="Arial, sans-serif" font-size="16" text-anchor="middle">Attacker</text>
|
||||
|
||||
<!-- AI System -->
|
||||
<rect x="350" y="150" width="100" height="150" fill="#4B0082" rx="10" ry="10"/>
|
||||
<text x="400" y="230" font-family="Arial, sans-serif" font-size="16" fill="white" text-anchor="middle">AI</text>
|
||||
|
||||
<!-- Server -->
|
||||
<rect x="650" y="175" width="80" height="100" fill="#2F4F4F"/>
|
||||
<text x="690" y="290" font-family="Arial, sans-serif" font-size="16" text-anchor="middle">Server</text>
|
||||
|
||||
<!-- Connections -->
|
||||
<path d="M 140 150 Q 245 150 350 200" fill="none" stroke="#000080" stroke-width="2"/>
|
||||
<path d="M 140 300 Q 245 300 350 250" fill="none" stroke="#8B0000" stroke-width="2" stroke-dasharray="5,5"/>
|
||||
<path d="M 450 225 L 650 225" fill="none" stroke="#000080" stroke-width="2"/>
|
||||
|
||||
<!-- Labels -->
|
||||
<text x="245" y="130" font-family="Arial, sans-serif" font-size="14" text-anchor="middle">Authorized request</text>
|
||||
<text x="245" y="330" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#8B0000">Unauthorized access attempt</text>
|
||||
<text x="550" y="210" font-family="Arial, sans-serif" font-size="14" text-anchor="middle">Data retrieval</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 131 KiB |
|
After Width: | Height: | Size: 588 KiB |
|
After Width: | Height: | Size: 204 KiB |
|
After Width: | Height: | Size: 653 KiB |
|
After Width: | Height: | Size: 137 KiB |
|
After Width: | Height: | Size: 264 KiB |
|
After Width: | Height: | Size: 640 KiB |
|
After Width: | Height: | Size: 130 KiB |
|
After Width: | Height: | Size: 145 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 272 KiB |
|
After Width: | Height: | Size: 2.3 MiB |
|
After Width: | Height: | Size: 158 KiB |
|
After Width: | Height: | Size: 250 KiB |
|
After Width: | Height: | Size: 191 KiB |
|
After Width: | Height: | Size: 128 KiB |
|
After Width: | Height: | Size: 232 KiB |
|
After Width: | Height: | Size: 157 KiB |
|
After Width: | Height: | Size: 196 KiB |
|
After Width: | Height: | Size: 304 KiB |
|
After Width: | Height: | Size: 381 KiB |
|
After Width: | Height: | Size: 30 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 252 KiB |
|
After Width: | Height: | Size: 382 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 91 KiB |
|
After Width: | Height: | Size: 105 KiB |
|
After Width: | Height: | Size: 1.1 MiB |
|
After Width: | Height: | Size: 478 KiB |
|
After Width: | Height: | Size: 899 KiB |
|
After Width: | Height: | Size: 373 KiB |
|
After Width: | Height: | Size: 360 KiB |
|
After Width: | Height: | Size: 620 KiB |
|
After Width: | Height: | Size: 557 KiB |
|
After Width: | Height: | Size: 326 KiB |
|
After Width: | Height: | Size: 195 KiB |
@@ -0,0 +1,74 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 500">
|
||||
<!-- Background -->
|
||||
<rect width="800" height="500" fill="#f8f9fa"/>
|
||||
|
||||
<!-- Title -->
|
||||
<text x="400" y="40" text-anchor="middle" font-family="Arial" font-size="20" font-weight="bold">
|
||||
DeepSeek R1 - Weakest Areas for Toxicity and Harm (% Failing)
|
||||
</text>
|
||||
|
||||
<!-- Y-axis labels -->
|
||||
<g font-family="Arial" font-size="12" fill="#333">
|
||||
<text x="180" y="100" text-anchor="end">Disinformation campaigns</text>
|
||||
<text x="180" y="140" text-anchor="end">Religious biases</text>
|
||||
<text x="180" y="180" text-anchor="end">Graphic content</text>
|
||||
<text x="180" y="220" text-anchor="end">Malicious code</text>
|
||||
<text x="180" y="260" text-anchor="end">Cybercrime</text>
|
||||
<text x="180" y="300" text-anchor="end">Methamphetamine content</text>
|
||||
<text x="180" y="340" text-anchor="end">Dangerous activity</text>
|
||||
<text x="180" y="380" text-anchor="end">False information</text>
|
||||
<text x="180" y="420" text-anchor="end">Non-violent content</text>
|
||||
<text x="180" y="460" text-anchor="end">Weapons content</text>
|
||||
</g>
|
||||
|
||||
<!-- X-axis -->
|
||||
<line x1="200" y1="480" x2="700" y2="480" stroke="#333" stroke-width="1"/>
|
||||
|
||||
<!-- X-axis labels -->
|
||||
<g font-family="Arial" font-size="12" fill="#333">
|
||||
<text x="200" y="495" text-anchor="middle">0%</text>
|
||||
<text x="300" y="495" text-anchor="middle">20%</text>
|
||||
<text x="400" y="495" text-anchor="middle">40%</text>
|
||||
<text x="500" y="495" text-anchor="middle">60%</text>
|
||||
<text x="600" y="495" text-anchor="middle">80%</text>
|
||||
<text x="700" y="495" text-anchor="middle">100%</text>
|
||||
</g>
|
||||
|
||||
<!-- Grid lines -->
|
||||
<g stroke="#ddd" stroke-width="1">
|
||||
<line x1="200" y1="70" x2="200" y2="480"/>
|
||||
<line x1="300" y1="70" x2="300" y2="480"/>
|
||||
<line x1="400" y1="70" x2="400" y2="480"/>
|
||||
<line x1="500" y1="70" x2="500" y2="480"/>
|
||||
<line x1="600" y1="70" x2="600" y2="480"/>
|
||||
<line x1="700" y1="70" x2="700" y2="480"/>
|
||||
</g>
|
||||
|
||||
<!-- Bars -->
|
||||
<g>
|
||||
<rect x="200" y="85" width="390" height="20" fill="#ff4d4d" opacity="0.8"/>
|
||||
<rect x="200" y="125" width="375" height="20" fill="#ff4d4d" opacity="0.8"/>
|
||||
<rect x="200" y="165" width="340" height="20" fill="#ff4d4d" opacity="0.8"/>
|
||||
<rect x="200" y="205" width="320" height="20" fill="#ff4d4d" opacity="0.8"/>
|
||||
<rect x="200" y="245" width="310" height="20" fill="#ff4d4d" opacity="0.8"/>
|
||||
<rect x="200" y="285" width="310" height="20" fill="#ff4d4d" opacity="0.8"/>
|
||||
<rect x="200" y="325" width="310" height="20" fill="#ff4d4d" opacity="0.8"/>
|
||||
<rect x="200" y="365" width="310" height="20" fill="#ff4d4d" opacity="0.8"/>
|
||||
<rect x="200" y="405" width="285" height="20" fill="#ff4d4d" opacity="0.8"/>
|
||||
<rect x="200" y="445" width="285" height="20" fill="#ff4d4d" opacity="0.8"/>
|
||||
</g>
|
||||
|
||||
<!-- Percentage labels -->
|
||||
<g font-family="Arial" font-size="12" fill="#333" font-weight="bold">
|
||||
<text x="600" y="100" text-anchor="end">78%</text>
|
||||
<text x="585" y="140" text-anchor="end">75%</text>
|
||||
<text x="550" y="180" text-anchor="end">68%</text>
|
||||
<text x="530" y="220" text-anchor="end">64%</text>
|
||||
<text x="520" y="260" text-anchor="end">62%</text>
|
||||
<text x="520" y="300" text-anchor="end">62%</text>
|
||||
<text x="520" y="340" text-anchor="end">62%</text>
|
||||
<text x="520" y="380" text-anchor="end">62%</text>
|
||||
<text x="495" y="420" text-anchor="end">57%</text>
|
||||
<text x="495" y="460" text-anchor="end">57%</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.4 KiB |
|
After Width: | Height: | Size: 1.1 MiB |
|
After Width: | Height: | Size: 113 KiB |
|
After Width: | Height: | Size: 248 KiB |
|
After Width: | Height: | Size: 237 KiB |
|
After Width: | Height: | Size: 1.2 MiB |
|
After Width: | Height: | Size: 864 KiB |
|
After Width: | Height: | Size: 264 KiB |
|
After Width: | Height: | Size: 1012 KiB |
|
After Width: | Height: | Size: 1.3 MiB |
|
After Width: | Height: | Size: 871 KiB |
|
After Width: | Height: | Size: 298 KiB |
@@ -0,0 +1,65 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 700">
|
||||
<!-- Background -->
|
||||
<rect width="800" height="700" fill="#f5f5f5"/>
|
||||
|
||||
<!-- Title -->
|
||||
<text x="400" y="40" font-family="Arial, sans-serif" font-size="24" font-weight="bold" text-anchor="middle" fill="#333333">Detecting Excessive Agency Issues in LLMs</text>
|
||||
|
||||
<!-- Testing Approaches Section -->
|
||||
<rect x="50" y="70" width="340" height="560" rx="10" fill="#e6f3ff" stroke="#4a90e2" stroke-width="2"/>
|
||||
<text x="220" y="100" font-family="Arial, sans-serif" font-size="20" font-weight="bold" text-anchor="middle" fill="#333333">Testing Approaches</text>
|
||||
|
||||
<!-- Unauthorized Access -->
|
||||
<rect x="70" y="120" width="300" height="120" rx="5" fill="#ffffff" stroke="#4a90e2" stroke-width="2"/>
|
||||
<text x="220" y="145" font-family="Arial, sans-serif" font-size="16" font-weight="bold" text-anchor="middle" fill="#333333">1. Unauthorized Access</text>
|
||||
<text x="220" y="170" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Broken Function Level Authorization (BFLA)</text>
|
||||
<text x="220" y="190" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Broken Object Level Authorization (BOLA)</text>
|
||||
<text x="220" y="210" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Unauthorized data access or manipulation</text>
|
||||
|
||||
<!-- Manipulation and Injection -->
|
||||
<rect x="70" y="260" width="300" height="100" rx="5" fill="#ffffff" stroke="#4a90e2" stroke-width="2"/>
|
||||
<text x="220" y="285" font-family="Arial, sans-serif" font-size="16" font-weight="bold" text-anchor="middle" fill="#333333">2. Manipulation and Injection</text>
|
||||
<text x="220" y="310" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Prompt injection and extraction</text>
|
||||
<text x="220" y="330" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Indirect prompt injection through trusted data</text>
|
||||
|
||||
<!-- Scope and Capability Expansion -->
|
||||
<rect x="70" y="380" width="300" height="120" rx="5" fill="#ffffff" stroke="#4a90e2" stroke-width="2"/>
|
||||
<text x="220" y="405" font-family="Arial, sans-serif" font-size="16" font-weight="bold" text-anchor="middle" fill="#333333">3. Scope and Capability Expansion</text>
|
||||
<text x="220" y="430" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Unauthorized tool or API usage</text>
|
||||
<text x="220" y="450" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Execution of restricted operations</text>
|
||||
<text x="220" y="470" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Accessing resources outside authorized scope</text>
|
||||
|
||||
<!-- Automated Testing -->
|
||||
<rect x="70" y="520" width="300" height="40" rx="5" fill="#ffffff" stroke="#4a90e2" stroke-width="2"/>
|
||||
<text x="220" y="545" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#333333">Automated Red Testing</text>
|
||||
|
||||
<!-- Social Engineering -->
|
||||
<rect x="70" y="570" width="300" height="40" rx="5" fill="#ffffff" stroke="#4a90e2" stroke-width="2"/>
|
||||
<text x="220" y="595" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#333333">Social Engineering</text>
|
||||
|
||||
<!-- Monitoring Strategies Section -->
|
||||
<rect x="410" y="70" width="340" height="560" rx="10" fill="#fff0e6" stroke="#ff9966" stroke-width="2"/>
|
||||
<text x="580" y="100" font-family="Arial, sans-serif" font-size="20" font-weight="bold" text-anchor="middle" fill="#333333">Monitoring Strategies</text>
|
||||
|
||||
<!-- Logging -->
|
||||
<rect x="430" y="130" width="300" height="80" rx="5" fill="#ffffff" stroke="#ff9966" stroke-width="2"/>
|
||||
<text x="580" y="170" font-family="Arial, sans-serif" font-size="16" font-weight="bold" text-anchor="middle" fill="#333333">Comprehensive Logging</text>
|
||||
<text x="580" y="195" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">Log every AI action and interaction</text>
|
||||
|
||||
<!-- Alerts -->
|
||||
<rect x="430" y="230" width="300" height="120" rx="5" fill="#ffffff" stroke="#ff9966" stroke-width="2"/>
|
||||
<text x="580" y="260" font-family="Arial, sans-serif" font-size="16" font-weight="bold" text-anchor="middle" fill="#333333">Anomaly Alerts</text>
|
||||
<text x="580" y="285" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Unusual API call spikes</text>
|
||||
<text x="580" y="305" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Restricted operation attempts</text>
|
||||
<text x="580" y="325" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Infrequent resource access</text>
|
||||
|
||||
<!-- Extended Monitoring -->
|
||||
<rect x="430" y="370" width="300" height="120" rx="5" fill="#ffffff" stroke="#ff9966" stroke-width="2"/>
|
||||
<text x="580" y="400" font-family="Arial, sans-serif" font-size="16" font-weight="bold" text-anchor="middle" fill="#333333">Extended System Monitoring</text>
|
||||
<text x="580" y="425" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Unexpected data changes</text>
|
||||
<text x="580" y="445" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Atypical transaction patterns</text>
|
||||
<text x="580" y="465" font-family="Arial, sans-serif" font-size="12" text-anchor="middle" fill="#666666">• Unfamiliar access attempts</text>
|
||||
|
||||
<!-- Note on Tools -->
|
||||
<text x="580" y="520" font-family="Arial, sans-serif" font-size="14" font-style="italic" text-anchor="middle" fill="#333333">Integrate with existing observability tools</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.6 KiB |
@@ -0,0 +1,37 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 600">
|
||||
<!-- Background -->
|
||||
<rect width="800" height="600" fill="#f0f8ff"/>
|
||||
|
||||
<!-- Title -->
|
||||
<text x="400" y="40" font-family="Arial, sans-serif" font-size="24" font-weight="bold" text-anchor="middle" fill="#2c3e50">Excessive Agency in LLMs</text>
|
||||
|
||||
<!-- Example 1: Overreaching Tools -->
|
||||
<rect x="50" y="80" width="340" height="150" rx="10" fill="#ffffff" stroke="#3498db" stroke-width="2"/>
|
||||
<text x="220" y="135" font-family="Arial, sans-serif" font-size="18" font-weight="bold" text-anchor="middle" fill="#2c3e50">Overreaching Tools</text>
|
||||
<text x="220" y="165" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#7f8c8d">Document Summarization API</text>
|
||||
<text x="220" y="195" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#e74c3c">Includes edit & delete capabilities</text>
|
||||
|
||||
<!-- Example 2: Development Artifacts -->
|
||||
<rect x="410" y="80" width="340" height="150" rx="10" fill="#ffffff" stroke="#3498db" stroke-width="2"/>
|
||||
<text x="580" y="135" font-family="Arial, sans-serif" font-size="18" font-weight="bold" text-anchor="middle" fill="#2c3e50">Development Artifacts</text>
|
||||
<text x="580" y="165" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#7f8c8d">Testing tool in production</text>
|
||||
<text x="580" y="195" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#e74c3c">Has broad system access</text>
|
||||
|
||||
<!-- Example 3: Insecure APIs -->
|
||||
<rect x="50" y="250" width="340" height="150" rx="10" fill="#ffffff" stroke="#3498db" stroke-width="2"/>
|
||||
<text x="220" y="305" font-family="Arial, sans-serif" font-size="18" font-weight="bold" text-anchor="middle" fill="#2c3e50">Insecure APIs</text>
|
||||
<text x="220" y="335" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#7f8c8d">Customer data lookup</text>
|
||||
<text x="220" y="365" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#e74c3c">IDOR vulnerability allows arbitrary data access</text>
|
||||
|
||||
<!-- Example 4: Excessive Database Privileges -->
|
||||
<rect x="410" y="250" width="340" height="150" rx="10" fill="#ffffff" stroke="#3498db" stroke-width="2"/>
|
||||
<text x="580" y="305" font-family="Arial, sans-serif" font-size="18" font-weight="bold" text-anchor="middle" fill="#2c3e50">Excessive Database Privileges</text>
|
||||
<text x="580" y="335" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#7f8c8d">Product catalog query</text>
|
||||
<text x="580" y="365" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#e74c3c">Full read/write access to all tables</text>
|
||||
|
||||
<!-- Example 5: Privileged Account Misuse -->
|
||||
<rect x="230" y="420" width="340" height="150" rx="10" fill="#ffffff" stroke="#3498db" stroke-width="2"/>
|
||||
<text x="400" y="475" font-family="Arial, sans-serif" font-size="18" font-weight="bold" text-anchor="middle" fill="#2c3e50">Privileged Account Misuse</text>
|
||||
<text x="400" y="505" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#7f8c8d">Support chatbot</text>
|
||||
<text x="400" y="535" font-family="Arial, sans-serif" font-size="14" text-anchor="middle" fill="#e74c3c">Uses admin credentials, can access all data</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 304 KiB |
|
After Width: | Height: | Size: 136 KiB |
|
After Width: | Height: | Size: 129 KiB |
|
After Width: | Height: | Size: 168 KiB |