Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantor

Π’ Artikel sebelumnya kami telah membahas cara menjalankan Suricata versi stabil di Ubuntu 18.04 LTS. Menyiapkan IDS pada satu node dan mengaktifkan kumpulan aturan gratis cukup mudah. Hari ini kita akan mengetahui cara melindungi jaringan perusahaan menggunakan jenis serangan yang paling umum menggunakan Suricata yang diinstal di server virtual. Untuk melakukan ini, kami memerlukan VDS di Linux dengan dua inti komputasi. Jumlah RAM tergantung pada beban: 2 GB cukup untuk seseorang, dan mungkin diperlukan 4 atau bahkan 6 untuk tugas yang lebih serius Keuntungan dari mesin virtual adalah kemampuan untuk bereksperimen: Anda dapat memulai dengan konfigurasi minimal dan meningkatkan sumber daya sesuai kebutuhan.

Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantorfoto: Reuters

Menghubungkan jaringan

Menghapus IDS ke mesin virtual mungkin diperlukan untuk pengujian. Jika Anda belum pernah berurusan dengan solusi seperti itu, Anda tidak boleh terburu-buru memesan perangkat keras fisik dan mengubah arsitektur jaringan. Sebaiknya jalankan sistem dengan aman dan hemat biaya untuk menentukan kebutuhan komputasi Anda. Penting untuk dipahami bahwa semua lalu lintas perusahaan harus melewati satu node eksternal: untuk menghubungkan jaringan lokal (atau beberapa jaringan) ke VDS dengan IDS Suricata terinstal, Anda dapat menggunakan LembutEter - Server VPN lintas platform yang mudah dikonfigurasi yang menyediakan enkripsi kuat. Koneksi Internet kantor mungkin tidak memiliki IP asli, jadi lebih baik memasangnya di VPS. Tidak ada paket siap pakai di repositori Ubuntu, Anda harus mengunduh perangkat lunak dari keduanya lokasi proyek, atau dari repositori eksternal pada layanan Launchpad (jika Anda percaya padanya):

sudo add-apt-repository ppa:paskal-07/softethervpn
sudo apt-get update

Anda dapat melihat daftar paket yang tersedia dengan perintah berikut:

apt-cache search softether

Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantor

Kami memerlukan softether-vpnserver (server dalam konfigurasi pengujian berjalan di VDS), serta softether-vpncmd - utilitas baris perintah untuk mengonfigurasinya.

sudo apt-get install softether-vpnserver softether-vpncmd

Utilitas baris perintah khusus digunakan untuk mengonfigurasi server:

sudo vpncmd

Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantor

Kami tidak akan berbicara secara detail tentang pengaturannya: prosedurnya cukup sederhana, dijelaskan dengan baik di banyak publikasi dan tidak berhubungan langsung dengan topik artikel. Singkatnya, setelah memulai vpncmd, Anda harus memilih item 1 untuk masuk ke konsol manajemen server. Untuk melakukan ini, Anda harus memasukkan nama localhost dan tekan enter alih-alih memasukkan nama hub. Kata sandi administrator diatur di konsol dengan perintah serverpasswordset, hub virtual DEFAULT dihapus (perintah hubdelete) dan yang baru dibuat dengan nama Suricata_VPN, dan kata sandinya juga diatur (perintah hubcreate). Selanjutnya, Anda harus pergi ke konsol manajemen hub baru menggunakan perintah hub Suricata_VPN untuk membuat grup dan pengguna menggunakan perintah groupcreate dan usercreate. Kata sandi pengguna diatur menggunakan set kata sandi pengguna.

SoftEther mendukung dua mode transfer lalu lintas: SecureNAT dan Local Bridge. Yang pertama adalah teknologi berpemilik untuk membangun jaringan pribadi virtual dengan NAT dan DHCP-nya sendiri. SecureNAT tidak memerlukan TUN/TAP atau Netfilter atau pengaturan firewall lainnya. Perutean tidak memengaruhi inti sistem, dan semua proses divirtualisasikan dan bekerja pada VPS / VDS apa pun, terlepas dari hypervisor yang digunakan. Ini menghasilkan peningkatan beban CPU dan kecepatan lebih lambat dibandingkan dengan mode Jembatan Lokal, yang menghubungkan hub virtual SoftEther ke adaptor jaringan fisik atau perangkat TAP.

Konfigurasi dalam hal ini menjadi lebih rumit, karena perutean terjadi pada level kernel menggunakan Netfilter. VDS kami dibangun di atas Hyper-V, jadi pada langkah terakhir kami membuat jembatan lokal dan mengaktifkan perangkat TAP dengan perintah bridgecreate Suricate_VPN -device:suricate_vpn -tap:yes. Setelah keluar dari konsol manajemen hub, kita akan melihat antarmuka jaringan baru di sistem yang belum diberi IP:

ifconfig

Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantor

Selanjutnya, Anda harus mengaktifkan perutean paket antar antarmuka (penerusan ip), jika tidak aktif:

sudo nano /etc/sysctl.conf

Batalkan komentar pada baris berikut:

net.ipv4.ip_forward = 1

Simpan perubahan ke file, keluar dari editor dan terapkan dengan perintah berikut:

sudo sysctl -p

Selanjutnya, kita perlu menentukan subnet untuk jaringan virtual dengan IP fiktif (misalnya, 10.0.10.0/24) dan menetapkan alamat ke antarmuka:

sudo ifconfig tap_suricata_vp 10.0.10.1/24

Maka Anda perlu menulis aturan Netfilter.

1. Jika perlu, izinkan paket masuk pada port mendengarkan (Protokol berpemilik SoftEther menggunakan HTTPS dan port 443)

sudo iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 992 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 1194 -j ACCEPT
sudo iptables -A INPUT -p udp -m udp --dport 1194 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 5555 -j ACCEPT

2. Siapkan NAT dari subnet 10.0.10.0/24 ke IP server utama

sudo iptables -t nat -A POSTROUTING -s 10.0.10.0/24 -j SNAT --to-source 45.132.17.140

3. Izinkan pengiriman paket dari subnet 10.0.10.0/24

sudo iptables -A FORWARD -s 10.0.10.0/24 -j ACCEPT

4. Izinkan paket yang lewat untuk koneksi yang sudah dibuat

sudo iptables -A FORWARD -p all -m state --state ESTABLISHED,RELATED -j ACCEPT

Kami akan menyerahkan otomatisasi proses saat sistem dimulai ulang menggunakan skrip inisialisasi kepada pembaca sebagai pekerjaan rumah.

Jika Anda ingin memberikan IP kepada klien secara otomatis, Anda juga perlu menginstal semacam layanan DHCP untuk jembatan lokal. Ini menyelesaikan pengaturan server dan Anda dapat pergi ke klien. SoftEther mendukung banyak protokol, yang penggunaannya bergantung pada kemampuan peralatan LAN.

netstat -ap |grep vpnserver

Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantor

Karena router pengujian kami juga berjalan di bawah Ubuntu, mari instal paket softether-vpnclient dan softether-vpncmd dari repositori eksternal untuk menggunakan protokol berpemilik. Anda harus menjalankan klien:

sudo vpnclient start

Untuk mengonfigurasi, gunakan utilitas vpncmd, pilih localhost sebagai mesin tempat vpnclient berjalan. Semua perintah dibuat di konsol: Anda perlu membuat antarmuka virtual (NicCreate) dan akun (AccountCreate).

Dalam beberapa kasus, Anda harus menentukan metode otentikasi menggunakan perintah AccountAnonymousSet, AccountPasswordSet, AccountCertSet, dan AccountSecureCertSet. Karena kami tidak menggunakan DHCP, alamat untuk adaptor virtual diatur secara manual.

Selain itu, kita perlu mengaktifkan ip forward (opsi net.ipv4.ip_forward=1 di file /etc/sysctl.conf) dan mengonfigurasi rute statis. Jika perlu, pada VDS dengan Suricata, Anda dapat mengonfigurasi port forwarding untuk menggunakan layanan yang terinstal di jaringan lokal. Dalam hal ini, penggabungan jaringan dapat dianggap selesai.

Konfigurasi yang kami usulkan akan terlihat seperti ini:

Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantor

Menyiapkan Suricata

Π’ Artikel sebelumnya kita berbicara tentang dua mode operasi IDS: melalui antrian NFQUEUE (mode NFQ) dan melalui salinan nol (mode AF_PACKET). Yang kedua membutuhkan dua antarmuka, tetapi lebih cepat - kami akan menggunakannya. Parameter diatur secara default di /etc/default/surikata. Kita juga perlu mengedit bagian vars di /etc/suricata/suricata.yaml, menyetel subnet virtual di sana sebagai rumah.

Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantor

Untuk me-restart IDS, gunakan perintah:

systemctl restart suricata

Solusinya sudah siap, sekarang Anda mungkin perlu menguji ketahanannya terhadap tindakan jahat.

Simulasi serangan

Mungkin ada beberapa skenario untuk penggunaan tempur layanan IDS eksternal:

Perlindungan terhadap serangan DDoS (tujuan utama)

Sulit untuk mengimplementasikan opsi seperti itu di dalam jaringan perusahaan, karena paket untuk analisis harus sampai ke antarmuka sistem yang terlihat di Internet. Bahkan jika IDS memblokirnya, lalu lintas palsu dapat menurunkan tautan data. Untuk menghindarinya, Anda perlu memesan VPS dengan koneksi Internet yang cukup produktif yang dapat melewati semua lalu lintas jaringan lokal dan semua lalu lintas eksternal. Seringkali lebih mudah dan lebih murah untuk melakukan ini daripada memperluas saluran kantor. Sebagai alternatif, perlu disebutkan layanan khusus untuk perlindungan terhadap DDoS. Biaya layanan mereka sebanding dengan biaya server virtual, dan tidak memerlukan konfigurasi yang memakan waktu, tetapi ada juga kerugiannya - klien hanya menerima perlindungan DDoS untuk uangnya, sementara IDS miliknya dapat dikonfigurasi seperti Anda menyukai.

Perlindungan terhadap serangan eksternal jenis lain

Suricata mampu mengatasi upaya untuk mengeksploitasi berbagai kerentanan dalam layanan jaringan perusahaan yang dapat diakses dari Internet (mail server, web server dan aplikasi web, dll). Biasanya, untuk ini, IDS dipasang di dalam LAN setelah perangkat perbatasan, tetapi mengambilnya di luar memiliki hak untuk tetap ada.

Perlindungan dari orang dalam

Terlepas dari upaya terbaik dari administrator sistem, komputer di jaringan perusahaan dapat terinfeksi malware. Selain itu, terkadang muncul hooligan di daerah setempat yang mencoba melakukan beberapa operasi ilegal. Suricata dapat membantu memblokir upaya tersebut, meskipun untuk melindungi jaringan internal, lebih baik memasangnya di dalam perimeter dan menggunakannya bersamaan dengan sakelar terkelola yang dapat mencerminkan lalu lintas ke satu port. IDS eksternal juga tidak berguna dalam hal ini - setidaknya akan dapat menangkap upaya malware yang hidup di LAN untuk menghubungi server eksternal.

Untuk memulainya, kami akan membuat pengujian lain yang menyerang VPS, dan pada router jaringan lokal kami akan meningkatkan Apache dengan konfigurasi default, setelah itu kami akan meneruskan port ke-80 dari server IDS. Selanjutnya, kami akan mensimulasikan serangan DDoS dari host yang menyerang. Untuk melakukan ini, unduh dari GitHub, kompilasi dan jalankan program xerxes kecil di node penyerang (Anda mungkin perlu menginstal paket gcc):

git clone https://github.com/Soldie/xerxes-DDos-zanyarjamal-C.git
cd xerxes-DDos-zanyarjamal-C/
gcc xerxes.c -o xerxes 
./xerxes 45.132.17.140 80

Hasil pekerjaannya adalah sebagai berikut:

Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantor

Suricata memotong penjahat, dan halaman Apache terbuka secara default, terlepas dari serangan dadakan kami dan saluran jaringan "kantor" (sebenarnya rumah) yang agak mati. Untuk tugas yang lebih serius, Anda harus menggunakan Kerangka Metasploit. Ini dirancang untuk pengujian penetrasi dan memungkinkan Anda untuk mensimulasikan berbagai serangan. Instruksi instalasi tersedia di situs web proyek. Setelah instalasi, pembaruan diperlukan:

sudo msfupdate

Untuk pengujian, jalankan msfconsole.

Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantor

Sayangnya, versi terbaru kerangka kerja tidak memiliki kemampuan untuk meretas secara otomatis, sehingga eksploit harus disortir secara manual dan dijalankan menggunakan perintah use. Untuk memulainya, ada baiknya menentukan port yang terbuka pada mesin yang diserang, misalnya, menggunakan nmap (dalam kasus kami, ini akan sepenuhnya diganti dengan netstat pada host yang diserang), lalu pilih dan gunakan yang sesuai Modul Metasploit

Ada cara lain untuk menguji ketahanan IDS terhadap serangan, termasuk layanan online. Demi rasa penasaran, Anda bisa mengatur stress testing menggunakan versi trial penekan IP. Untuk memeriksa reaksi terhadap tindakan penyusup internal, ada baiknya memasang alat khusus di salah satu mesin di jaringan lokal. Ada banyak opsi dan dari waktu ke waktu harus diterapkan tidak hanya ke situs percobaan, tetapi juga ke sistem kerja, hanya saja ini adalah cerita yang sama sekali berbeda.

Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantor

Mendengus atau Suricata. Bagian 3: Melindungi Jaringan Kantor

Sumber: www.habr.com

Tambah komentar