Network hardening merupakan aktivitas di dalam layer pencegahan strategi keamanan yang berfokus untuk melindungi jaringan. Tujuan utama dari network hardening adalah menghentikan akses dari pihak yang tidak terotorisasi. Ancaman yang mungkin dari jaringan adalah adanya network mapping, port scanning, dan traffic sniffing. Saat suatu pihak dapat melakukan network mapping maka saat itu juga pihak tersebut telah mengetahui topologi dari jaringan yang dibuat. Sedangkan port scanning akan mencari mana port yang tersedia atau terbuka dari jaringan untuk pihak yang tidak terotorisasi masuk. Saat topologi dan port telah dikuasai maka traffic sniffing akan melakukan perjalanan untuk mendapatkan berbagai informasi.
Ping, nmap, dan wireshark merupakan tools yang secara berurut digunakan untuk network mapping, port scanning, dan traffic sniffing. Teknik ini berguna untuk white hat hacker yang memang butuh untuk memecahkan jaringan dengan ijin yang punya, namun sebaliknya back hat hacker juga memanfaatkannya untuk kejahatan. Nah, oleh sebab itu network hardening dibutuhkan dalam hal ini. Perhatikan hal di bawah:
- Network Hardening
- Protect from Network Mapping and Port Scanning
- Disable ICMP (internet control message protocol)
- Disable SNMP (simple network management protocol)
- Protect from Traffic Sniffing
- Disable promiscuous mode on NICs
- Use switches instead of hubs in a network
- Encrypt sensitive data in transit
- Network Architecture Hardening
- Adding security components to the network
- Network firewalls
- Intrusion prevention systems (IPSs)
- Segmenting a network
- Creating private subnets
- Using network access control lists (network ACL)
Setelah jaringan diperkuat atau diperkeras sehingga lebih sulit untuk diretas maka yang perlu dilakukan selanjutnya adalah system hardening. Kalau network hardening lebih kepada layer sedangkan system hardening lebih kepada kode-kode computing yang dapat melindungi dari serangan pihat tidak berkepentingan.
![]() |
| sumber: vitalsource.com |
Pada system hardening ada 3 segi, yaitu:
- Authentication: validasi dengan you are who
- Authorization: verifikasi ijin untuk akses sumber daya
- Accounting: mengumpulkan informasi yang biasanya untuk audit
Caranya system hardening, yaitu:
- Matikan layanan yang tidak diperlukan
- Perhatikan proses yang berjalan di foreground atau background
- Kendalikan operasi komputer melalui group policies
- Secara reguler lakukan patching dan updating
- Pada sisi client
- Aktifkan antivirus dan firewalls
- Jalankan aplikasi sesedikitmungkin
- Lakukan update jika ada release terbaru
- Batasi penggunaan perangkat removable seperti flashdisk
- Kendalikan download file
- Batasi layanan terminal (CLI)
- Pantau environment yang berjalan
- Pada sisi server
- Batasi akses fisik (misalnya menggunakan fingerprint atau retina check)
- Gunakan peran yang berdedikasi
- Gunakan file system (rwx atau password)
- Gunakan enkripsi dan PKI (sertifikat keamanaan web)
- Gunakan peringatan (misalnya melalui email)
- Lakukan update jika release telah tersedia
- Batasi akses administratif (gunakan user standard dan jangan root user)
- FTP server
- Non aktifkan mode anonim
- Gunakan internet protocols (IP) filtering
- Folder terisolasi
- Rawat kuota
- Buat permission untuk folder
- DHCP server
- Aktifkan port security
- Buat peranan terisolasi
Di AWS sedikitnya ada 4 layanan untuk system hardening, yaitu AWS trusted advisor (semacam cs yang sedia 24 jam), Amazon GuardDuty (mendeteksi ancaman), AWS Shield (menangani DDoS), dan AWS CloudTrail (menangani log). Sekarang akan diterapkan network hardening dan system hardening di AWS cloud secara ringkas ikuti langkah di bawah:
- Network Hardening
- Add tags
- Buka EC2 instance
- Pilih tab Tags
- Pilih Manage tags
- Pilih Add tag dan isi pada bagian key dan value, misalnya:
- key: SecurityScan
- value: true
- Pilih save
- Configure and run Amazon Inspector
- Buka AWS inspector dan switch ke Inspector Classic
- Pilih Get started
- Pilih Advanced setup
- Di dalam define an assesment target isi datanya, misalkan:
- Name: Network-Audit
- Clear check box for All Instances
- Tags: Key, pilih SecurityScan (yang sebelumnya telah dibuat)
- Tags: Value, pilih true
- Clear check box for Install Agents
- Pilih next
- Pada Define an assessment template isi data, misalkan:
- Name: Assessment-Template-Network
- Rules package, leave Network Reachability-1.1 (x)
- Duration: 15 Minutes
- Clear the check box for Assessment Schedule
- Pilih next
- Pilih create
- Periksa status scan
- Di panel navigasi sebelah kiri pilih Assessment runs
- Cari bagian yang tadi telah dibuat
- Jika belum muncul statusnya tekan tombol refresh
- Analyze Amazon Inspector findings
- Perhatikan jika ada high-severity findings dan cermati pada:
- AWS agent ID
- Description
- Recommendation
- Perhatikan juga apabila ada medium-severity findings dan cermati
- Update security group
- Cek di Inbound rules
- Apabila ada port range 23 sebaiknya di delete karena port 23 Telnet itu celah untuk keamanan diserang
- Untuk SSH rule hapus current inbound jika ada IP address 0.0.0.0 karena itu sama dengan port 22 yang bisa diakses oleh siapapun
- Jangan lupa simpan perubahan
- Replace server with System Manager
- Sebelumnya untuk mengakses server bisa menggunakan SSH, hal ini tidak direkomendasikan. Sebaiknya untuk mengakses server menggunakan Session Manager dari Systems Manager
- Pilih Security Groups
- Pilih Security group Id dari EC2 Instance
- Pilih Edit inbound rules
- Pilih delete SSH inbound rule dan save
- Gunakan Session Manager yang ada di System Manager saja untuk mengakses server
- System Hardening
- Select patch baselines
- Buka Systems Manager
- Di bagian panel navigasi sebelah kiri pada area Node Management pilih Fleet Manager
- Pilih EC2 instance kemudian pada Node action pilih View details
- perhatikan Platform type, Node type, OS name, dan IAM role
- Kembali ke System Manager homepage
- Pada panel navigasi di bagian Node Management pilih Patch Manager
- Pilih View predefined patch baselines
- Pilih Patch baselines
- Di search bar cari patching default sesuai OS yang digunakan
- Pilih kemudian pilih Actions dan pilih Modify patch groups
- Di dalam Modify patch group pilih Patch group dan pilih sesuai informasi sebelumnya
- Pilih close
- Tag Instance
- Buka EC2 Instance
- Pilih Instace kemudian pilih Tags tab
- Pilih Manage tags dan pilih Add tag dan isi informasi, misalnya:
- Key: Patch Group
- Value: WindowsProd
- Pilih Save, ulangi untuk instance yang sejenis
- Create a custom patch baseline
- Kembali ke System Manager
- Pada panel navigasi di bawah Node Management pilih Patch Manager
- Pada instance yang akan di patch pilih View predefined patch baselines
- Pilih Patch baselines tab
- Pilih Create patch baseline
- Pada Patch baseline details isi informasi, misalnya:
- Name: WindowsServerSecurityUpdates
- Description: Windows security baseline patch
- Operating system: Windows
- Leave the check box for Default patch baseline
- Pada Approval rules for operating systems isi informasi, misalnya:
- Product: WindowsServer2019
- Severity: Critical
- Classification: SecurityUpdates
- Auto-approval: 3 days
- Compliance reporting: Critical
- Pilih Add rule dan isi informasi, misalnya:
- Product: WindowsServer2019
- Severity: Important
- Classification: SecurityUpdates
- Auto-approval: 3 days
- Compliance reporting: High
- Pilih Create patch baseline
- Pada bagian Patch baselines pilih misalnya WindowsServerSecurityUpdates
- Pilih Actions kemudian pilih Modify patch groups
- Pada bagian Patch group isi misalnya WindowsProd
- Pilih Add dan pilih Close
- Configure patching
- Kembali ke Patch Manager kemudian pilih Configure patching
- Pada bagian Instance to patch pilih Select a patch group dan pilih nama group patch yang telah dibuat sebelumnya
- Pada Patching schedule pilih Schedule in a new Maintenance Window dan lakukan konfigurasi, misalnya:
- How do you want to specify a Maintenance Window Schedule?: Use a CRON scheduler builder
- Maintenance Window run frequency: Every
- Every Day: 02.00
- Maintenance Window duration: 1
- Maintenance Window name: sesuai namanya
- Pada Patching operation pilih Scan and install dan pilih Configure patching
- Patch instances instantly
- Kembali ke Patch Manager dan pilih Patch baselines tab kemudian pilih baseline yang telah dibuat
- Pilih Configure patching
- Pada Configure patching isi informasi, misalnya:
- How do you want to select instances?: Select a patch group
- Patch groups: pilih sesuai group yang telah dibuat
- How do you want to specify a patching schedule?: Skip scheduling and patch instances now
- Patching operation: Scan and install
- Pilih Configure patching
- Jika berhasil akan muncul Successfully configured patching
- Pilih refresh dan tunggu hingga status semua instances Success
- Pilih satu instance kemudian pilih View output
- Pada Step 1 - Command description and status pilih Output
- Pada bagian output skrol hingga menemukan InstalledCount untuk melihat berapa banyak patches yang telah diinstall
- Pada panel navigasi di bawah Node Management pilih Patch Manager
- Pilih Configure patching
- Pada Configure patching isi informasi, misalnya:
- How do you want to select instances?: Select a patch group
- Patch groups: pilih yang sebelumnya telah dibuat
- How do you want to specify a patching schedule?: Skip scheduling and patch instances now
- Patching operation: Scan and install
- Pilih Configure patching
- Verify compliance
- Kembali ke Patch Manager
- Pilih tab Dashboard, di bawah compliance summary bisa dilihat Compliant
- Pilih tab Compliance reporing tab, dan perhatikan Compliance status
Jadi di AWS cara sederhana untuk melakukan network hardening adalah hanya menggunakan session manager untuk mengakses server dan untuk melakukan system hardening adalah dengan mengatur patch sehingga terupadate sama setiap server yang memiliki sistem operasi sama.
Jaringan atau network dapat diperkuat dengan DNSSEC atau domain name security extension. Ada 3 hal yang dilakukan dalam DNS security, yaitu membuat DNS server yang redundant, menggunakan protokol seperti DNSSEC, dan merekam aktivitas DNS yang terjadi. DNSSEC merupakan protokol yang diciptakan untuk memitigasi masalah keamanan yang terjadi pada DNS, misalnya DNS cache poisoning, yaitu dengan memverifikasi DNS record menggunakan cryptographic signatures. Dengan DNSSEC maka semua level DNS akan ditandatangani secara cryptographic, artinya root DNS server, TLD server, dan authoritative name server. Dengan adanya tanda tangan disetiap level maka akan terbangun rantai kepercayaan (chain of trust) sampai ke level root DNS server. Dengan adanya rantai ini akan menurunkan risiko DNS record dirusak, diubah, atau dimanipulasi dalam perjalanan.
Penguatan jaringan juga bisa melalui proxy atau server perantara, baik perangkat lunak maupun perangkat keras antara client dan internet. Tujuan dari proxy server ini adalah melindungi client. Cara kerjanya proxy server ini adalah menggantikan IP address sumber dari permintaan (request) dengan IP address milik proxy server, kemudian permintaan tersebut diarahkan ke server yang dituju. Akhirnya server tujuan tidak akan menyadari identitas client tetapi hanya identitas proxy server. Jenis proxy server ada 2, yaitu forward proxy server (untuk client) dan reverse proxy server (untuk server). Banyak strategi yang digunakan untuk memperkuat jaringan, diantaranya rate limit (membatasi lalu lintas misalnya 5000 request dalam 1 menit), firewall (hanya paket data yang memenuhi syarat yang bisa masuk ke dalam jaringan), dan HTTPS (request yang dikirim akan dienkripsi).
Firewall di Linux dapat menggunakan iptables. Untuk memeriksa status konfigurasi pada iptables gunakan command: sudo iptables -L -v. Konfigurasi sederhana dapat dilakukan untuk membatasi request. Misalnya saja lakukan ping pada default gateway dan IP address. Untuk mendapatkan default gateway dan IP address di Linux gunakan command: ifconfig. Setelah didapatkan lakukan ping pada keduanya, secara default jika belum ada konfigurasi maka ping akan berhasil. Gunakan command di bawah untuk membatasi ping:
- sudo iptables -A OUTPUT -p icmp --icmp-type echo-request -j DROP
- sudo : untuk mendapatkan superuser do
- -A OUPUT : mengelola akses keluar
- -p icmp : protokol apa yang akan diblokir
- --icmp-type echo-request : tipe icmp yang akan diblokir
- -j DROP : melakukan aksi drop
- sudo iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
- -A INPUT : mengelola akses masuk
Jika dilakukan ping kembali pada default gateway maka akan muncul not permitted atau tidak dijinkan. Nah, untuk menetralkan kembali gunakana command: sudo iptables -F.
ref:

Komentar