Free DLP for Google Drive

Open Source Mini DLP untuk Google Drive


Bayangkan skenario ini: seorang karyawan baru di divisi HR sedang merapikan file-file lama. Tanpa sengaja, dia mengubah setting sharing sebuah spreadsheet gaji seluruh karyawan menjadi “Anyone with the link“. File itu lalu dia kirim ke email pribadinya untuk dikerjakan dari rumah.

Tidak ada yang tahu. Tidak ada alert. Tidak ada yang memblokir.

Ini adalah temuan yang cukup sering kami jumpai saat melakukan audit keamanan di klien kami.

Sebentar, DLP Itu Apa?

Data Loss Prevention atau DLP adalah mekanisme keamanan yang bertugas mendeteksi, memantau, dan mencegah data sensitif keluar dari lingkungan organisasi tanpa izin. Sederhananya: DLP adalah “penjaga pintu” yang mengawasi apakah ada informasi rahasia perusahaan yang bocor keluar, baik disengaja maupun tidak.

Di konteks Google Drive, DLP bekerja dengan cara memindai file yang diunggah atau dibagikan, lalu memblokir atau mengirim alert jika konten tersebut mengandung data sensitif seperti data karyawan, informasi keuangan, kredensial sistem, atau data pelanggan.
Tanpa DLP, kejadian seperti skenario di atas  file gaji yang tidak sengaja dibagikan ke publik bisa berlangsung berhari-hari tanpa ada yang tahu.

Berangkat dari studi kasus itu jadilah kami mencoba membuat Google Apps Script, sebuah platform scripting gratis yang disediakan Google dan berjalan langsung di ekosistemnya. Ternyata, dengan kombinasi Drive API, Drive Activity API, dan sedikit logika, kita bisa membangun DLP yang cukup layak tanpa biaya sepeser pun.

Hasilnya adalah Google Drive DLP Scanner skrip open source yang kami rilis hari ini untuk komunitas.

Cara kerjanya sederhana:

Setiap 5 menit (bisa disetting manual), skrip secara otomatis memeriksa file yang baru dibuat atau diunggah ke Google Drive. Jika ditemukan sesuatu yang mencurigakan, admin langsung dapat email alert. File tersebut kemudian masuk ke daftar monitoring untuk dipantau aktivitasnya.

DLP mengirim alert ke email admin

Apa Saja yang Bisa Dideteksi?

Skrip ini melakukan tiga lapis pemeriksaan pada setiap file baru:

1. Sharing Permission
Apakah file dibagikan ke publik (anyone with the link)? Atau dibagikan ke email di luar domain perusahaan? Ini adalah sumber kebocoran paling umum dan paling sering terjadi tanpa disadari.

2. Nama File
Nama file seperti password_database.xlsx, data_gaji_Q1.xlsx, atau kredensial_server.txt langsung memicu alert. Daftar kata kunci ini bisa dikustomisasi sesuai konteks industri masing-masing.

3. Konten File
Untuk Google Docs dan Google Sheets, skrip membaca isi kontennya dan mencari pola seperti nomor kartu kredit, NIK 16 digit, password plaintext, private key, AWS access key, hingga nomor rekening bank.
Kalau salah satu dari tiga pemeriksaan ini positif, email alert langsung dikirim ke admin.

4. Monitor Siapa yang Mengakses File Sensitif
File yang sudah di-flag tidak berhenti dipantau di situ saja. Setiap 15 menit, skrip juga mengecek apakah ada aktivitas baru pada file tersebut, siapa yang mengedit, memindahkan, meng-copy, bahkan men-download dan admin akan mendapat notifikasi lengkap. Ini berguna misalnya untuk keperluan audit, kamu bisa tahu bahwa file gaji yang tidak sengaja di-share ke eksternal sudah diakses oleh siapa sebelum link-nya dicabut (saat ini keterbatasan API jadi hanya id number saja yang muncul).

Jujur.. Soal Limitasinya

Kami tidak mau oversell. Ini bukan pengganti Google Enterprise DLP. Ada beberapa hal yang memang tidak bisa dilakukan:

  • Deteksi tidak real-time, ada delay sekitar 5 menit
  • Konten PDF atau file Office (Word, Excel) yang diunggah tidak bisa di-scan isinya hanya Google Docs dan Sheets native
  • Pengguna eksternal kadang tampil sebagai ID, bukan email

Tapi untuk perusahaan yang saat ini sama sekali tidak punya lapisan DLP? Ini jauh lebih baik daripada tidak ada sama sekali.

 

Cara Pakainya

Tidak perlu server. Tidak perlu DevOps. Semua jalan di Google Apps Script.

  1. Buka script.google.com → buat project baru
  2. Tambahkan tiga API di Services: Drive API v3, Drive Activity API, People API
  3. Copy-paste kode dari repositori kami
  4. Sesuaikan konfigurasi (email admin & domain perusahaan)
  5. Jalankan createTrigger() sekali → authorize → selesai

Satu saran dari kami: jangan langsung aktifkan fitur AUTO_REVOKE di hari pertama. Jalankan dulu selama 1-2 minggu untuk kenali pola false positive di lingkungan kalian, baru kemudian aktifkan pemblokiran otomatis.

Kami merilis ini di bawah lisensi MIT bebas dipakai, dimodifikasi, bahkan untuk keperluan komersial, selama tetap mencantumkan atribusi.

Kode lengkap, README, dan panduan instalasi tersedia di GitHub:

github.com/EthicNinja/Google-Drive-DLP

Kalau kamu punya ide pengembangan integrasi ke Slack, Telegram, support untuk Shared Drive, atau pola regex untuk industri tertentu, pull request sangat kami sambut.

 

Leave a Reply

Your email address will not be published. Required fields are marked *