Pasif işletim sistemi belirleme -p0f

p0f network üzerinden dinleme yaparak gelip giden paketlerden paketleri gönderen sistemlerin hangi işletim sistemine sahip olduğunu belirlemek için kullanılan bir araçtır. İşletim sistemi yanında hedef sistemin uptime süresi, varsa load balancer firewall gibi ek cihazları da belirleyebilir.Genellikle işletim sistemi belirleme için Nmap, Nessus, Xprobe gibi araçlar kullanılır, bu araçların ortak özelliği hedef sisteme çeşitli özel paketler göndererek dönen cevaplardan işletim sistemini belirlemektir. Bu tip bir belirleme yönteminde hedef sistem önünde bulunan IDS/IPS gibi sistemlere yakalanma oranı yüksektir. P0f ise hedef sisteme herhangi bir paket göndermeden sadece dinleme modunda işletim sistemi saptama yapar.

[root@vps-fw ~]# p0f
p0f – passive os fingerprinting utility, version 2.0.8
(C) M. Zalewski , W. Stearns
p0f: listening (SYN) on ‘rl0′, 262 sigs (14 generic, cksum 0F1F5CA2), rule: ‘all’.
216.9.253.87:33269 – Linux 2.6, seldom 2.4 (older, 4) (NAT!) (up: 1762 hrs)
-> 10.10.10.2:110 (distance 18, link: GPRS, T1, FreeS/WAN)
189.74.181.188:18221 – Windows 2000 SP2+, XP SP1+ (seldom 98)
-> 91.93.119.80:25 (distance 13, link: pppoe (DSL))
200.164.86.74:61665 – Windows 2000 SP4, XP SP1+
-> 91.93.119.80:25 (distance 14, link: ethernet/modem)
122.161.82.83:2453 – Windows 2000 SP4, XP SP1+
-> 91.93.119.80:25 (distance 15, link: pppoe (DSL))
77.121.0.19:3336 – Windows 2000 SP4, XP SP1+
-> 91.93.119.80:25 (distance 10, link: ethernet/modem)
115.161.223.153:3058 – Windows XP/2000 (RFC1323+, w+, tstamp+) [GENERIC]
Signature: [65535:110:1:64:M1460,N,W3,N,N,T0,N,N,S:.:Windows:?]
-> 91.93.119.80:25 (distance 18, link: ethernet/modem)
91.93.119.80:54291 – UNKNOWN [65535:63:1:48:M1460,S,E:P:?:?]
-> 208.184.224.88:25 (link: ethernet/modem)
59.184.152.171:3761 – Windows 2000 SP2+, XP SP1+ (seldom 98)
-> 91.93.119.80:25 (distance 15, link: (Google/AOL))
189.243.35.233:3821 – Windows 2000 SP2+, XP SP1+ (seldom 98)
-> 91.93.119.80:25 (distance 10, link: pppoe (DSL))
65.55.34.208:45597 – Windows 2000 SP4, XP SP1+
-> 91.93.119.80:25 (distance 10, link: ethernet/modem)
91.93.119.80:62738 – UNKNOWN [65535:63:1:48:M1460,S,E:P:?:?]
-> 207.246.196.124:25 (link: ethernet/modem)
91.93.119.80:62928 – UNKNOWN [65535:63:1:60:M1460,N,W3,S,T:.:?:?] (up: 5500 hrs)
-> 155.223.64.165:25 (link: ethernet/modem)
65.55.90.112:20018 – Windows 2000 SP4, XP SP1+
-> 91.93.119.80:25 (distance 11, link: ethernet/modem)

^C+++ Exiting on signal 2 +++
[+] Average packet ratio: 190.91 per minute.

#p0f -V ‘tcp port 80′

istenirse ” arasında bpf sentaksına uygun filtreler yazılarak da kullanılabilir.

İşletim sistemine göre firewall kuralı yazma

Packet Filter güvenlik duvarında işletim sistemine göre kural yazma esnekliği vardır. Bu özellik p0f’dan esinlenerek yazılmıştır. İşletim sistemine göre kural yazarak ağınızda bulunan eski tip işletim sistemlerinin internete çıkışını engelleyebilirsiniz.

Güvenlik duvarıyla birlikte kullanılırken dikkat edilmesi gereken en önemli husus p0f çıktılarının doğruluğudur. Yani Windows 2000 sistemleri yasaklayacağım derken Windows 2003 sistemleri engellemek işimize gelmez. Bu konuda p0f’un güveenilirliği %99 üzerinde olsa da kritik sistemlerde engelleme değil sadece loglama amaçlı kullanılmalıdır.

Aşağıdaki firewalll kuralı işletim sistemi Windows 2000 olan ve SMTP bağlantısı yapmaya çalışan sistemleri bloklamaktadır.

block in on $ext_if proto tcp from any os “Windows 2000″ to $ext_if port 25

Alternatif araçlar: Ettercap, Network Miner