Security Assessment, Tracking, Remediation, and Incident Automation
Panel orkestrasi pemindaian keamanan yang menyatukan registrasi aset, eksekusi scan, prioritisasi temuan, keputusan gate, dan monitoring ticket DFIR-IRIS dalam satu dashboard operasional.
Repository ini dibuat sebagai panel orkestrasi keamanan untuk tim operasional yang perlu:
- mendaftarkan aset dari berbagai jenis target;
- menjalankan scan dengan engine yang berbeda dari satu panel;
- membaca hasil dalam bentuk severity, risk score, dan status tindak lanjut;
- memutuskan apakah artefak atau target
allowed,need_approval, ataublocked; - mengirim temuan prioritas ke DFIR-IRIS tanpa memindahkan operator ke workflow lain;
- memonitor case IRIS secara read-only dari SATRIA.
SATRIA tidak menggantikan scanner yang sudah ada. Perannya adalah menghubungkan engine seperti Trivy, Syft, Grype, ZAP, dan OpenVAS ke panel kerja yang mudah dipakai operator SOC, tim pengembang, dan pengambil keputusan.
Platform ini cocok untuk:
- operator SOC yang perlu satu panel untuk scan, triase, dan ticket monitoring;
- tim DevSecOps yang ingin menempatkan security gate sebelum artefak masuk staging atau production;
- analis keamanan yang perlu memonitor temuan dan status case IRIS dari satu tempat;
- pimpinan teknis yang membutuhkan ringkasan kondisi aset, finding, dan eskalasi.
Dalam ekosistem kerja SITP saat ini:
PANAHberfokus pada assessment teknis, simulasi eksekusi, dan review evidence.SATRIAberfokus pada registrasi aset, orkestrasi scan, pembacaan hasil, dan keputusan operasional.PERISAIatau DFIR-IRIS berfokus pada case management, task, activity log, evidence, dan investigasi insiden lanjutan.
Dengan pola ini, SATRIA menjadi jembatan antara assessment teknis dan ticketing formal.
- Registrasi aset multi-target untuk
container_image,web_application,server_ip,source_repository,filesystem,api_endpoint, dan target lain yang sudah dipetakan ke profile scan. - Wizard operasional berbasis step agar operator mengikuti urutan kerja yang konsisten.
- Scan orchestration untuk Trivy, Syft, Grype, ZAP, dan OpenVAS dari satu panel.
- Scan history, retry job, cleanup lokal, dan detail eksekusi per scan.
- Findings view dengan filter otomatis, severity donut, risk summary, dan prioritas temuan.
- Ticket publish ke DFIR-IRIS untuk temuan prioritas, plus monitoring status case dari SATRIA.
- Reports dan analytics untuk ringkasan scan, exposure aset, severity, status finding, dan status case IRIS.
- SOP kontekstual pada menu Assets, termasuk panduan pipeline CI/CD.
- Admin token / service account untuk integrasi pipeline.
- Gate policy untuk keputusan
allowed,need_approval, danblocked.
-
OverviewMenampilkan ringkasan aset aktif, scan jobs, findings, exposure aset, dan jalur kerja operator. -
AssetsDigunakan untuk menambah, mengubah, dan menghapus aset; membuka SOP tambah aset; membuka panduan interkoneksi CI/CD; serta mengelola allowlist atau gate terkait jenis target. -
ScansDigunakan untuk menjalankan scan, melihat riwayat job, membuka detail eksekusi, retry scan, dan membersihkan data lokal yang sudah tidak relevan. -
FindingsMenampilkan daftar temuan berdasarkan severity, aset, scanner, status, dan prioritas risiko. Dari sini operator dapat membuka detail temuan dan mempublish tiket ke IRIS. -
TicketsMenjadi panel monitoring case DFIR-IRIS dari SATRIA, baik yang berasal dari temuan SATRIA maupun sinkronisasi ticket manual dari IRIS sesuai konfigurasi integrasi. -
ReportsMenyediakan ringkasan analitik, export CSV/Excel, dan representasi visual exposure, severity, serta distribusi status case di IRIS. -
API DocsMenyediakan referensi endpoint untuk interkoneksi automation, pipeline, dan service account. -
Admin TokenMenyediakan pengelolaan service account pipeline untuk API key dan scope integrasi. -
Gate PolicyMenyediakan pengaturan aturan kebijakan yang menentukan keputusan gate sepertiallowed,need_approval, ataublocked.
-
SyftInventaris komponen software atau SBOM. -
GrypePemeriksaan CVE terhadap dependency atau komponen software. -
TrivyScanner serbaguna untuk image, repository, IaC, dan secret. -
ZAPScanner keamanan aplikasi web. -
OpenVASScanner keamanan host atau jaringan.
Alur kerja SATRIA dirancang sederhana namun operasional:
- aset didaftarkan sesuai tipe target;
- operator memilih profile scan yang sesuai konteks;
- SATRIA menjalankan engine yang relevan;
- hasil dibaca menjadi finding yang lebih mudah ditindaklanjuti;
- dashboard menampilkan severity, risk score, status, dan exposure;
- bila perlu, temuan dipublish ke DFIR-IRIS;
- SATRIA hanya memonitor status ticket dari IRIS tanpa menduplikasi workflow investigasi.
Dengan pola ini, operator tidak perlu berpindah-pindah antara alat teknis, spreadsheet, dan sistem ticketing.
SATRIA sudah disiapkan untuk diposisikan sebagai security gate pada jalur build-release.
Pola minimum yang didukung:
- pipeline build artefak atau image;
- pipeline push ke registry;
- pipeline mengirim
release intakeke SATRIA; - SATRIA membuat scan job berbasis profile yang disetujui;
- pipeline melakukan polling status;
- SATRIA mengembalikan hasil dan keputusan:
allowedneed_approvalblocked
- bila perlu, SATRIA meneruskan temuan prioritas ke IRIS.
Endpoint minimum yang tersedia:
POST /api/v1/releases/intakePOST /api/v1/scansGET /api/v1/scans/{scan_id}GET /api/v1/scans/{scan_id}/resultPOST /api/v1/scans/{scan_id}/publish-ticket
Fitur integrasi yang sudah ada:
- service account pipeline;
- API key berbasis scope;
- gate policy;
- demo gate
passeddanfailed; - dokumentasi Jenkins server dan Jenkins lokal untuk uji koneksi ke SATRIA.
SATRIA terhubung ke DFIR-IRIS untuk kebutuhan ticketing formal.
Fungsi integrasi yang tersedia:
- publish temuan dari SATRIA ke IRIS sebagai case;
- monitoring status case IRIS dari SATRIA;
- refresh status remote dari IRIS;
- sinkronisasi ticket manual IRIS agar tetap terpantau di SATRIA sesuai konfigurasi integrasi;
- penerimaan alert Wazuh ke PERISAI/DFIR-IRIS melalui integration script Wazuh;
- pembacaan statistik status case seperti
Open,Assigned,In Progress,Closed, dan lainnya.
Prinsip yang dipakai:
- workflow investigasi utama tetap berada di IRIS;
- SATRIA dipakai untuk orkestrasi scan, prioritisasi, dan monitoring integrasi;
- SATRIA bersifat read-only terhadap workflow case IRIS kecuali pada aksi publish ticket.
Panduan integrasi Wazuh ke PERISAI tersedia di INTEGRASI-WAZUH-KE-PERISAI.md.
satria/
|-- app/
| |-- api/
| |-- core/
| |-- static/
| |-- templates/
| `-- ...
|-- docs/
|-- infra/
| |-- dfir-iris/
| |-- greenbone/
| `-- jenkins-local/
|-- scripts/
|-- tools/
|-- docker-compose.yml
|-- Dockerfile
|-- Makefile
|-- requirements.txt
`-- README.md
Ringkasnya:
app/memuat backend, template, static asset, scanner orchestration, dan integrasi utama SATRIA.docs/memuat SOP, walkthrough top management, skenario IRIS, audit UR, dan panduan operasional.infra/dfir-iris/memuat komponen integrasi dan deployment DFIR-IRIS.infra/greenbone/memuat komponen terkait OpenVAS/Greenbone.infra/jenkins-local/memuat Jenkins lokal untuk uji pipeline.scripts/memuat utilitas operasional tambahan.
Minimum yang disarankan:
- Docker Engine
- Docker Compose plugin
- Git
- Port
8090untuk SATRIA lokal - Resource tambahan jika OpenVAS dan IRIS dijalankan dalam host yang sama
Jika ingin menguji pipeline secara lokal:
- port
8088untuk Jenkins lokal
Di root repository:
docker compose up -d --buildSetelah stack aktif:
- aplikasi lokal: http://<SATRIA_HOST>:<SATRIA_PORT>
- health check: http://<SATRIA_HOST>:<SATRIA_PORT>/health
Untuk stop stack:
docker compose downUntuk melihat log:
docker compose logs -fRepository ini menyediakan dua pola uji Jenkins untuk simulasi interkoneksi ke SATRIA.
Endpoint operasional yang disarankan:
- Jenkins server: http://<JENKINS_SERVER_HOST>:<JENKINS_SERVER_PORT>
- job utama:
satria-security-gate - job demo lolos:
satria-gate-passed-demo - job demo gagal:
satria-gate-failed-demo
Endpoint lokal untuk pengembangan:
- Jenkins lokal: http://<JENKINS_LOCAL_HOST>:<JENKINS_LOCAL_PORT>
Catatan keamanan:
- seluruh hostname, IP, port, username, password, dan token pada README ini disamarkan;
- gunakan environment variable, secret manager, atau credential store internal untuk nilai aktual;
- jangan menuliskan kembali kredensial produksi pada dokumentasi proyek.
Skenario yang sudah disiapkan:
- intake release ke SATRIA;
- create scan job;
- polling result;
- gate decision
passed; - gate decision
failed; - publish ticket opsional.
Kemampuan yang sudah tersedia pada iterasi saat ini:
- asset registration multi-target;
- SOP operasional berbasis halaman Assets dan Asset SOP;
- findings, risk summary, dan filter otomatis;
- publish ticket ke IRIS;
- ticket monitoring dari IRIS;
- service account dan API key untuk pipeline;
- gate policy dan gate decision;
- Jenkins lokal untuk uji interkoneksi;
- landing page ekosistem untuk PANAH, SATRIA, dan PERISAI.
Catatan yang masih perlu diperhatikan pada pengembangan lanjutan:
- aturan gate bisa terus diperkaya per environment atau per jenis target;
- arsip artefak pipeline dapat diperluas untuk retensi dan audit trail;
- integrasi approval formal dapat diperdalam bila ingin menjadi mandatory gate sebelum production release.
- Gunakan SATRIA sebagai panel orkestrasi dan monitoring, bukan pengganti analisis manual.
- Pastikan tipe target dan profile scan dipilih dengan benar agar hasil tidak bias.
- Gunakan publish ke IRIS hanya untuk finding yang memang perlu dilacak secara formal.
- Untuk pipeline, pastikan API key dibatasi dengan scope minimum yang diperlukan.
developed with love by cakgup
