Compliance Automation
Burp Suite Pro Compliance Automation PCI-DSS OWASP ISO 27001 SOC 2 PDPA Scan Report CI/CD DevSecOps DAST
| Standard | Focus Area | Burp Scan Profile | Key Checks |
|---|---|---|---|
| PCI-DSS v4.0 | Payment Security | PCI-DSS Audit | SQLi XSS Auth Encryption |
| OWASP Top 10 | Web Security | OWASP Top 10 Audit | Injection Auth SSRF IDOR |
| ISO 27001 | Info Security | Full Audit | Access Control Encryption |
| SOC 2 | Cloud Security | Full Audit | Auth Data Protection |
| HIPAA | Health Data | Sensitive Data Audit | PHI Exposure Encryption |
| PDPA | Personal Data (TH) | Data Exposure Audit | PII Leak Consent |
Scan Configuration
# === Compliance Scan Configuration ===
from dataclasses import dataclass
@dataclass
class ScanConfig:
compliance: str
scan_type: str
checks: str
schedule: str
report_format: str
configs = [
ScanConfig("PCI-DSS v4.0",
"Crawl & Audit (Active + Passive)",
"SQL Injection, XSS, CSRF, Authentication Bypass, "
"Sensitive Data Exposure, TLS/SSL Config, "
"Session Management, Error Handling",
"ทุกไตรมาส + หลัง Major Change",
"PCI-DSS Compliance Report (HTML + XML)"),
ScanConfig("OWASP Top 10 2021",
"Crawl & Audit (Active + Passive)",
"A01 Broken Access Control, A02 Crypto Failures, "
"A03 Injection, A05 Misconfig, A07 Auth Failures, "
"A08 Integrity Failures, A10 SSRF",
"ทุก Sprint หรือทุก 2 สัปดาห์",
"OWASP Top 10 Report (HTML)"),
ScanConfig("ISO 27001 / SOC 2",
"Full Audit (Active + Passive)",
"ทุก Check ของ Burp Scanner + Custom Checks "
"Access Control, Encryption, Error Handling, "
"Information Disclosure, Authentication",
"ทุกเดือน + ก่อน Audit",
"Full Technical Report (HTML + PDF)"),
ScanConfig("PDPA Thailand",
"Passive + Targeted Active",
"PII Exposure (ชื่อ อีเมล เบอร์โทร บัตรประชาชน), "
"Cookie Consent, Data Transmission Security, "
"Access Control for Personal Data",
"ทุกไตรมาส",
"Data Protection Report (HTML)"),
]
print("=== Scan Configurations ===")
for c in configs:
print(f"\n [{c.compliance}]")
print(f" Scan: {c.scan_type}")
print(f" Checks: {c.checks}")
print(f" Schedule: {c.schedule}")
print(f" Report: {c.report_format}")
CI/CD Integration
# === DevSecOps Pipeline with Burp ===
# Burp Suite Enterprise REST API Example
# curl -X POST "https://burp-enterprise.example.com/api/v1/scans" \
# -H "Authorization: Bearer $BURP_TOKEN" \
# -H "Content-Type: application/json" \
# -d '{
# "scan_configurations": ["OWASP Top 10"],
# "urls": ["https://staging.example.com"],
# "schedule": {"initial_run_time": "now"}
# }'
# Jenkins Pipeline Example
# pipeline {
# stages {
# stage('SAST') { steps { sh 'sonar-scanner' } }
# stage('SCA') { steps { sh 'snyk test' } }
# stage('Build') { steps { sh 'docker build -t app .' } }
# stage('Container Scan') { steps { sh 'trivy image app' } }
# stage('Deploy Staging') { steps { sh 'kubectl apply -f staging/' } }
# stage('DAST - Burp') {
# steps {
# sh 'curl -X POST $BURP_API/scans ...'
# sh 'sleep 600' // Wait for scan
# sh 'curl $BURP_API/scans/$ID/report > report.html'
# }
# }
# stage('Quality Gate') {
# steps {
# script {
# def highs = sh(script: 'parse-burp-report.sh', returnStdout: true)
# if (highs.toInteger() > 0) { error "High vulnerabilities found!" }
# }
# }
# }
# }
# }
@dataclass
class PipelineStage:
stage: str
tool: str
type: str
gate: str
time: str
pipeline = [
PipelineStage("SAST (Static Analysis)",
"SonarQube / Semgrep",
"Source Code Scan",
"No Critical/High findings",
"3-10 นาที"),
PipelineStage("SCA (Dependency Scan)",
"Snyk / Dependabot",
"Library Vulnerability Scan",
"No Known Critical CVE",
"1-3 นาที"),
PipelineStage("Container Scan",
"Trivy / Grype",
"Docker Image Vulnerability",
"No Critical CVE in Base Image",
"1-3 นาที"),
PipelineStage("DAST (Dynamic Scan)",
"Burp Suite Pro/Enterprise",
"Running Application Scan",
"No High/Critical Vulnerability",
"30-120 นาที"),
PipelineStage("Compliance Report",
"Burp Report + Custom Script",
"Generate Compliance Report",
"All Required Checks Pass",
"5 นาที"),
]
print("=== DevSecOps Pipeline ===")
for p in pipeline:
print(f" [{p.stage}] Tool: {p.tool}")
print(f" Type: {p.type}")
print(f" Gate: {p.gate}")
print(f" Time: {p.time}")
Report & Remediation
# === Compliance Report Workflow ===
@dataclass
class ReportWorkflow:
step: str
action: str
responsible: str
deadline: str
workflow = [
ReportWorkflow("Scan Complete",
"Review Burp Scan Results จัดลำดับ Severity",
"Security Engineer",
"ภายใน 1 วัน"),
ReportWorkflow("Triage Findings",
"แยก True Positive / False Positive ยืนยัน Vulnerability",
"Security Engineer + Developer",
"ภายใน 3 วัน"),
ReportWorkflow("Create Tickets",
"สร้าง Jira Ticket สำหรับแต่ละ Vulnerability",
"Security Engineer",
"ภายใน 1 วัน"),
ReportWorkflow("Remediate",
"Developer แก้ไข Vulnerability ตาม Guidance",
"Developer",
"Critical 7 วัน High 30 วัน Medium 90 วัน"),
ReportWorkflow("Rescan & Verify",
"Rescan เพื่อยืนยันว่าแก้ไขแล้ว",
"Security Engineer",
"ภายใน 3 วันหลังแก้"),
ReportWorkflow("Generate Report",
"สร้าง Compliance Report สำหรับ Auditor",
"Security Engineer",
"ก่อน Audit 2 สัปดาห์"),
]
print("=== Report Workflow ===")
for w in workflow:
print(f" [{w.step}] {w.action}")
print(f" Responsible: {w.responsible}")
print(f" Deadline: {w.deadline}")
เคล็ดลับ
- Schedule: ตั้ง Scan อัตโนมัติทุกสัปดาห์/Sprint ไม่ใช่แค่ก่อน Audit
- Staging: Scan บน Staging ก่อน Production เสมอ
- Quality Gate: ตั้ง Gate ไม่ให้ Deploy ถ้ามี Critical/High
- False Positive: Mark False Positive เพื่อไม่ต้อง Review ซ้ำ
- Remediation SLA: Critical 7 วัน High 30 วัน Medium 90 วัน
Compliance Automation คืออะไร
ทดสอบอัตโนมัติ PCI-DSS OWASP ISO 27001 SOC 2 HIPAA PDPA Burp Scanner Report ลดเวลา Manual Testing DevSecOps
ตั้งค่า Scan อย่างไร
Target Scope Scan Configuration PCI-DSS OWASP Crawl Audit Authentication Session Schedule Speed Result Severity Rescan
สร้าง Report อย่างไร
HTML XML PDF OWASP Map PCI-DSS Compliance Executive Summary Technical Detail Remediation Guidance Custom Template Auditor
ใช้กับ CI/CD อย่างไร
Burp Enterprise REST API Jenkins CircleCI GitHub Actions Quality Gate SAST SCA DAST Container Scan DevSecOps Pipeline Slack Jira
สรุป
Burp Suite Pro Compliance Automation PCI-DSS OWASP ISO 27001 PDPA Scan Report CI/CD DevSecOps Quality Gate Remediation SLA
