Postur keamanan yang bisa diuji, bukan sekadar klaim pemasaran.
Dokumen ini menargetkan pembaca teknis: peneliti keamanan, pimpinan engineering, dan CTO.
Kami menuliskan kontrol yang sudah berjalan, batas tanggung jawab yang tidak kami kontrol, serta roadmap yang belum selesai tanpa melebih-lebihkan status implementasi.
Arsitektur keamanan (tampilan hibrida)
Pengguna (ID) → Jakarta PoP (<30ms edge) → Cloudflare Workers (Komputasi) → Aiven Postgres (Penyimpanan)
Lapisan Edge
Lapisan terminasi trafik publik di jaringan Cloudflare untuk pemfilteran, perutean, dan keamanan transport.
- • TLS 1.3 untuk data in-transit
- • Proteksi DDoS Anycast dan WAF untuk trafik L3/L4/L7
- • Latensi edge regional APAC, tipikal <30ms dari Indonesia
Lapisan Komputasi
Logika bisnis dieksekusi di Cloudflare Workers dengan konteks request terisolasi.
- • Tidak ada server origin tradisional untuk di-SSH
- • Kontrol autentikasi dan RBAC dijalankan di middleware layanan
- • Rate limit per IP/endpoint/tenant untuk menahan brute force dan penyalahgunaan
Lapisan Penyimpanan
Data operasional dan file disimpan pada Aiven Postgres (terkelola, EU-managed) dan Cloudflare R2 dengan isolasi logis per-organisasi.
- • Isolasi tenant via filter `org_id` di setiap query (logical isolation di shared `public` schema)
- • Postgres dan R2 menggunakan enkripsi at-rest AES-256 pada level infrastruktur
- • Data sensitif aplikasi dienkripsi tambahan menggunakan AES-256-GCM dengan kunci turunan per-tenant
Model ancaman: cakupan proteksi vs batas tanggung jawab
Proteksi Terhadap
- ✓
Akses lintas tenant melalui kontrol isolasi per-organisasi (org_id filter pada setiap query, audit di code review)
- ✓
Brute force pada endpoint autentikasi melalui rate limiting dan TTL sesi ketat
- ✓
Man-in-the-middle (MITM) melalui penegakan TLS 1.3
- ✓
SQL injection melalui validasi input dan pengelolaan query terkontrol
- ✓
XSS melalui sanitasi input/output dan kebijakan header keamanan ketat
- ✓
CSRF pada endpoint sensitif melalui validasi token dan model autentikasi terikat sesi
Di Luar Cakupan
- —
Keamanan fisik data center Cloudflare (di luar kontrol operasional langsung Bisnapi)
- —
Skenario kriptanalisis masa depan yang mematahkan AES-256
- —
Zero-day pada runtime Cloudflare Workers sebelum patch dari vendor tersedia
Lapisan enkripsi
Lapisan
Transport (Klien ↔ Edge)
Mekanisme
TLS 1.3 + post-quantum key exchange (X25519MLKEM768)
Status
Aktif
Catatan
Melindungi data in-transit dari penyadapan dan serangan downgrade pada jalur jaringan.
Lapisan
Database at-rest (Aiven Postgres)
Mekanisme
AES-256 (managed encryption oleh Aiven Cloud)
Status
Aktif
Catatan
Enkripsi infrastruktur untuk data operasional tenant pada storage layer.
Lapisan
Penyimpanan objek at-rest (R2)
Mekanisme
AES-256 (managed encryption oleh Cloudflare)
Status
Aktif
Catatan
Enkripsi infrastruktur untuk file, dokumen, dan attachment tenant.
Lapisan
Level field aplikasi
Mekanisme
AES-256-GCM (kunci turunan per tenant)
Status
Aktif
Catatan
Lapisan tambahan untuk field sensitif agar proteksi tidak hanya bergantung pada enkripsi storage.
Autentikasi, sesi, otorisasi, dan anti-penyalahgunaan
Manajemen Sesi
- • Token sesi menggunakan model split-token (sessionId.secret)
- • Secret token disimpan dalam bentuk hash; plaintext tidak dipersist
- • TTL sesi ketat dan rotasi sesi pada login baru
RBAC
- • Akses endpoint dibatasi berdasarkan role pengguna (RBAC)
- • Penegakan role dilakukan di middleware sebelum handler bisnis
- • Operasi sensitif memerlukan hak akses eksplisit sesuai modul
Rate Limiting
- • Rate limiting diterapkan per IP dan per path
- • Endpoint autentikasi memiliki batas lebih agresif untuk mitigasi brute force
- • Pola anomali request dapat dipakai untuk memicu triase keamanan
Linimasa respons insiden
Fase
Deteksi
Target
Real-time
Tindakan
Monitoring otomatis dan alerting awal dari sinyal operasional + keamanan.
Fase
Triase
Target
< 30 menit
Tindakan
Klasifikasi tingkat keparahan, identifikasi blast radius, dan penentuan penanggung jawab respons.
Fase
Kontainmen
Target
< 1 jam
Tindakan
Isolasi komponen terdampak, pembatasan akses, dan mitigasi dampak lanjutan.
Fase
Notifikasi
Target
< 72 jam (jika berdampak pada data pengguna)
Tindakan
Komunikasi insiden kepada pihak terdampak sesuai kewajiban regulasi yang berlaku.
Fase
Remediasi
Target
Berdasarkan tingkat keparahan
Tindakan
Perbaikan akar masalah, rollout patch, dan validasi bahwa vektor serangan sudah tertutup.
Fase
Pascainsiden
Target
< 7 hari setelah resolusi
Tindakan
Dokumentasi RCA, action items preventif, dan pembaruan kontrol deteksi.
Roadmap Keamanan
Selesai
- Post-quantum TLS aktif (ML-KEM / X25519MLKEM768)
- Isolasi per-tenant via org_id filter di shared Aiven Postgres (audit-able via open-source code review)
- Enkripsi field sensitif aplikasi dengan AES-256-GCM
- Kebijakan Pelaporan Kerentanan (VDP) dengan kanal pelaporan resmi
Sedang Berjalan
- Key rotation terjadwal (target Q3 2026)
- Audit logging terpusat ke R2 (target Q2 2026)
Direncanakan
- Program annual pentest formal (target Q4 2026)
- Program bug bounty publik (target 2027)
- SOC 2 Type II attestation (target 2027)
- TÜV certification (target 2027)
- ISO 27001 certification (TBD)
Program Pelaporan Kerentanan (VDP) untuk peneliti
Email Kontak
security@snappy.co.id
PGP Key
DA49 D01C 616E 83FE F7A2 3C92 7FA3 E73E 1533 A1E5
Jendela Pengungkapan
90 hari
Cakupan
- • *.snappy.co.id
- • *.bisnapi.id (hanya tenant milik pelapor)
- • API publik yang terekspos ke internet
- • Pengujian autentikasi, otorisasi, dan isolasi tenant tanpa payload destruktif
Safe Harbor
Peneliti yang mengikuti aturan VDP (pengujian itikad baik, tanpa eksfiltrasi data produksi, tanpa gangguan layanan) mendapat perlindungan safe harbor sesuai kebijakan program.