Security Check VPS Aplikasi
321
Volatility, Uncertainty, Complexity, Ambiguity (VUCA), merupakan suatu risiko, ancaman atas kelangsungan layanan publik dan layanan administrasi pemerintahan. Dari sisi teknologi, secara garis besar suatu ekosistem layanan mencakup host (server dan client), network dan app. Server host merupakan kawasan tempat di mana aplikasi berdiri dan beroperasi. Sehingga cukup perlu untuk melakukan pemeriksaan secara berkala berkenaan hal-hal umum dalam cakupan keamanan server host, yang mana pada umumnya berwujud Virtual Machine (VM) atau VPS.
Hal-hal yang mencakup people, process & technology dalam kaitannya dengan VM sekurang-kurangnya sebagai berikut:
- cek pos-el
- update
- [people] last login
- [people] permit root login
- [people] max auth tries
- [people] sudoer list
- [process] top
- [technology] firewall & port monitoring
- [technology] file & directory monitoring
- [people] active session
- [technology] kredensial SSO
- [technology] cron
Berikut command yang lumrah digunakan atau hal-hal perlu dilakukan berkenaan server host layanan pemerintah pada umumnya
cek pos-el
- pastikan layanan hosting anda mendukung mailer otomatis atas ancaman siber yang berkaitan dengan malware.
- lakukan pengecekan pos-el secara berkala. Rekomendasi frekuensi pengecekan yakni dua kali sehari baik hari kerja maupun hari libur, semisal pagi dan petang. Pengecekan pagi untuk monitoring ancaman siber yang mungkin terjadi dari sore hingga pagi, pengecekan sore untuk monitoring ancaman siber yang mungkin terjadi dari pagi hingga sore.
Tujuan
- untuk monitoring kehadiran aset-aset digital yang tidak diharapkan (malware) di VPS operasi layanan. Sebaik apapun pengaturan keamanan, selalu ada celah kerentanan baik dari sisi SDM, proses maupun teknologi. Penyelesaian atas hal tersebut yakni orang yang menemukan celah kerentanan berkomunikasi dan berkoordinasi dengan masing-masing pengelola aplikasi. Namun dari sisi riwayat yang ada, memang tidak ada riwayat black hat hacker memberikan pelaporan dan memberikan solusi atas permasalahan yang ada. Orang yang memberikan pelaporan dan solusi permasalahan atas celah kerentanan aplikasi yakni white hat hacker. Perbedaan pada keduanya yakni pada kontrak/PKS, black hat hacker tidak memiliki izin dan tidak ada kesepakatan dengan orang-orang yang terlibat dalam pengelolaan sistem, sehingga dalam praktiknya hanya akan menimbulkan kerusakan sosial semisal pihak satu menyalahkan pihak yang lain, salah tuduh, dsb. White hat hacker memiliki kontrak/PKS yang sifatnya publik (dapat dipublikasikan melalui badan publik) antara pihaknya dengan pihak yang berkenaan dengan pengelolaan sistem elektronik, memiliki item/framework pengujian yang jelas dan tidak ada ambiguitas, sehingga tidak ada aktivitas-aktivitas atau pergerakan rahasia yang menimbulkan dampak negatif dalam wujud suatu polemik hanya untuk proyeksi kondisi ditemukan dan ditutupnya celah kerentanan.
- untuk memitigasi tidak terjaringnya file-file yang diinformasikan oleh firewall/malware scanner. Sehingga apabila mendapatkan pos-el dari layanan hosting, pengelola teknis aplikasi dapat langsung melakukan pemeriksaan ke VM dan melakukan scanning manual.
- disebabkan tidak ada kepastian dampak positif yang dapat diharapkan dari eksistensi black hat hacker, serta hasil kerja white hat hacker belum tentu dapat menutup celah kerentanan suatu sistem elektronik selama-lamanya, maka mekanisme mailer otomatis atas ancaman siber dan pengecekan otomatis melalui akun non anonim adalah sebuah segmen kebutuhan tersendiri dalam konteks security check.
update
# apt update
Tujuan
- pemutakhiran sistem
[people] last login
# last
Tujuan
- melihat apakah ada root login secara langsung, disortir berdasarkan waktu. Jika user adalah manusia, maka manusia memiliki nama terang. Root login secara langsung indikasi adanya login session yang anonim, non manusia atau belum dilakukan ssh hardening. Sistem yang sudah masuk tahap productions atau operations seharusnya sudah tidak memiliki akun anonim yang dapat diakses secara langsung
[people] permit root login
# cat /etc/ssh/sshd_config
Tujuan
- memantau apakah permit root login terbuka (yes) atau tertutup (no). Jika terbuka, maka ditutup, untuk meminimalisir risiko aktivitas anonim, eksploit, dan pembuatan user baru
[people] max auth tries
# cat /etc/ssh/sshd_config
Tujuan
- memantau apakah max auth tries ada batasan bilangan tertentu atau tidak, jika tidak maka dibatasi, untuk meminimalisir risiko brute force
[people] sudoer list
# grep '^sudo:.*$' /etc/group # list user dengan hak sudoer, atau
# cat /etc/sudoers
# less /etc/passwd # daftar user di sistem
Tujuan
- memantau apakah ada pembuatan user baru atau anonim yang bukan berasal dari instansi
[process] top running process
# top
Tujuan
- memantau apakah malware scanner/removal atau aplikasi firewall aktif atau tidak
[technology] firewall & port monitoring
# ufw status
Tujuan
- memantau apakah ada port tidak digunakan yang terbuka, jika ada maka ditutup
- memantau apakah port 80 sudah ditutup atau tidak untuk kondisi operasi normal
[technology] file & directory monitoring
# cd /path-menuju-public-directory
# ls -alt --full-time
Tujuan
- untuk memantau apakah ada malware/file baru yang mencurigakan pada direktori publik
[people] active session
# who
Tujuan
- memantau apakah ada jumlah session yang mencurigakan atau lebih dari yang seharusnya
- memantau siapa saja yang sedang aktif untuk memastikan ada atau tidak adanya session anonim atau session tidak dikenal yang aktif
[technology] kredensial SSO
https://haveibeenpwned.com
Tujuan
- memeriksa apakah kredensial yang digunakan SSO untuk akses layanan hosting ada terjadi kebocoran
[technology] cron
/var/spool/cron/crontabs # jenis cron: User
/etc/crontab # jenis cron: Sistem
/etc/cron.d # jenis cron: Paket/App
/etc/cron.(daily, weekly, monthly) # jenis cron: Script Rutin
Tujuan
- memeriksa apakah ada otomatisasi atau sisa-sisa trigger (pemicu) malware
Demikian ringkasan perintah Security Check VPS yang umum digunakan oleh system administrator untuk menjaga keamanan layanan pemerintah.