p0f是一個純粹的被動指紋識別工具,它在不干涉雙方通信的情況下,通過嗅探的方式來分析流經某一網卡的流量以達到指紋識別的目的
P0f是繼Nmap和Xprobe2之后又一款遠程操作系統被動判別工具。它支持:
1、反連SYN 模式
2、正連SYN+ACK 模式
3、空連RST+ 模式
4、碎片ACK 模式
P0f比較有特色的是它還可以探測:
A、是否運行於防火牆之后
B、是否運行於NAT模式
C、是否運行於負載均衡模式
D、遠程系統已啟動時間
E、遠程系統的DSL和ISP信息等
用法: p0f [ …選項… ] [ ‘過濾規則’ ]
網絡接口選項:
-i iface - 指定監聽的網絡接口
-r file - 讀取由抓包工具抓到的網絡數據包文件
-p - 設置 -i參數 指定的網卡 為混雜模式
-L - 列出所有可用接口
操作模式和輸出設置:
-f file - 指定指紋數據庫 (p0f.fp) 路徑,不指定則使用默認數據庫。(默認:/etc/p0f/p0f.fp)
-o file - 將信息寫入指定的日志文件中。只有同一網卡的log文件才可以附加合並到本次監聽中來。
-s name - 回答 unix socket 的查詢 API
-u user - 以指定用戶身份運行程序,工作目錄會切換到到當前用戶根目錄下;
-d - 以后台進程方式運行p0f ,需要配合-0或者-s選項
性能相關的選項:
-S limit - 設置API並發數,默認為20,上限為100;
-t c,h - 設置連接超時時間 (30s,120m)
-m c,h - 設置最大網絡連接數(connect)和同時追蹤的主機數(host)(默認值: c = 1,000, h = 10,000).
數據包區分操作系統