Showing posts with label IPS. Show all posts
Showing posts with label IPS. Show all posts

Thursday, May 25, 2017

Next-Generation IPS Requirements

From the White Paper of "McAfee Network Security Platform: The Next-Generation Network IPS"

Requirements for next-generation network intrusion prevention

Gartner Research recently introduced several new criteria for “next-generation network intrusion prevention” that, if adopted, will help organizations deal with the new threat landscape. The Gartner definition for next-generation network intrusion prevention includes the following:

  • Standard first-generation IPS capabilities to support vulnerability-facing signatures and threat-facing signatures: An IPS engine that can perform detection and blocking at wire speeds and rapidly develop and deploy signatures, is a primary characteristic. Integration can include features such as providing suggested blocking at the firewall, based on IPS inspection.
  • Application awareness and full-stack visibility to identify applications and enforce network security policy: This needs to occur at the application layer, independent of the port and protocol, rather than only ports, protocols, and services. Examples include the ability to block families of attacks, based on identifying hostile applications.
  • Context awareness to bring information from sources outside the IPS to make improved blocking decisions or to modify the blocking rule base: Examples include using directory integration to tie decisions to user identities and using vulnerability, patching state and geolocation information (such as where the source is from or where it should be from) to make more effective blocking decisions. It could also include integrating reputation feeds, such as blacklists and whitelists of addresses.
  • Content awareness of various file types and communications: It should be able to inspect and classify inbound executables and other similar file types, such as PDF and Microsoft Office files (which have already passed through antivirus screening), as well as outbound communications. In addition, it should make pass, quarantine, or drop decisions in near real time.
  • Agile engine: It should support upgrade paths for the integration of new information feeds and new techniques to address future threats, including hitless upgrades, global threat intelligence integration, scalable hardware, signature updates, Snort-capable), packet capture, and complementary solutions (Source: Gartner, Defining Next-Generation Network Intrusion Prevention, 2011)

Thursday, July 21, 2016

IP Blacklists

A quite honest approach about IP blacklisting:

"The notion of blacklisting communication sources has been a well-established defensive measure since the origins of the Internet community. In particular, the practice of compiling and sharing lists of the worst offenders of unwanted traffic is a blacklisting strategy that has remained virtually unquestioned over many years."

Source: J. Zhang, P. Porras, and J. Ullrich, “Highly predictive blacklisting,” in Proc. of USENIX Security ’08 (Best Paper award), San Jose, CA, USA, Jul. 2008, pp. 107–122.

Friday, January 29, 2016

Is IDS/IPS Necessary?

Another cool passage about IDS/IPSs from the same source:
 
"The security manager may have truly found the best IDS/IPS on the market, but unless the employees know how to configure and harness this system, it is just as ineffective as not having any system in place at all!"

(Source: https://www.sans.org/reading-room/whitepapers/detection/intrusion-detection-prevention-systems-cheat-sheet-choosing-solution-common-misconfi-36677)

Which One is Better? IDS or IPS?

A quite cool passage from one of the SANS' studies:

"Some may argue that an IPS is better than an IDS as it maintains the ability to block completely potentially malicious traffic, which in turn might completely stop attackers in their tracks; however, this is simply not the case. The choice between an IDS or IPS system depends solely on meeting the goals of your organization, without causing unnecessary network connectivity issues for legitimate users on the network."

(Source: https://www.sans.org/reading-room/whitepapers/detection/intrusion-detection-prevention-systems-cheat-sheet-choosing-solution-common-misconfi-36677)

Wednesday, January 13, 2016

Suricata'da IP İtibar (IP Reputation) Ayarlarının Yapılması

Suricata saldırı tespit/engelleme sistemi IP kara listesinde (IP blacklist) olan IP adreslerinden ya da bu IP adreslerine doğru olan trafiği de yakalayabilmektedir. Saldırı engelleme modunda kurulu ise bu trafiği engelleyebilmekte, saldırı tespit modunda ise bu trafikle ilgili alarm üretebilmektedir.
Bu yazıda, bunun için Suricata'da yapılması gereken ayarlardan bahsetmeye çalışacağım.
Suricata'nın yapılandırma (konfigürasyon) dosyası olan suricata.yaml dosyası içerisinde "IP reputation" bölümü bulunmaktadır. Bu bölümün altını değiştirerek Suricata'da IP itibar ayarları yapılmaktadır. Suricata'nın örnek bir "IP Reputation" bölümü aşağıdaki gibidir:
#IP Reputation
 reputation-categories-file: /etc/suricata/iprep/categories.txt
 default-reputation-path: /etc/suricata/iprep
 reputation-files:
  - reputation.list
IP itibar ayarı yaparken ilk önce kara listeye dahil edilecek IP adreslerinin bir sınıflandırmaya tabi tutulması gerekiyor. Bu sınıflandırmanın yer aldığı dosyanın varsayılan (default) ismi /etc/suricata/prep/ dizininde bulunan categories.txt dosyasıdır. (Dosya isimleri ya da dosya yol'u tabii ki farklı olabilir. Burada varsayılan isimler kullanılmıştır.)
categories.txt isimli dosyanın formatı aşağıdaki gibi bir CSV dosyasıdır:
root@suricata:/etc/suricata/iprep$cat categories.txt
1,HACK,Hack Siteleri
2,MP3,MP3 Siteleri
3,SPYWARE,Spyware Listesi
categories.txt dosyasının içeriğindeki satırlar "üç" bölümden oluşmaktadır:
, ,
Sınıfladırmaya öncelikle bir numara vermek durumunudayız: . Bu numara 1 ile 60 arasında olmak zorundadır. Yani IP itibar listemizde en fazla 60 kategori olabilmektedir.
Sınıflandırmaya kısa bir de isim veriyoruz: . Bu isimlerin bire bir aynısı, iprep.rules dosyasına saldırı kuralı (attacking rule) yazarken kullanılmaktadır.
Sınıflandırma için bir de açıklama yazıyoruz:
Sınıflandırma dosyasının yol'unu da suricata.yaml yapılandırma dosyası içerisinde reputation-categories-file: /etc/suricata/iprep/categories.txt şeklinde belirtiyoruz.
IP itibar ayarlarının yapıldığı dizini de yine suricata.yaml yapılandırma dosyası içerisinde belirriyoruz: default-reputation-path: /etc/suricata/iprep
Sınıflandırma dosyasının içeriğini doldurduktan sonra hangi IP adreslerinin engelleneceğini ya da hangi IP adreslerine karşı alarm üretileceğini belirlememiz gerekiyor. Bu listeyi de default-reputation-path: /etc/suricata/iprep dizinine reputation.list dosyası adıyla koyuyoruz. Bu dizinin altında birden fazla liste olabilir. badhosts.listzararli_ip.listmalware.list gibi.
reputation.list ya da benzeri dosyaların içeriği aşağıdaki gibidir:
root@suricata:/etc/suricata/iprep$cat reputation.list
63.71.76.111,1,100
66.28.56.113,1,100
210.60.141.1,1,100
24.215.5.116,1,100
83.149.65.117,1,100
85.17.73.137,2,50
216.74.109.140,2,50
64.239.80.146,2,50
198.65.238.151,2,50
195.144.11.157,3,125
abidancegubidance.com,3,125
abeedeekgubeedeek.com,3,125

reputation.list dosyası da categories.txt dosyası gibi yine bir CSV dosyasıdır ve üç alandan oluşmuştur:
, ,
Kara listemizde olan IP numarasını (216.74.109.140) ya da alan ismini (abidancegubidance.com) ilk bölüme yazıyoruz.
Daha sonra bu IP numarasının ya da alan adının sınıflandırma numarasını belirtiyoruz. Bu numara 1 ile 127 arasında olmak durumundadır.
Son alana da bu IP numarasının ya da alan adının skor değerini yazıyoruz.
Kara listedeki IP adreslerine (IP blacklist) ya da alan isimlerine birçok internet sitesinden erişilebilmekte ve bu kara listede yer alan IP adresleri/alan isimleri indirilebilmektedir. Bunlardan paralı olanlar olduğu gibi ücretsiz olanlar da mevcuttur. Bu kara listenin bir örneğine https://sslbl.abuse.ch/blacklist/ adresinden erişilebilir.
Buraya kadar categories.txt ve reputation.list dosyalarının içeriklerini belirledik. Bu dosyalar, bu halleriyle bir şey ifade etmezler. Bu dosyalar için kural(lar) yazmamız gerekmektedir. IP itibar (IP Reputation) kurallarını herhangi bir Suricata kuralı içerisine yazarsak da çalışacaktır. Fakat IP itibar kurallarını /etc/suricata/rules/iprep.rules altına yazmayı tercih ettik. Aşağıda örnek bir iprep.rules lural dosyası bulunmaktadır. (Aşağıdaki imzalar deneme amaçlı oluşturuldukları için kurallarda tutarsızlıklar olabilir.)
alert tcp any any -> any any (msg:"BU NASIL BIR TRAFIK YA? COK AYIP BU!"; iprep:any,SPYWARE,=,125;)
alert tcp any any -> any any (msg:"AHAN DA DUTDUM SENI!";iprep:dst,SPYWARE,=,125;)
alert tcp any any -> any any (msg:"HACKINGAM PALACE"; iprep:any,HACK,=,100; sid:10005; rev:1;)
alert tcp any any -> any any (msg:"HACKLEME BENI HACKLERIM SENI"; iprep:src,HACK,=,100; sid:10006; rev:1;)
alert tcp any any -> any any (msg:"NE SALDIRIYDI BE!"; iprep:dst,MP3,=,50; sid:10007; rev:1;)
alert tcp any any -> any any (msg:"YETTI GARI"; iprep:both,MP3,<,100; sid:10008; rev:1;)
Şimdi bu kural seti içerisindeki bazı satırları inceleyelim:
alert tcp any any -> any any (msg:"HACKINGAM PALACE"; iprep:any,HACK,=,100; sid:10005; rev:1;)
IP itibarı (IP Reputation) için Suricata saldırı imzasının (kuralının) içerisine iprep parametresini eklememiz gerekiyor. iprep parametresi dört alandan oluşmaktadır:
<any/src/dst/both>: Trafiğin kaynağı belirtilmektedir. Buradaki örnekte kaynak ya da hedef IP kısmında kara listedeki bir IP adresi görülürse alarm üretilmektedir.
HACK: Burada yazan ifade categories.txt dosyası içerisindeki ikinci alanın aynısı olmak zorundadır. (1,HACK,Hack Siteleri) Buradaki kural için bir sınıflandırma belirtmiş oluyoruz bu şekilde.
=,<,>: Burada reputation.list dosyasının üçüncü alanındaki değerle bir kıyaslama yapılmaktadır. (83.149.65.117,1,100) Buradaki örnekte sınıflandırma numarası "1" olan IP adresleri için geçerli bir kural vardır. Sınıflandırma numarası "1" olan IP adresinin "score" değeri de "100" olarak verilmiştir. Bu kurala denk gelen bir trafik olduğu zaman da kurada yer alan tırnak içerisindeki uyarıyı vermektedir. (HACKINGAM PALACE)
categories.txt
1,HACK,Hack Siteleri
reputation.list
83.149.65.117,1,100
Suricata kuralı
alert tcp any any -> any any (msg:"HACKINGAM PALACE"; iprep:any,HACK,=,127; sid:10005; rev:1;)
Konuyu özetleyen bir resmi de aşağıya ekliyorum: