Skip to main content
Host Configuration Review
  1. cysec/

Host Configuration Review

·3 mins·

Salah satu aktivitas dalam keamanan siber adalah melakukan audit terhadap konfigurasi host. Audit dilakukan dengan membandingkan kondisi sistem terhadap baseline yang telah ditentukan, sehingga konfigurasi yang tidak sesuai dapat diidentifikasi secara konsisten.

Beberapa referensi yang dapat digunakan sebagai baseline antara lain:

Hasil audit perlu dipahami dalam konteks sistem yang diperiksa. Perbedaan dari baseline tidak selalu berarti kerentanan yang dapat dieksploitasi, tetapi tetap perlu didokumentasikan dan ditinjau.

Kategori Pemeriksaan
#

Konfigurasi User dan Group
#

Pemeriksaan konfigurasi user dan group mencakup penerapan prinsip least privilege, kebijakan password yang lemah, dan kredensial yang mudah ditebak. Seluruh akun beserta keanggotaan group-nya perlu diinventarisasi untuk mengidentifikasi:

  • akun dengan akses administratif atau root;
  • akun default yang seharusnya dinonaktifkan; dan
  • kebijakan password yang tidak memenuhi baseline.

Permission File dan Directory
#

Pemeriksaan permission mencakup konfigurasi SUID dan SGID, script yang dapat ditulis oleh user yang tidak semestinya, serta akses terhadap path sensitif seperti /etc/shadow dan private key SSH. Permission default directory dan konfigurasi ACL juga perlu ditinjau untuk memastikan tidak terdapat akses yang terlalu luas.

Konfigurasi Service
#

Pada Linux, pemeriksaan dapat mencakup konfigurasi systemd. Pada Windows, pemeriksaan dapat mencakup Service Control Manager. Perhatian perlu diberikan pada execution path yang ambigu dan unquoted service path.

Jika user non-privileged dapat menulis ke salah satu directory perantara dalam execution path, binary berbahaya dapat ditempatkan pada path tersebut dan dijalankan dengan privilege akun service.

Scheduled Task dan Cron Job
#

Script atau binary yang dijalankan oleh scheduled task dengan privilege tinggi harus memiliki permission yang sesuai. Konfigurasi task juga tidak boleh dapat dimodifikasi oleh user yang tidak berwenang.

Scheduled task yang menggunakan wildcard untuk memproses file dalam directory dapat berisiko terhadap wildcard injection. Pemeriksaan dapat dilakukan dengan cara berikut:

  • inventarisasi seluruh scheduled job dan identifikasi job yang berjalan dengan privilege tinggi;
  • periksa permission script atau binary yang dipanggil oleh scheduled task;
  • pada Linux, tinjau system-wide crontab dan crontab setiap user; dan
  • pada Windows, tinjau task melalui Task Scheduler.

Penyimpanan Credential
#

Sumber credential yang perlu diperiksa antara lain:

  • .bash_history;
  • environment variable;
  • file konfigurasi aplikasi yang berisi credential database atau API key;
  • private key SSH dengan permission yang terlalu permisif;
  • file konfigurasi web; dan
  • Windows Credential Manager.

Pada Windows, beberapa artefak yang dapat ditinjau antara lain output cmdkey /list, penggunaan runas /savecred, dan credential yang tersimpan pada registry.

Konfigurasi Network
#

Konfigurasi network yang terlalu permisif dapat memperluas exposure service. Contohnya adalah service database yang melakukan bind ke 0.0.0.0 alih-alih 127.0.0.1 ketika service tersebut hanya diperlukan secara lokal.

Konfigurasi seperti ini tidak selalu menjadi exploit langsung, tetapi dapat menyediakan jalur tambahan untuk eksploitasi ketika dikombinasikan dengan kelemahan lain.

Tools Pendukung
#

Beberapa tools yang dapat digunakan untuk membantu proses audit antara lain:

  • Nessus;
  • Lynis;
  • OpenSCAP;
  • CIS-CAT;
  • LinPEAS;
  • WinPEAS; dan
  • PowerUp.

Tools tersebut berfungsi sebagai pendukung, bukan pengganti pemahaman terhadap konfigurasi yang diperiksa. Setiap temuan perlu divalidasi secara manual agar hasil audit dapat direpresentasikan dengan tepat dan tidak menimbulkan false positive.

Triase Temuan
#

Setelah temuan dikumpulkan, lakukan triase berdasarkan dampak dan kemungkinan eksploitasi. Beberapa pertanyaan yang dapat digunakan antara lain:

  • Apakah temuan tersebut dapat dieksploitasi secara langsung?
  • Apakah temuan tersebut dapat menghasilkan akses atau privilege escalation?
  • Apakah eksploitasi memerlukan chaining dengan kelemahan lain?
  • Apakah terdapat kontrol kompensasi yang mengurangi dampaknya?
  • Seberapa besar pengaruh temuan terhadap kerahasiaan, integritas, dan ketersediaan sistem?

Temuan dengan jalur eksploitasi langsung dan dampak tinggi perlu diprioritaskan. Temuan lain tetap perlu dicatat karena dapat menjadi bagian dari attack chain pada kondisi tertentu.

Lakukan pemeriksaan hanya pada sistem milik sendiri, lab, atau lingkungan yang telah memperoleh izin.

Askarhabibulloh
Author
Askarhabibulloh