Zeek bağlantı logları (conn.log) ile ağ trafiğinde durumsal farkındalık

Standart bir netflow'dan daha fazlasını barındıran Zeek bağlantı loglarından (conn.log) tam verim alabilmek için yer yer logları dökümantasyon eşliğinde kazımak gerekiyor.

Örneğin aşağıdaki conn.log satırını ele alalım (Komut: zeek -r trafik.pcap)

  "ts": 1591367999.430166,
  "uid": "C5bLoe2Mvxqhawzqqd",
  "id.orig_h": "192.168.4.76",
  "id.orig_p": 46378,
  "id.resp_h": "31.3.245.133",
  "id.resp_p": 80,
  "proto": "tcp",
  "service": "http",
  "duration": 0.25411510467529297,
  "orig_bytes": 77,
  "resp_bytes": 295,
  "conn_state": "SF",
  "missed_bytes": 0,
  "history": "ShADadFf",
  "orig_pkts": 6,
  "orig_ip_bytes": 397,
  "resp_pkts": 4,
  "resp_ip_bytes": 511
}

Burada timestamp, uid, kaynak/hedef ip:port, transfer edilen veri miktarı gibi çok bilinen Zeek alanlarının yanısıra conn_state ve history gibi iki alan da yer alıyor.

conn_state alanı iletişime dair durum bilgisini ifade ediyor. Bu değer, özellikle olay müdahale sırasında başarılı/başarısız erişim denemelerini ayrıştırırken işe yarayan bir alan.

Burada göreceğimiz bir SF değeri sık görebileceğimiz başarılı bir iletişime işaret ederken, diğer değerler kendilerine göre farklı iletişim durumlarını gösterirler.

Alabileceği değerler altta gibidir;

history alanı ise bağlantıya dair durum geçmişini gösterir.

Örneğin üstteki logdaki ShADadFf değeri sırayla alttaki anlamlara gelir. Burada büyük harfler bağlantıyı başlatan (originator veya kaynak) tarafın eylemlerini, küçük ise cevap veren (responder veya hedef) tarafın eylemlerini gösterir.

S - Kaynak SYN paketi gönderdi  
h - Hedef SYN ACK gönderdi  
A - Kaynak ACK gönderdi  
D - Kaynak, veri içeren en az 1 paket gönderdi. (Bu örnekte TCP ile HTTP iletişimi paketi)  
a - Hedef makine ACK dönüşü yaptı  
d - Hedef makinde veri içeren en az 1 cevap paketi gönderdi  
F - Kaynak FIN ACK gönderdi  
f - Hedef FIN ACK gönderdi  

Not: Açıklamalarda bağlantıyı başlatan taraf yerine "kaynak", cevap veren taraf olarak "hedef" kullanılmıştır. Zeek, anlam karmaşasını önlemek adına kaynak ve hedef yerine bağlantıyı başlatan (originator) ve cevap veren (responder) tanımlarını kullanır.

Alabileceği değerler şöyledir;

Kaynak:

https://docs.zeek.org/en/master/logs/conn.html#inspecting-the-conn-log

https://www3.corelight.com/zeek-logs-v3.0

Furkan ÇALIŞKAN

Read more posts by this author.