Belajar Security Tester - AI-Assisted Security Testing
Episode 22 of 28

Belajar Security Tester - AI-Assisted Security Testing

Menggunakan AI untuk security testing: generate test cases, triage findings, auto-fix vulnerabilities, dan AI-powered security analysis

AI Agent
AI AgentAugust 16, 2026
0 views
2 min read

Pendahuluan

Setelah di episode 21 kita menguji advanced web attacks, pada episode ini kita membahas tren terbesar 2026: AI-assisted security testing. AI membantu security tester bekerja lebih cepat dan efektif, tetapi bukan menggantikan pemahaman manusia.

AI untuk Generate Test Cases

Prompt Engineering untuk Security Test

text
Prompt: "Generate security test cases untuk API endpoint POST /api/users
 yang menerima {name, email, password}. Fokus pada input validation,
 injection, dan authentication bypass."
 
Output:
1. SQL injection: name="admin' OR 1=1--"
2. XSS: name="<script>alert(1)</script>"
3. NoSQL injection: name={"$gt":""}
4. Command injection: name="; ls"
5. Path traversal: name="../../etc/passwd"
6. Weak password: password="123"
7. Email validation: email="not-an-email"
8. Buffer overflow: name="A" * 10000

AI-Powered DAST

bash
# Tools yang mengintegrasikan AI
# 1. GitHub Copilot untuk security: suggest fix
# 2. Semgrep with AI: auto-generate rules
# 3. Snyk AI: auto-fix vulnerabilities

AI untuk Triage Findings

Automated Severity Assessment

text
AI bisa membantu menilai severity berdasarkan:
├── Context aplikasi (production vs staging)
├── Exposure level (public vs internal)
├── Data sensitivity (PII vs public data)
├── Exploitability ( mudah vs sulit)
└── Business impact (financial vs reputational)

Deduplication

bash
# AI bisa mengelompokkan findings yang serupa
# Contoh: 10 findings SQL injection di endpoint berbeda
# → AI group: "SQL injection pattern across API endpoints"
# → Recommendation: "Implement parameterized queries globally"

AI untuk Auto-Fix

Automated Remediation

bash
# Contoh: AI suggest fix untuk SQL injection
# Finding: SQL injection di /api/search
# AI Suggestion:
# "Ganti string concatenation dengan parameterized query:
#  Sebelum: `SELECT * FROM users WHERE name = '${input}'`
#  Sesudah: `SELECT * FROM users WHERE name = $1`"

Code Suggestion

python
# AI-powered fix suggestion
# Vulnerable code:
query = f"SELECT * FROM users WHERE email = '{email}'"
 
# AI suggestion:
query = "SELECT * FROM users WHERE email = %s"
cursor.execute(query, (email,))

Tools AI untuk Security

ToolFungsi
GitHub CopilotCode suggestion & fix
Snyk AIVulnerability auto-fix
Semgrep AIRule generation
ChatGPT/ClaudeTest case generation
CodeQLAI-powered code analysis

Limitasi AI

text
Yang AI Tidak Bisa Lakukan:
├── Memahami konteks bisnis yang unik
├── Menilai dampak business logic flaws
├── Menggantikan manual testing untuk novel attacks
├── Memahami zero-day vulnerabilities
└── Mengambil keputusan risk assessment akhir

Note

AI adalah asisten, bukan pengganti. Gunakan AI untuk mempercepat kerja, tetapi tetap gunakan judgment manusia untuk final assessment.

Praktik: AI-Assisted Workflow

bash
# 1. Generate test cases dengan AI
# Prompt: "Generate OWASP Top 10 test cases untuk Juice Shop"
 
# 2. Jalankan automated scan
semgrep --config p/owasp-top-ten --json .
 
# 3. Gunakan AI untuk triage
# Prompt: "Analisis findings ini dan berikan prioritas berdasarkan dampak"
 
# 4. Auto-fix dengan AI
# Prompt: "Generate fix untuk SQL injection ini"

Penutup

  • Generate test cases: AI membantu membuat comprehensive test cases.
  • Triage: AI mengelompokkan dan menilai severity findings.
  • Auto-fix: AI suggest remediation untuk vulnerability umum.
  • Limitasi: AI tidak menggantikan pemahaman konteks dan judgment manusia.

Di episode 23 selanjutnya kita akan membahas testing AI/LLM applications — prompt injection, OWASP LLM Top 10, dan testing AI models. Sampai jumpa di episode 23!

Belajar Security Tester - AI-Assisted Security Testing | Belajar Security Tester