Snort veya Suricata. Bölüm 3: Office Ağını Koruma

В önceki haber Suricata'nın stabil sürümünü Ubuntu 18.04 LTS üzerinde nasıl çalıştıracağınızı gösterdik. IDS'yi tek bir düğümde ayarlamak ve ücretsiz kural kümelerini bağlamak oldukça basittir. Bugün, sanal sunucuya kurulu Suricata'yı kullanarak kurumsal ağı en yaygın saldırı türlerinden nasıl koruyacağımızı anlayacağız. Bunu yapmak için Linux'ta iki bilgi işlem çekirdeğine sahip bir VDS'ye ihtiyacımız var. RAM miktarı yüke bağlıdır: bazıları için 2 GB yeterlidir, ancak daha ciddi görevler için 4 hatta 6 gerekebilir.Sanal makinenin avantajı deneme yeteneğidir: minimum yapılandırmayla başlayabilirsiniz ve kaynakları gerektiği gibi artırın.

Snort veya Suricata. Bölüm 3: Office Ağını Korumafotoğraf: Reuters

Ağları bağlama

IDS'yi bir sanal makineye taşımak öncelikle test için gerekli olabilir. Eğer bu tür çözümlerle hiç uğraşmadıysanız fiziksel donanım siparişi vermek ve ağ mimarisini değiştirmek için acele etmemelisiniz. Bilgi işlem kaynağı ihtiyaçlarınızı belirlemek için sistemi güvenli bir şekilde ve hiçbir ekstra ücret ödemeden test etmek daha iyidir. Tüm kurumsal trafiğin tek bir harici düğümden geçirilmesi gerektiğini anlamak önemlidir: yerel bir ağı (veya birkaç ağı) IDS Suricata'nın kurulu olduğu bir VDS'ye bağlamak için şunları kullanabilirsiniz: yumuşak eter — güçlü şifreleme sağlayan, kurulumu kolay, platformlar arası bir VPN sunucusu. Bir ofis İnternet bağlantısının gerçek bir IP'si olmayabilir, bu nedenle onu bir VPS'ye yükseltmek daha iyidir. Ubuntu deposunda hazır paket yok; yazılımın şu adresten indirilmesi gerekecek: proje sitesiveya hizmetteki harici bir depodan launchpad (eğer ona güveniyorsanız):

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

Aşağıdaki komutu kullanarak mevcut paketlerin listesini görüntüleyebilirsiniz:

apt-cache search softether

Snort veya Suricata. Bölüm 3: Office Ağını Koruma

Yapılandırmak için softether-vpnserver'ın (test yapılandırmasındaki sunucu VDS üzerinde çalışıyor) yanı sıra softether-vpncmd - komut satırı yardımcı programlarına ihtiyacımız olacak.

sudo apt-get install softether-vpnserver softether-vpncmd

Sunucuyu yapılandırmak için özel bir komut satırı yardımcı programı kullanın:

sudo vpncmd

Snort veya Suricata. Bölüm 3: Office Ağını Koruma

Kurulum hakkında ayrıntılı olarak konuşmayacağız: prosedür oldukça basittir, çok sayıda yayında iyi anlatılmıştır ve makalenin konusuyla doğrudan ilgili değildir. Kısaca vpncmd'yi başlattıktan sonra sunucu yönetim konsoluna gitmek için 1. maddeyi seçmeniz gerekiyor. Bunu yapmak için hub'ın adını girmek yerine localhost adını girmeniz ve enter tuşuna basmanız gerekir. Konsolda, serverpasswordset komutu ile yönetici şifresini ayarlayın, DEFAULT sanal hub'ı silin (hubdelete komutu) ve Suricata_VPN ismiyle yeni bir tane oluşturun ve ayrıca şifresini de ayarlayın (hubcreate komutu). Daha sonra, groupcreate ve usercreate komutlarını kullanarak bir grup ve kullanıcı oluşturmak için hub Suricata_VPN komutunu kullanarak yeni hub'ın yönetim konsoluna gitmeniz gerekir. Kullanıcı şifresi userpasswordset kullanılarak ayarlanır.

SoftEther iki trafik aktarım modunu destekler: SecureNAT ve Yerel Köprü. Birincisi, kendi NAT ve DHCP'sine sahip sanal bir özel ağ oluşturmaya yönelik tescilli bir teknolojidir. SecureNAT, TUN/TAP'a veya Netfilter veya diğer güvenlik duvarı ayarlarına ihtiyaç duymaz. Yönlendirme, sistem çekirdeğini etkilemez ve tüm işlemler, kullanılan hipervizörden bağımsız olarak herhangi bir VPS/VDS üzerinde sanallaştırılır ve çalıştırılır. Bu, SoftEther sanal hub'ını fiziksel bir ağ bağdaştırıcısına veya TAP aygıtına bağlayan Yerel Köprü moduna kıyasla CPU yükünün artmasına ve hızın düşmesine neden olur.

Bu durumda, yönlendirme Netfilter kullanılarak çekirdek düzeyinde gerçekleştiğinden yapılandırma daha karmaşık hale gelir. VDS'miz Hyper-V üzerine inşa edilmiştir, bu nedenle son adımda yerel bir köprü oluşturuyoruz ve TAP cihazını Bridgecreate Suricate_VPN -device:suricate_vpn -tap:yes komutuyla etkinleştiriyoruz. Hub yönetim konsolundan çıktıktan sonra sistemde henüz IP atanmamış yeni bir ağ arayüzü göreceğiz:

ifconfig

Snort veya Suricata. Bölüm 3: Office Ağını Koruma

Daha sonra, eğer etkin değilse, arayüzler arasında paket yönlendirmeyi (ip ileri) etkinleştirmeniz gerekecektir:

sudo nano /etc/sysctl.conf

Aşağıdaki satırın yorumunu kaldırın:

net.ipv4.ip_forward = 1

Değişiklikleri dosyaya kaydediyoruz, düzenleyiciden çıkıyoruz ve aşağıdaki komutu kullanarak uyguluyoruz:

sudo sysctl -p

Daha sonra, sanal ağ için hayali IP'lere sahip bir alt ağ tanımlamamız (örneğin, 10.0.10.0/24) ve arayüze bir adres atamamız gerekir:

sudo ifconfig tap_suricata_vp 10.0.10.1/24

Daha sonra Netfilter kurallarını ayarlamanız gerekecektir.

1. Gerekirse dinleme bağlantı noktalarında gelen paketlere izin verin (SoftEther'in özel protokolü HTTPS'yi ve bağlantı noktası 443'ü kullanır)

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. NAT'ı 10.0.10.0/24 alt ağından ana sunucu IP'sine kadar yapılandırın

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

3. 10.0.10.0/24 alt ağından paket geçişine izin verin

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

4. Halihazırda kurulmuş bağlantılar için paketlerin geçişine izin verin

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

Okuyucular için ödev olarak başlatma komut dosyalarını kullanarak sistemi yeniden başlatırken sürecin otomasyonunu bırakacağız.

İstemcilere otomatik olarak IP vermek istiyorsanız, yerel köprü için bir tür DHCP hizmeti de yüklemeniz gerekecektir. Bu noktada sunucu kurulumu tamamlanmıştır ve istemcilere geçebilirsiniz. SoftEther, kullanımı yerel ağ ekipmanının yeteneklerine bağlı olan birçok protokolü destekler.

netstat -ap |grep vpnserver

Snort veya Suricata. Bölüm 3: Office Ağını Koruma

Test yönlendiricimiz de Ubuntu'yu çalıştırdığından, özel protokolü kullanmak için softether-vpnclient ve softether-vpncmd paketlerini harici bir depodan yükleyeceğiz. İstemciyi başlatmanız gerekecek:

sudo vpnclient start

Yapılandırmak için vpncmd yardımcı programını kullanın ve vpnclient'in çalıştığı makine olarak localhost'u seçin. Tüm komutlar konsolda yapılır: bir sanal arayüz (NicCreate) ve bir hesap (AccountCreate) oluşturmanız gerekecektir.

Bazı durumlarda, AccountAnonymousSet, AccountPasswordSet, AccountCertSet ve AccountSecureCertSet komutlarını kullanarak kimlik doğrulama yöntemini ayarlamanız gerekir. DHCP kullanmadığımız için sanal bağdaştırıcının adresi manuel olarak belirlenmektedir.

Ayrıca ip forward'ı etkinleştirmemiz (/etc/sysctl.conf dosyasında net.ipv4.ip_forward=1 parametresi) ve statik rotaları yapılandırmamız gerekecek. Gerekirse, yerel ağda kurulu hizmetleri kullanmak için Suricata ile VDS'de bağlantı noktası yönlendirmeyi yapılandırabilirsiniz. Bu noktada ağların birleştirilmesi tamamlanmış sayılabilir.

Önerilen konfigürasyonumuz şuna benzer:

Snort veya Suricata. Bölüm 3: Office Ağını Koruma

Suricata'yı kurma

В önceki haber IDS işleminin iki modundan bahsettik: NFQUEUE kuyruğu aracılığıyla (NFQ modu) ve sıfır kopyalama yoluyla (AF_PACKET modu). İkincisi iki arayüz gerektirir, ancak daha hızlıdır - onu kullanacağız. Bu seçenek varsayılan olarak /etc/default/suricata'da ayarlanır. Ayrıca /etc/suricata/suricata.yaml dosyasındaki vars bölümünü düzenlememiz ve oradaki sanal alt ağı ev olarak kaydetmemiz gerekecek.

Snort veya Suricata. Bölüm 3: Office Ağını Koruma

IDS'yi yeniden başlatmak için şu komutu kullanın:

systemctl restart suricata

Çözüm hazır, artık saldırganlara karşı direnci test etmeniz gerekebilir.

Saldırıları modelleme

Harici bir IDS hizmetinin savaşta kullanımı için birkaç senaryo olabilir:

DDoS saldırılarına karşı koruma (ana amaç)

Analiz paketlerinin sistemin İnternet'e bakan arayüzüne ulaşması gerektiğinden, bu seçeneği kurumsal bir ağ içinde uygulamak zordur. IDS bunları engellese bile sahte trafik veri bağlantısını tıkayabilir. Bunu önlemek için, tüm yerel ağ trafiğini ve tüm harici trafiği geçebilecek, yeterince güçlü bir İnternet bağlantısına sahip bir VPS sipariş etmeniz gerekir. Bunu yapmak genellikle ofis kanalını genişletmekten daha kolay ve daha ucuzdur. Alternatif olarak DDoS korumasına yönelik özel hizmetlerden bahsetmeye değer. Hizmetlerinin maliyeti, sanal bir sunucunun maliyetiyle karşılaştırılabilir ve yoğun emek gerektiren bir yapılandırmaya gerek yoktur, ancak dezavantajları da vardır - müşteri paraları karşılığında yalnızca DDoS koruması alırken, kendi IDS'leri istenildiği gibi yapılandırılabilir.

Diğer dış saldırı türlerine karşı koruma

Suricata, internetten erişilebilen kurumsal ağ hizmetlerinde (posta sunucusu, web sunucusu ve web uygulamaları vb.) çeşitli güvenlik açıklarından yararlanma girişimlerine karşı başarılıdır. Genellikle bu amaçla IDS, uç cihazlardan sonra yerel alanın içine kurulur, ancak onu dışarıya taşımanın da var olma hakkı vardır.

Dahili saldırganlara karşı koruma

Sistem yöneticisinin tüm çabalarına rağmen kurumsal ağdaki bilgisayarlara kötü amaçlı yazılım bulaşabilir. Ayrıca holiganlar zaman zaman yerel bölgede ortaya çıkıyor ve bazı yasa dışı operasyonlar gerçekleştirmeye çalışıyor. Suricata bu tür girişimleri engellemeye yardımcı olabilir, ancak dahili ağı korumak için onu çevre içine kurmak ve trafiği bir bağlantı noktasına yansıtabilen yönetilen bir anahtarla birlikte kullanmak daha iyidir. Bu durumda harici bir IDS de işe yaramaz; en azından LAN'da yaşayan kötü amaçlı yazılımların harici bir sunucuyla bağlantı kurma girişimlerini yakalayabilecektir.

Başlangıç ​​olarak, VPS'ye saldıran başka bir test oluşturacağız ve yerel ağ yönlendiricisine Apache'yi varsayılan yapılandırmayla kuracağız ve ardından 80 numaralı bağlantı noktasını IDS sunucusundan ona ileteceğiz. Daha sonra saldıran bir düğümden gelen DDoS saldırısını simüle edeceğiz. Bunu yapmak için GitHub'dan indirin, saldıran düğümde küçük bir xerxes programı derleyin ve çalıştırın (gcc paketini yüklemeniz gerekebilir):

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

Çalışmasının sonucu şu şekildeydi:

Snort veya Suricata. Bölüm 3: Office Ağını Koruma

Suricata kötü adamın önünü kesiyor ve hazırlıksız saldırımıza ve "ofis" (aslında ev) ağının oldukça ölü kanalına rağmen Apache sayfası varsayılan olarak açılıyor. Daha ciddi görevler için kullanmaya değer Metasploit Çerçeve. Sızma testi için tasarlanmıştır ve çok çeşitli saldırıları simüle etmenize olanak tanır. Kurulum Talimatları mevcut Proje web sitesinde. Kurulumdan sonra bir güncelleme gerekli olacaktır:

sudo msfupdate

Test için msfconsole'u çalıştırın.

Snort veya Suricata. Bölüm 3: Office Ağını Koruma

Ne yazık ki, çerçevenin en son sürümleri otomatik olarak hackleme özelliğine sahip değildir, bu nedenle istismarların manuel olarak çözülmesi ve use komutu kullanılarak başlatılması gerekecektir. Öncelikle, saldırıya uğrayan makinede açık olan bağlantı noktalarını örneğin nmap kullanarak belirlemelisiniz (bizim durumumuzda, saldırıya uğrayan ana makinede bunun yerini tamamen netstat alacaktır) ve ardından uygun olanları seçip kullanmalısınız. Metasploit modülleri

IDS'in saldırılara karşı direncini test etmenin çevrimiçi hizmetler de dahil olmak üzere başka yolları da vardır. Merak uğruna, deneme sürümünü kullanarak stres testi düzenleyebilirsiniz. IP Stresleyici. Dahili saldırganların eylemlerine verilen tepkiyi kontrol etmek için yerel ağdaki makinelerden birine özel araçlar yüklemeye değer. Pek çok seçenek var ve periyodik olarak yalnızca deney sahasına değil, çalışma sistemlerine de uygulanmaları gerekiyor ama bu tamamen farklı bir hikaye

Snort veya Suricata. Bölüm 3: Office Ağını Koruma

Snort veya Suricata. Bölüm 3: Office Ağını Koruma

Kaynak: habr.com

Yorum ekle