Honeyd 是一款非常優秀的開源虛拟蜜罐軟體,由 Google 公司軟體工程師 Niels Provos
于 2003 年開始研發,2005 年釋出v1.0 正式版,目前已釋出了 v1.5b。
Honeyd能讓一台主機在一個模拟的區域網路環境中配有多個位址(曾測試過的最多可以
達到65536個),外界的主機可以對虛拟的蜜罐主機進行ping、traceroute等網絡操作,虛拟
主機上任何類型的服務都可以依照一個簡單的配置檔案進行模拟,也可以為真實主機的服務
提供代理。
Honeyd可以通過提供威脅檢測與評估機制來提高計算機系統的安全性,也可以通過将
真實系統隐藏在虛拟系統中來阻止外來的攻擊者。因為Honeyd隻能進行網絡級的模拟,不
能提供真實的互動環境,能擷取的有價值的攻擊者的資訊比較有限,是以Honeyd所模拟的
蜜罐系統常常是作為真實應用的網絡中轉移攻擊者目标的設施,或者是與其他高互動的蜜罐
系統一起部署,組成功能強大但花費又相對較少的網絡攻擊資訊收集系統
實驗環境
centos-5.5
實驗軟體
gcc gcc-c++ pcre
libevent-1.3c.tar.gz
libdnet-1.11.tar.gz
libdnsres-0.1a.tar.gz
arpd-0.2.tar.gz
libpcap-1.1.1.tar.gz
honeyd-1.5c.tar.gz
軟體安裝
tar zxvf libevent-1.4.14b-stable.tar.gz
cd libevent-1.4.14b-stable
./configure
make
make install
tar zxvf libdnet-1.11.tar.gz
cd libdnet-1.11
ln -s /usr/local/lib/libnet.1 /lib/libnet.1
tar zxvf libpcap-1.1.1.tar.gz
cd libpcap-1.1.1
tar zxvf libdnsres-0.1a.tar.gz
cd libdnsres-0.1a
tar zxvf arpd-0.2.tar.gz
cd arpd
vim arpd.c
添加 35#define __FUNCTION__ ""
tar zxvf honeyd-1.5c.tar.gz
cd honeyd-1.5c
如果在安裝過程中沒有報錯,證明安裝正确。如果敲擊honeyd
Honeyd V1.5c Copyright (c) 2002-2007 Niels Provos
honeyd[776]: started with
Warning: Impossible SI range in Class fingerprint "IBM OS/400 V4R2M0"
Warning: Impossible SI range in Class fingerprint "Microsoft Windows NT 4.0 SP3"
honeyd[776]: listening promiscuously on eth0: (arp or ip proto 47 or (udp and src port 67 and dst port 68) or (ip )) and not ether src 00:0c:29:2f:29:e3
Honeyd starting as background process 證明honeyd安裝成功
驗證
服務端 centos5.5+honeyd 192.168.0.102
用戶端 windowsxp 192.168.0.103
實作目的:用戶端(windows xp,開啟不斷ping操作,測試服務端蜜罐效果)
arpd 192.168.0.103 綁定攻擊源ip
arpd: error while loading shared libraries: libpcap.so.1: cannot open shared object file:No such file or directory
解決辦法
cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig
arp 192.168.0.103 綁定成功
Address HWtype HWaddress Flags Mask Iface
192.168.0.103 ether 00:0C:29:E1:7C:52 C eth0
mkdir /var/log/honeyd
touch /var/log/honeyd/honeyd.log 存放日志檔案
touch /var/log/honeyd/service.log 存放系統日志檔案
chown -R nobody:nobody /var/log/honeyd/*.log 更改權限
ll /var/log/honeyd/ 檢視權限
total 0
-rw-r--r-- 1 nobody nobody 0 Aug 6 09:37 honeyd.log
-rw-r--r-- 1 nobody nobody 0 Aug 6 09:38 service.log
使用說明
-d 非守護程式的形式,允許冗長的調試資訊。
-P 在一些系統中,pcap 不能通過 select(2)來獲得事件通知是不可能的,在這種情況下,honeyd 需要在輪訓模式下工作,這個标志位是使論詢位有效的。
-l logfile 對日志包和日志檔案的連接配接是被日志檔案指定的。
-s servicelog 将honeyd記錄的服務層日志寫入到指定的服務日志檔案中。
-x xprobe 讀 xprobe 類型的指紋,這個檔案決定了 honeyd 如何響應 ICMP 指紋工具。
-a assoc 讀聯系 nmap 風格指紋和 xprobe 指紋風格的檔案。
-f file 讀取名為 file 的配置檔案。
-i interface 指定偵聽的接口,可以指定多個接口。
--version 列印出版本資訊同時退出。
-include-dir 用作插件開發,指定 honeyd 存貯它的頭檔案的位置
net 指定IP位址或者網絡或者IP位址範圍,如果沒有指定,honeyd将監視它能看見的任何IP位址的流量
[--webserver-address address]
[--webserver-port port]
[--webserver-root path]
[--rrdtool-path path]
[--fix-webserver-permissions]
指定Honeyd軟體内建Web服務的位址、端口和根目錄,以及Web服務依賴的RRDTool的位置,--fix-webserver-permissions修正Web目錄權限設定導緻網頁不可讀取問題
honeyd -d -l /var/log/honeyd/honeyd.log -s /var/log/honeyd/service.log --fix-webserver-permissions 192.168.0.103 192.168.0.103為攻擊者的ip
honeyd[816]: listening promiscuously on eth0: (arp or ip proto 47 or (udp and src port 67 and dst port 68) or (ip and (host 192.168.0.103))) and not ether src 00:0c:29:2f:29:e3
honeyd[816]: Demoting process privileges to uid 99, gid 99
honeyd[816]: Connection to closed port: udp (192.168.0.103:138 - 192.168.0.255:138)
less /var/log/honeyd/honeyd.log
2013-08-06-09:45:33.4609 honeyd log started ------
2013-08-06-09:46:42.9764 udp(17) - 192.168.0.103 138 192.168.0.255 138: 233
2013-08-06-09:47:42.5534 udp(17) - 192.168.0.103 138 192.168.0.255 138: 229
less /var/log/honeyd/service.log
2013-08-06-09:45:33.4611 honeyd log started ------
通過蜜罐系統可以有效的查詢,攻擊者的ip、以及日志記錄,我隻是做實驗是以至示範了ping
本文轉自 mailfile 51CTO部落格,原文連結:http://blog.51cto.com/mailfile/1329286,如需轉載請自行聯系原作者