赛扬1.7G CPU
256M内存
80G硬盘
100兆D-link网卡
A机器托管在某个运营商机房
B机器在某国企的外部网络
C机器是长宽的小区宽带……
还有吗?不知道……
陷阱网络类型:Gen I
操作系统:Debian Linux 3.0r1
虚拟机:User Mode Linux(RedHat 7.2)
虚拟机2:Vmware-gsx-2.5(Windows 2000 英文版)
当然是rc.firewall,使用的脚本从下面地址下载:
http://honeynet.xfocus.net/papers/honeynet/tools/rc.firewall
稍做修改
#rc.firewall默认使用2层的bridging模式,修改为: MODE="nat" #需要配置虚拟系统对外的IP,可以指定多个用空格隔开: PUBLIC_IP="192.168.7.144" #配置虚拟系统真实的IP,可以指定多个用空格隔开,注意和PUBLIC_IP对应: HPOT_IP="192.168.100.144" #配置主机管理接口: MANAGE_IFACE="eth0" #主机真实IP: MANAGE_IP="192.168.7.99" # IP of management Interface MANAGE_NETMASK="255.255.255.0" # Netmask of management Interface #允许访问的端口,可以多个用空格隔开: ALLOWED_TCP_IN="22" #允许访问的来源IP,可以用any: MANAGER="192.168.7.9/24" #数据控制接口: LAN_IFACE="tap0"
清空ipfilter的脚本
#!/bin/sh #----------------------------------------- # stop-firewall.sh #----------------------------------------- # safely stop rc.firewall /sbin/iptables -F /sbin/iptables -P INPUT ACCEPT /sbin/iptables -P FORWARD ACCEPT /sbin/iptables -P OUTPUT ACCEPT /sbin/iptables -X icmpHandler /sbin/iptables -X otherHandler /sbin/iptables -X tcpHandler /sbin/iptables -X udpHandler echo "honeynet rc.firewall safely stoped!" #EOF
穷人只能用Snort……还是用Honeynet Project的Snort启动脚本:
http://honeynet.xfocus.net/papers/honeynet/tools/snort.conf http://honeynet.xfocus.net/papers/honeynet/tools/snort-start.txt
snort.conf有些错误,作如下修改:
var HOME_NET 192.168.7.99/24 output alert_full: /data/snort/snort_full output alert_fast: /data/snort/snort_fast
snort-start.txt启动脚本稍微修改:
PID=/var/run/snort_tap0.pid DIR=/data/snort SNORT=/usr/sbin/snort $SNORT -d -D -c /etc/snort/snort.conf -i vmnet1 -l $DIR/$DATE not host yyy.yyy.yyy.yyy
其中yyy.yyy.yyy.yyy是自己客户端的IP,这样忽略记录自己的IP,避免了自己在虚拟honeypot上的连接特别是文件传输等不被记录,使得日志不会因为自己的操作变得巨大,增加干扰信息。
使用的多数是自由软件:
fwanalog 日志分析用 ethereal 分析数据包 ssh 日志加密传输 ……
一个脚本
#!/bin/sh #----------------------------------------- # BackupData.sh #----------------------------------------- cd /data/snort DIR=`ls -F|grep /$` DM=`date +%Y%m%d` #fwanalog cd /var/log tar czf fwanalog-$DM.tar.gz fwanalog mv fwanalog-$DM.tar.gz /data/snort/$DIR/ /usr/bin/killall snort cd /data/snort tar czf data-$DM.tar.gz $DIR rm -rf /data/snort/$DIR /root/vmware/snort-start.sh #EOF
两个crontab程序
0 8 * * * /usr/sbin/fwanalog 30 8 * * * /root/vmware/BackupData.sh
懒人自有懒办法,看看下面的脚本吧……工作平台是M$ windows。
#!/bin/sh #----------------------------------------- # daily_get.sh #----------------------------------------- # 注意,里面使用的date/tar/gzip/rm都是 # GNU的windows下相应软件。 #----------------------------------------- DM=`date +%Y%m%d` # 由于打包目录使用的是前一天的目录,这个由gnu date实现就比较好了。 DA=`date -d yesterday +%b_%d` pscp -i ssh.PPK honeynet@xxx.xxx.xxx.xxx:/data/snort/data-$DM.tar.gz logs # 日志文件里如果有codered等扫描,norton会把日志删除 net stop "Norton AntiVirus 客户端" # 解压,windows下tar的z参数好像不能找到gzip,所以用这个笨办法。 gzip -d logs/data-$DM.tar.gz tar xf logs/data-$DM.tar -C daily/ # 开mysql net start mysql # 用snort分析日志,并且生成警告日志到log目录以及导入数据库,以便总体统计分析。这个需要配置snort cd \\snort rm -rf log mkdir log bin\\snort -c etc\\snort.conf -r \\working\\honeynet\\daily\\$DA\\*-snort.log # 重新开启norton net start "Norton AntiVirus 客户端" # 用snortsnarf生成每日汇总日志。先清空前一天的东西 cd \\working\\honeynet\\tmp rm -rf snortsnarf mkdir snortsnarf cd \\working\\honeynet\\snortsnarf perl snortsnarf.pl ..\\..\\..\\Snort\\log\\alert.ids -d ..\\tmp\\snortsnarf cd ..\\tmp\\snortsnarf "C:\Program Files\Internet Explorer\iexplore.exe" "D:\working\honeynet\tmp\snortsnarf\index.html" # 看看fwanalog的日志 cd \\working\\honeynet\\daily\\$DA gzip -d fwanalog-$DM.tar.gz tar xf fwanalog-$DM.tar "C:\Program Files\Internet Explorer\iexplore.exe" D:\\working\\honeynet\\daily\\$DA\\fwanalog\\today.html
当然还需要再做一些其它工作才能让活儿更自动化,简单,就不多绕舌了……