Instal dan Siapkan alat Audit Keamanan Lynis di Ubuntu 20.04

Dalam tutorial ini, Anda akan belajar cara menginstal dan mengatur alat audit keamanan Lynis di Ubuntu 20.04. Lynis adalah alat keamanan sumber terbuka yang dapat melakukan pemindaian keamanan sistem secara mendalam untuk mengevaluasi profil keamanan sistem. Karena kesederhanaan dan fleksibilitasnya, Lynis dapat digunakan untuk mencapai hal berikut;

  • Audit Keamanan Otomatis
  • Pengujian kepatuhan (misalnya PCI, HIPAA, SOx)
  • Pengujian penetrasi
  • Deteksi kerentanan
  • Pengerasan sistem
  • Konfigurasi dan manajemen aset
  • Manajemen tambalan perangkat lunak
  • Deteksi gangguan

Lynis, bagaimanapun, tidak menyediakan pengerasan sistem secara otomatis tetapi memberikan tip tentang cara mengeraskan sistem Anda.

Ini adalah alat lintas platform dan dirancang untuk sistem yang menjalankan sistem operasi berbasis Linux, macOS, atau Unix.

Instal dan Siapkan alat Audit Keamanan Lynis di Ubuntu 20.04

Instal Lynis di Ubuntu 20.04

Ada berbagai metode di mana Lynis dapat diinstal pada sistem Ubuntu 20.04 atau pada sistem lain. Ini termasuk;

  • Mengkloning repositori Github mereka
  • Melalui tarball sumber
  • Melalui Manajer paket menggunakan repo Perangkat Lunak mereka

Dalam tutorial ini, kita akan menginstal Lynis versi gratis dari repositori perangkat lunak komunitas resmi mereka.

Sebanyak Lynis tersedia di repo alam semesta Ubuntu 20.04 default, itu tidak mutakhir.

apt-cache policy lynis
lynis: Installed: (none) Candidate: 2.6.2-1 Version table: 2.6.2-1 500 500 http://ke.archive.ubuntu.com/ubuntu focal/universe amd64 Packages

Seperti yang Anda lihat, Lynis v2.6.2 disediakan oleh universe repo. Pada tulisan ini, Lynis 3.0.0 adalah versi rilis stabil saat ini.

Anda bisa mendapatkan versi terbaru dengan menggunakan repo perangkat lunak komunitas Lynis.

Instal Repositori Perangkat Lunak Komunitas Lynis di Ubuntu 20.04

Download dan instal kunci penandatanganan PGP repositori Lynis dari server kunci pusat;

wget -O - https://packages.cisofy.com/keys/cisofy-software-public.key | sudo apt-key add -

Instal repositori itu sendiri;

echo "deb https://packages.cisofy.com/community/lynis/deb/ stable main" | sudo tee /etc/apt/sources.list.d/cisofy-lynis.list

Hanya untuk perangkat lunak versi bahasa Inggris, nonaktifkan terjemahan agar tidak didownload untuk menghemat bandwidth.

echo 'Acquire::Languages "none";' | sudo tee /etc/apt/apt.conf.d/99disable-translations

Selanjutnya, sinkronkan ulang repositori paket ke versi terbarunya;

apt install apt-transport-https
apt update

Instal dan Siapkan alat Audit Keamanan Lynis di Ubuntu 20.04

Setelah repo berada di tempatnya, Anda dapat melanjutkan untuk menginstal dan mengatur alat audit keamanan Lynis di Ubuntu 20.04.

apt install lynis

Periksa versi Lynis yang diinstal;

lynis show version
3.0.0

Periksa apakah ada pembaruan yang tersedia;

lynis update info

Periksa status keluaran.

 == Lynis == Version : 3.0.0  Status : Up-to-date  Release date : 2020-03-20 Project page : https://cisofy.com/lynis/ Source code : https://github.com/CISOfy/lynis Latest package : https://packages.cisofy.com/ 2007-2020, CISOfy - https://cisofy.com/lynis/

Sintaks dan Opsi Baris Perintah Lynis

Sintaks perintah Lynis adalah

lynis [scan mode] [other options]

Untuk memperlihatkan perintah Lynis, jalankan;

lynis show commands
Commands: lynis audit lynis configure lynis generate lynis show lynis update lynis upload-only

Untuk menampilkan Pengaturan Lynis berjalan;

lynis show settings

Untuk menunjukkan profil audit yang ditemukan;

lynis show profiles
/etc/lynis/default.prf

Untuk daftar opsi yang lengkap, periksa;

man lynis

Lakukan Audit Sistem menggunakan Lynis di Ubuntu 20.04

Saat dijalankan, Lynis memeriksa sistem dan konfigurasi perangkat lunak apakah ada celah keamanan. Lynis mencatat detail audit dalam file log serta dalam file laporan. Laporan dapat digunakan untuk membandingkan perbedaan antara audit.

Informasi pengujian dan debug masuk /var/log/lynis.log sedangkan data laporan audit disimpan di: /var/log/lynis-report.dat.

/var/log/lynis.log adalah file yang harus diperiksa dan diinterpretasikan oleh auditor karena menjelaskan alasan masalah yang diidentifikasi serta saran tentang cara memperbaiki masalah tersebut.

Area sistem berikut mungkin diperiksa oleh Lynis:

  • File pemuat boot
  • File konfigurasi
  • Paket perangkat lunak
  • Direktori dan file yang terkait dengan logging dan audit

Menjalankan Lynis untuk Pertama kalinya

Lynis dapat berjalan secara interaktif atau sebagai cronjob. Izin root (misalnya sudo) tidak diperlukan, namun mereka memberikan rincian lebih lanjut selama audit.

Untuk menjalankan audit sistem dasar dengan Lynis untuk pertama kalinya. jalankan perintah di bawah ini;

lynis audit system

Saat dijalankan, ia menampilkan berbagai pemeriksaan dan hasil ke output standar serta menulis ke file log dan laporan;

Keluaran Lynis mungkin menunjukkan OK atau PERINGATAN dengan OK artinya baik sementara PERINGATAN menunjukkan masalah yang teridentifikasi dalam sistem yang memerlukan perhatian. Terkadang apa yang ditandai sebagai OK mungkin tidak benar-benar baik untuk praktik terbaik dan apa yang ditandai sebagai PERINGATAN sebenarnya bukan apa-apa dan dapat diabaikan.

pemeriksaan sampel;

... [+] Printers and Spools ------------------------------------ - Checking cups daemon [ NOT FOUND ] - Checking lp daemon [ NOT RUNNING ] [+] Software: e-mail and messaging ------------------------------------ [+] Software: firewalls ------------------------------------ - Checking iptables kernel module [ FOUND ] - Checking iptables policies of chains [ FOUND ] - Checking for empty ruleset [ OK ] - Checking for unused rules [ FOUND ] - Checking host based firewall [ ACTIVE ] [+] Software: webserver ------------------------------------ - Checking Apache (binary /usr/sbin/apache2) [ FOUND ] Info: Configuration file found (/etc/apache2/apache2.conf) Info: No virtual hosts found * Loadable modules [ FOUND (119) ] - Found 119 loadable modules mod_evasive: anti-DoS/brute force [ NOT FOUND ] mod_reqtimeout/mod_qos [ FOUND ] ModSecurity: web application firewall [ NOT FOUND ] - Checking nginx [ NOT FOUND ] [+] SSH Support ------------------------------------ - Checking running SSH daemon [ FOUND ] - Searching SSH configuration [ FOUND ] - OpenSSH option: AllowTcpForwarding [ SUGGESTION ] - OpenSSH option: ClientAliveCountMax [ SUGGESTION ]... [+] Home directories ------------------------------------ - Permissions of home directories [ WARNING ] - Ownership of home directories [ OK ] - Checking shell history files [ OK ]...

Ringkasan hasil;

... ================================================================================ -[ Lynis 3.0.0 Results ]- Warnings (1): ---------------------------- ! Found one or more vulnerable packages. [PKGS-7392] https://cisofy.com/lynis/controls/PKGS-7392/ Suggestions (56): ---------------------------- * This release is more than 4 months old. Consider upgrading [LYNIS] https://cisofy.com/lynis/controls/LYNIS/ * Set a password on GRUB boot loader to prevent altering boot configuration (e.g. boot in single user mode without password) [BOOT-5122] https://cisofy.com/lynis/controls/BOOT-5122/ * Consider h
ardening system services [BOOT-5264] - Details : Run '/usr/bin/systemd-analyze security SERVICE' for each service https://cisofy.com/lynis/controls/BOOT-5264/...

Detail pemindaian Keamanan Lynis;

Dari detail pemindaian, Anda akan melihat persentase skor pengerasan sistem Anda saat ini, jumlah pengujian yang dilakukan, plugin yang diaktifkan, mode pemindaian yang diaktifkan, dan modul Lynis yang diaktifkan.

... ================================================================================ Lynis security scan details: Hardening index : 60 [############ ] Tests performed : 250 Plugins enabled : 0 Components: - Firewall [V] - Malware scanner [X] Scan mode: Normal [V] Forensics [ ] Integration [ ] Pentest [ ] Lynis modules: - Compliance status [?] - Security audit [V] - Vulnerability scan [V] Files: - Test and debug information : /var/log/lynis.log - Report data : /var/log/lynis-report.dat ================================================================================

Periksa Peringatan dan Saran Pengerasan dari laporan Audit Lynis

Anda dapat memeriksa peringatan atau saran pemindaian audit Lynis dari /var/log/lynis-report.datlaporan.

grep -i "^warning" /var/log/lynis-report.dat
warning[]=PKGS-7392|Found one or more vulnerable packages.|-|-|

Untuk memeriksa saran;

grep -i "^suggestion" /var/log/lynis-report.dat
suggestion[]=LYNIS|This release is more than 4 months old. Consider upgrading|-|-| suggestion[]=BOOT-5122|Set a password on GRUB boot loader to prevent altering boot configuration (e.g. boot in single user mode without password)|-|-| suggestion[]=BOOT-5264|Consider hardening system services|Run '/usr/bin/systemd-analyze security SERVICE' for each service|-| suggestion[]=KRNL-5820|If not required, consider explicit disabling of core dump in /etc/security/limits.conf file|-|-| suggestion[]=AUTH-9229|Check PAM configuration, add rounds if applicable and expire passwords to encrypt with new values|-|-| suggestion[]=AUTH-9230|Configure minimum encryption algorithm rounds in /etc/login.defs|-|-| suggestion[]=AUTH-9230|Configure maximum encryption algorithm rounds in /etc/login.defs|-|-| suggestion[]=AUTH-9262|Install a PAM module for password strength testing like pam_cracklib or pam_passwdqc|-|-| suggestion[]=AUTH-9282|When possible set expire dates for all password protected accounts|-|-| suggestion[]=AUTH-9286|Configure minimum password age in /etc/login.defs|-|-| suggestion[]=AUTH-9286|Configure maximum password age in /etc/login.defs|-|-|..

Tampilkan Detail Tes Tertentu

Setiap pemeriksaan sistem memiliki ID pengujian terkait. Jika Anda perlu menemukan detail lebih lanjut tentang tes tertentu, Anda dapat mengambil ID-nya dan menampilkan lebih banyak informasi menggunakan perintah di bawah ini;

lynis show details TEST-ID

Ambil contoh, mari kita periksa lebih lanjut tentang paket rentan dengan peringatan di atas

lynis show details PKGS-7392
2020-08-05 15:43:47 Performing test ID PKGS-7392 (Check for Debian/Ubuntu security updates) 2020-08-05 15:43:47 Action: updating package repository with apt-get 2020-08-05 15:44:01 Result: apt-get finished 2020-08-05 15:44:01 Test: Checking if /usr/lib/update-notifier/apt-check exists 2020-08-05 15:44:01 Result: found /usr/lib/update-notifier/apt-check 2020-08-05 15:44:01 Test: checking if any of the updates contain security updates 2020-08-05 15:44:03 Result: found 9 security updates via apt-check 2020-08-05 15:44:03 Hardening: assigned partial number of hardening points (0 of 25). Currently having 109 points (out of 180) 2020-08-05 15:44:04 Result: found vulnerable package(s) via apt-get (-security channel) 2020-08-05 15:44:04 Found vulnerable package: apport 2020-08-05 15:44:04 Found vulnerable package: grub-common 2020-08-05 15:44:04 Found vulnerable package: grub-pc 2020-08-05 15:44:04 Found vulnerable package: grub-pc-bin 2020-08-05 15:44:04 Found vulnerable package: grub2-common 2020-08-05 15:44:04 Found vulnerable package: libmysqlclient21 2020-08-05 15:44:04 Found vulnerable package: libssh-4 2020-08-05 15:44:04 Found vulnerable package: python3-apport 2020-08-05 15:44:04 Found vulnerable package: python3-problem-report 2020-08-05 15:44:04 Warning: Found one or more vulnerable packages. [test:PKGS-7392] [details:-] [solution:-] 2020-08-05 15:44:04 Suggestion: Update your system with apt-get update, apt-get upgrade, apt-get dist-upgrade and/or unattended-upgrades [test:PKGS-7392] [details:-] [solution:-] 2020-08-05 15:44:04 ====

Menonaktifkan Pemeriksaan Tertentu

Dengan asumsi Anda memiliki beberapa pemeriksaan yang memberikan peringatan dan Anda menganggapnya sebagai positif palsu, maka Anda dapat membuat profil kustom Anda di mana Anda dapat menentukan ID pemeriksaan dan memberi tahu Lynis untuk melewati pemeriksaan terhadap ID tertentu tersebut.

Lynis menggunakan profil untuk memiliki serangkaian opsi yang telah ditentukan sebelumnya untuk sistem operasi dan preferensi Anda. Profil default disimpan di bawah /etc/lynisdirektori.

ls /etc/lynis
default.prf developer.prf

Anda dapat memberi tahu Lynis untuk menggunakan profil tertentu menggunakan –profile <name> opsi.

Jika Anda tidak menentukan profil, maka profil default /etc/lynis/default.prfakan digunakan. Anda dapat membuka file ini dan membaca isinya. Hal ini sangat terpuji.

Untuk membuat profil kustom Anda sendiri, Anda dapat menyalin profil default dan mengeditnya untuk menentukan opsi pengujian kustom Anda.

Misalnya, untuk melewati peringatan tentang paket rentan yang ditampilkan dalam laporan audit Lynis di atas, buat profil kustom dan masukkan konten berikut.

vim /etc/lynis/custom.prf
# Lynis - Custom Scan Profile to ignore some warnings # # Ignore Vulnerable packages Warnings skip-test=PKGS-7392

Simpan dan keluar dari file. Saat Anda menjalankan kembali pemindaian audit, pemeriksaan yang ditentukan akan dilewati;

lynis audit system
================================================================================ -[ Lynis 3.0.0 Results ]-  Great, no warnings  Suggestions (56):...

Mengaudit file Docker dengan alat Audit Lynis

juga dimungkinkan untuk mengaudit file Docker Anda menggunakan Lynis.

lynis audit dockerfile Dockerfile

keluaran sampel;

[+] System Tools ------------------------------------ - Scanning available tools... - Checking system binaries... [+] Helper: audit_dockerfile ------------------------------------ File to audit = Dockerfile [+] Image ------------------------------------ Found image: [ nginx:alpine ] [+] Basics ------------------------------------ [+] Software ------------------------------------ [+] Downloads ------------------------------------ No files seems to be downloaded in this Dockerfile [+] Permissions ------------------------------------ ================================================================================ -[ Lynis 3.0.0 Results ]- Warnings (4): ---------------------------- ! No maintainer found. Unclear who created this file. [dockerfile] https://cisofy.com/lynis/controls/dockerfile/ ! No ENTRYPOINT defined in Dockerfile. [dockerfile] https://cisofy.com/lynis/controls/dockerfile/ ! No CMD defines in Dockerfile. [dockerfile] https://cisofy.com/lynis/controls/dockerfile/ ! No user declared in Dockerfile. Container will execute command as root [dockerfile] https://cisofy.com/lynis/controls/dockerfile/

Mengaudit host Linux Jarak Jauh menggunakan Lynis

Untuk mengaudit host jarak jauh, gunakan perintah;

lynis audit system remote <host>

Perintah pada dasarnya akan me
mberi Anda langkah-langkah yang perlu Anda ambil untuk memindai host jarak jauh.

Begitulah cara sederhana untuk menginstal dan mengatur alat audit keamanan Lynis di Ubuntu 20.04. Selamat mengaudit dan hardeninAuditg!!

Referensi;

  • Memulai dengan Lynis
  • Lynis – Alat audit keamanan untuk sistem berbasis Linux, macOS, dan UNIX

Tutorial Terkait Lainnya

Cara Melakukan Audit Keamanan Sistem dengan Lynis di Ubuntu 18.04

Batasi Akses ke Halaman Login WordPress ke IP Tertentu dengan libModSecurity

Instal dan gunakan ClamAV di Ubuntu 20.04

Cara Menginstal dan Mengonfigurasi Maltrail di Ubuntu 18.04

Cara Menginstal RKHunter (RootKit Hunter) Di Ubuntu 18.04