最近在关心ids(入侵检测系统),大家都知道cisco ids设备是相当贵的,那么可不可以用普通的服务器或PC来替代cisco设备呢,答案是可以的,使用PC就可以架设cisco ids入侵检测系统。 硬件准备:
PC一台,需求如下
主版: 440BX主板最好,当然其他也没问题,至少是支持440BX,VIA686a;AMD芯片应该也可以。
CPU: 基本不限,PII 以上均可,当然越高越好,建议600MHz以上主频;至少支持我的Athlon 1.7。
RAM: 256M – 4G, 推荐512M以上
硬盘: 普通IDE硬盘就可以,当然几种常见SCSI也是没问题的,另外似乎也支持iSCSI
网卡: 唯一最重要的要求就是这个了,至少需要两块网卡,根据你想制造的型号不同
注意其中至少一块必须是百兆(EEPro100各型)或千兆(EEPro1000各型)的Intel网卡;
芯片组可以是Intel 82557/82558/82559/82550等。(可能也支持Broadcom BCM5700)
这块Intel网卡是作为监听卡用的,因此必须插在PCI 1槽上,或者,至少要比第二块卡
在PCI上的位置靠前,这样在系统中它会被认为ETH0,而ETH0是系统默认的监听口,必须
为Intel网卡。
另一块卡理论上可以是Linux 2.4内核所能支持的任何芯片的网卡,但是我们也推荐使用
Intel EEpro100,这样可以省去很多麻烦,避免不必要的错误发生。这块卡在系统中会
被认为是ETH1,用作管理和通讯。 好了,看下我的配置: 代码:
AMD Athlon XP 1700+
1G RAM
160G IDE 或 LSI 160 SCSI (均支持)
默认监听口 ETH0@ PCI1: Intel 82559(EEPro 100 Management+)
默认通讯口 ETH1@ PCI*: Intel 82559(EEPro 100+)
监听口2 ETH2@ PCI*: Intel 82559(EEPro 100+)
无 ETH2@ PCI*: Intel 82559(EEPro 100+)
接下来开始安装CiscoIDS。准备好CiscoIDS的Recovery CD,一切就像安装普通的Redhat Linux
一样简单 –其实还更简单一点。 启动界面会给你一个选择,是使用 控制台(键盘+显示器)还是
串口。当然选控制台,会快得多,在boot:提示符后输入 k <回车>。之后就不用管了,它会完
全自动的完成安装,注意!它可是独占硬盘的,如果你的硬盘上还有其他系统,它会自动格式
化整个盘,可不会提示你。 0. 进入单用户模式状态
安装完成后系统会自动重新启动,你可以看见熟悉的GRUB引导菜单,在这里我们进行第一次
修改和初始化设置。选择在菜单的第一项 [ Cisco IDS (2.4.18-5smpbigphys) ]上,按下”e”键
进行设置,然后在[kernel /boot/vmlinuz-2.4.18-5smpbigphys ro root=/dev/hda1 bigphysarea=32768 ]
这一行上(应该是第二行)再按”e”,进行编辑,在行尾加上”single”,进行单用户模式引导。修改
如下: 代码:
kernel /boot/vmlinuz-2.4.18-5smpbigphys ro root=/dev/hda1 bigphysarea=32768 single然后按”ESC” “b”,开始引导。完成之后,会进入Linux的单用户模式Shell下,开始Crack步骤。 我们需要做以下几步工作:
1. 设置root密码 代码:
======================================================
# passwd root
[输入两次确认密码]
======================================================2. 破解IDS设备型号识别 代码:
======================================================
# vi /etc/init.d/ids_functions 编辑 isCPU() 函数一节如下:
======================================================
isCPU(){
# $1 = CPU speed
# MAX_DIFF=4
# PROC=`awk ‘/^cpu MHz/{ print $4 }’ $CPU_INFO_FILE | tail -1 | cut -f1 -d”.”`
MAX_DIFF=150
PROC=1260
======================================================(在MAX_DIFF=4和PROC=`两行前加上 “#” 注释;然后添加 MAX_DIFF=150 和 PROC=1260
两行) vi快捷指南: 代码:
vi是Linux下默认的编辑器,作上面修改可以按下列键序:
:输入 /isCPU
-会自动跳转到isCPU()一行
:输入 i
-进入编辑模式
:输入 在MAX_DIFF和PROC二行前加上 # 字符
:输入 MAX_DIFF=150
:输入 PROC=1260
:输入 [ESC]键
:输入 :wq 三个字符,回车
-修改和保存文件
3. 重新启动系统
代码:
======================================================
# init 3 ======================================================之后系统会自动检查设备型和配置硬件,在这个过程中系统可能或重新启动数次,直至最后
稳定的进入命令提示符状态: 代码:
sensor login:这时可以使用 [ 用户名: cisco 口令: cisco ]进行登录,第一次登录系统会强制要求 更改系统
默认帐户密码,以及添加一个Service用户。 完成之后,输入 reset 命令,重新启动系统。 4. 再次重启系统时,进行一些其他设置; 引导时使用 0 节的方法,进入单用户模式。然后: 修改ssh配置文件,允许root远程登录,修改/etc/ssh/sshd_config文件,修改如下两行 代码:
Port 22
PermitRootLogin yes #(默认为no)修改grub配置文件/boot/grub/grub.conf ,允许控制台管理;修改如下一行: 代码:
kernel /boot/vmlinuz-2.4.18-5smpbigphys ro root=/dev/hda1 bigphysarea=32768 #console=ttyS0,9600(在console=ttyS0,9600前加 # 号,或删除console=…至行尾) 最后执行下一个步骤,最后一点初始化设置。 5. 进行系统初始化设置 代码:
======================================================
# init 3 ======================================================使用cisco用户登录进入系统,然后运行setup命令。 代码:
======================================================
# setup — System Configuration Dialog — At any point you may enter a question mark ‘?’ for help.
User ctrl-c to abort configuration dialog at any prompt.
Default settings are in square brackets ‘[]‘. Current Configuration: (显示当前配置)
……..
Current time: Wed Mar 16 18:06:41 2005
Setup Configuration last modified: Wed Mar 16 16:42:07 2005 Continue with configuration dialog?[yes]: (输入yes继续配置) Enter host name[sensor]: (输入主机名)
Enter IP address[192.168.0.99]: (输入通讯口IP地址[eth1])
Enter netmask[255.255.255.0]: (子网掩码)
Enter default gateway[192.168.0.254]: (默认网关)
Enter telnet-server status[enabled]: (允许telnet登录)
Enter web-server port[443]: (允许Web管理)
Modify current access list?[no]: yes (编辑访问控制列表,按 [IP_Address 空格 NetMask]格式)
Modify system clock settings?[no]: [0] Go to the command prompt without saving this config.
[1] Return back to the setup without saving this config.
[2] Save this configuration and exit setup. Enter your selection[2]: (选择2保存配置)
======================================================最后,可以reset重启一次,你的系统应该完全伪造成功了。
之后可以用你熟悉的任何管理方式连接上去进行管理,telnet,ssh,串口,或https://访问地址。
如果需要更详细的管理功能,恐怕你得安装CiscoWorks VMS或IDS Manager了。
6. 补充一点设备型号,在这个例子中,我们仿造的系统型号是Cisco IDS4235,其实也可以
修改成其他型号,一个列表如下: 代码:
TYPE CPU RAM NIC XL ACCEL FIBER
MOHAWK 498 x1 - 2 - -
4210 567 x1 512 2 - -
4215 845 x1 512 2 - -
4220 598 x1 ? >=2 - -
4230 598 x2 ? 3 - -
4235 1260 x1 ? 3 - -
4250 1260 x2 ? ? - -
4250SX 1260 x2 ? ? - 1
4250XL 1260 x2 ? ? 1 1
M2 AMD_eobc ? ? ? - -
M2XL AMD_eobc ? ? ? 1 -
R2D2 (router)? ? ? ? ? XL = XL加速卡
FIBER = 千兆光纤卡
NIC = 网卡
RAM 推荐任意型号都>512M
CPU 表中为CPU标称主频,后面为数量在破解过程中,所关系到的主要设备就是CPU,只要把第二节中PROC=1260的数字改成
其他频率,系统就会认为系统TYPE为其他型号,当然CPU数量也是一个次要决定因素,
暂时我们就不考虑Crack 双CPU的型号了 虽然理论上可行,但是不确定是否能稳定工作。 另一个因素就是网卡,建议至少配备2块Intel 82559芯片的网卡;当然,多一点也可以。
在其他型号的网卡和硬件上系统也可以安装和运行,甚至Vmware里也可以,但是是无法
正常抓包工作的,仅仅能做个游戏品罢了。此外,非官方推断,众多Dell服务器上配置的
Broadcom BCM 5700网卡可能也是可以工作的。正如PIX OS实际可能也支持BCM 5600
/5700一样。 补充:在PC(任意x86兼容硬件)上安装时,选择MOHAWK模式就可以工作,应该也可以
抓包;修改方法同第二节,只要修改CPU频率为498就可以,这是系统会认为TYPE为
4210同等型号工作。又研究了下其实更高端的型号实际也是可以在任意网卡上工作的,
例如4250也可以在其它网卡上抓包,不过报警会有一点点问题。不过对Cisco IDS实在是
没什么兴趣,留给有心人研究去吧。更新CPU_TYPE附表。 |