第4章黑客攻防与入侵检测教育部高校管理与工程教学指导委员会、机械工业出版社全国高校管理与工程类学科系列规划教材目录4.2黑客攻击的目的及步骤24.3常见黑客攻防技术34.4防范攻击的措施和步骤44.1网络黑客概述14.5入侵检测概述54.6Sniffer检测实验64.7本章小结7目录本章要点●黑客基础知识及防范攻击的措施和方法●常见黑客攻防技术及应用●常用入侵检测技术及防御系统概念、功能与应用●Sniffer检测实验教学目标●掌握黑客基础知识及入侵检测概念●熟悉黑客常用的攻击方法及攻击步骤●掌握黑客攻防技术●掌握入侵检测系统功能、工作原理、特点及应用●了解检测黑客入侵实验重点4.1网络黑客概述4.1.1黑客概念及类型1.黑客及其演变“黑客”是英文“Hacker”的译音,源于Hack,本意为“干了一件非常漂亮的事”。原指一群专业技能超群、聪明能干、精力旺盛、对计算机信息系统进行非授权访问的人。后来成为专门利用计算机进行破坏或入侵他人计算机系统的人的代言词。“骇客”是英文“Cacker”的译音,意为“破译者和搞破坏的人”。是指那些在计算机技术上有一定特长,非法闯入远程计算机及其网络系统,获取和破坏重要数据,或为私利而制造麻烦的具有恶意行为特征的人。骇客的出现玷污了黑客,使人们把“黑客”和“骇客”混为一体。2.中国黑客的形成与发展4.1网络黑客概述1994年4月20日,中国国家计算与网络设施工程(TheNationalComputingandNetworkingFacilityofChina,NCFC)通过美国Sprint公司,连入Internet的64K国际专线并开通,实现了与Internet的全功能连接。中国成为直接接入Internet的国家,互联网终于面向中国人民开放了。从那时起,中国黑客开始了原始萌动。时至今日,国内黑客中却是为了谋取暴利而散发木马等行为的“毒客”占主流。中国互联网形成了惊人完善的黑客病毒产业链,制造木马、传播木马、盗窃账户信息、第三方平台销赃、洗钱,分工明确。从反传统反商业、带着理想主义和政治热情的红客占主流到近年非法牟利的毒客横行,这是一个无奈的变化。3.黑客的类型4.1网络黑客概述把黑客大分为“正”、“邪”两类,也就是我们经常听说的“黑客”和“红客”。把黑客分红客、破坏者和间谍三种类型,红客是指“国家利益至高无上”的、正义的“网络大侠”;破坏者也称“骇客”;间谍是指“利益至上”的计算机情报“盗猎者”。4.1网络黑客概述4.1.2黑客概念及类型1.黑客攻击的主要原因—漏洞漏洞又称缺陷。漏洞是在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,从而可使攻击者能够在未授权的情况下访问或破坏系统。造成漏洞的原因分析如下:1)计算机网络协议本身的缺陷。2)系统开发的缺陷。3)系统配置不当。4)系统安全管理中的问题。2.黑客入侵通道—端口4.1网络黑客概述计算机通过端口实现与外部通信的连接,黑客攻击是将系统和网络设置中的各种端口作为入侵通道。这里所指的端口是逻辑意义上的端口,是指网络中面向连接服务和无连接服务的通信协议端口(Protocolport),是一种抽象的软件结构,包括一些数据结构和I/O(输入/输出)缓冲区。端口号:端口通过端口号标记(只有整数),范围:0~65535(216-1)目的端口号:用来通知传输层协议将数据送给哪个软件来处理。源端口号:一般是由操作系统自己动态生成的一个从1024~65535的号码。3.端口分类4.1网络黑客概述按端口号分布可分为三段:1)公认端口(0~1023),又称常用端口,为已经公认定义或为将要公认定义的软件保留的。这些端口紧密绑定一些服务且明确表示了某种服务协议。如80端口表示HTTP协议。2)注册端口(1024~49151),又称保留端口,这些端口松散绑定一些服务。3)动态/私有端口(49152~65535)。理论上不应为服务器分配这些端口。按协议类型将端口划分为TCP和UDP端口:1)TCP端口是指传输控制协议端口,需要在客户端和服务器之间建立连接,提供可靠的数据传输。如Telnet服务的23端口。2)UDP端口是指用户数据包协议端口,不需要在客户端和服务器之间建立连接。常见的端口有DNS服务的53端口。课堂讨论:1.什么是安全漏洞?为什么网络存在着的安全漏洞?2.计算机网络安全面临的黑客攻击方法有哪些?举例说明。3.网络黑客通道--端口有哪些?特点是什么?4.1网络黑客概述4.2.1黑客攻击的目的4.2黑客攻击的目的及步骤黑客行为:盗窃资料;攻击网站;进行恶作剧;告知漏洞;获取目标主机系统的非法访问权等。黑客攻击其目的:其一,为了得到物质利益;物质利益是指获取金钱和财物;其二,为了满足精神需求。精神需求是指满足个人心理欲望4.2.2黑客攻击的步骤黑客攻击步骤变幻莫测,但其整个攻击过程有一定规律,一般可分为“攻击五部曲”。4.2黑客攻击的目的及步骤隐藏IP踩点扫描黑客利用程序的漏洞进入系统后安装后门程序,以便日后可以不被察觉地再次进入系统。就是隐藏黑客的位置,以免被发现。主要是通过各种途径对所要攻击的目标进行多方了解,确保信息准确,确定攻击时间和地点。获得特权种植后门隐身退出即获得管理权限。黑客一旦确认自己是安全的,就开始侵袭网络,为了避免被发现,黑客在入侵完毕后会及时清除登录日志以及其他相关日志,隐身退出。课堂讨论:1.黑客攻击的目的与步骤?2.黑客找到攻击目标后,会继续那几步的攻击操作?3.黑客的行为有哪些?4.2黑客攻击的目的及步骤4.3.1端口扫描攻防端口扫描是管理员发现系统的安全漏洞,加强系统的安全管理,提高系统安全性能的有效方法。端口扫描成为黑客发现获得主机信息的一种最佳手段。1.端口扫描及扫描器(1)端口扫描。是使用端口扫描工具(程序)检查目标主机在哪些端口可以建立TCP连接,如果可以建立连接,则说明主机在那个端口被监听。(2)扫描器。扫描器也称扫描工具或扫描软件,是一种自动检测远程或本地主机安全性弱点的程序。4.3常用的黑客攻防技术4.3.1端口扫描攻防2.端口扫描方式端口扫描的方式有手工命令行方式和扫描器扫描方式。手工扫描,需要熟悉各种命令,对命令执行后的输出进行分析。如,Ping命令、Tracert命令、rusers和finger命令(后两个是Unix命令)。扫描器扫描,许多扫描软件都有分析数据的功能。如,SuperScan、AngryIPScanner、、X-Scan、X-Scan、SAINT(SecurityAdministrator'sIntegratedNetworkTool,安全管理员集成网络工具)、Nmap、TCPconnect、TCPSYN等4.3常用的黑客攻防技术4.3.1端口扫描攻防3.端口扫描攻击端口扫描攻击采用探测技术,攻击者可将它用于寻找他们能够成功攻击的服务。连接在网络中的所有计算机都会运行许多使用TCP或UDP端口的服务,而所提供的已定义端口达6000个以上。通常,端口扫描不会造成直接的损失。然而,端口扫描可让攻击者找到可用于发动各种攻击的端口。4.3常用的黑客攻防技术端口扫描概念利用扫描工具发现网络和网络中的主机,进而得到其相关信息和安全漏洞的过程作用发现网络和网络中的主机发现主机所开放的服务通过测试相关服务,发现系统漏洞端口扫描原理扫描器通过向远程主机的端口发送特定的数据包,根据给予的回答,来确定主机的一些相关信息。TCP数据包格式源端口目的端口序列号确认号数据偏移保留URGACKPSHRSTSYNFIN窗口校验和紧急指针选项填充项数据端口扫描扫描方式TCPConnect()扫描利用操作系统提供的connect()系统调用,用来与每一个感兴趣的目标计算机的端口进行连接。如果端口处于侦听状态,就建立连接,端口可以访问。否则返回-1,表示端口不可访问。不需要特殊的权限就可以调用,但是容易被防火墙过滤掉端口扫描扫描方式TCPSYN扫描“半开放”扫描,利用TCP的三次握手过程。扫描程序发送的是一个SYN数据包,如果目的主机返回SYN|ACK表示端口处于侦听状态;如果返回RST,表示端口没有处于侦听态。当收到一个SYN|ACK后,扫描程序发送一个RST信号,来关闭这个连接过程。隐蔽性较强,一般不会在目标计算机上留下记录。但必须要有root权限才能建立自己的SYN数据包,并且可以被防火墙和特定的监测程序检测到。端口扫描扫描方式TCPFIN扫描扫描程序向目的主机的端口发送TCPFIN扫描关闭的端口会丢弃FIN包,回复RST包;打开的端口,则直接丢弃FIN包,有的系统还会统会回复RST。隐蔽性很强,但存在一定的不确定性,通常只能在Unix操作系统上有效。端口扫描扫描方式TCPXmasTree扫描:扫描程序往目标端口发送一个设置了FIN、URG和PUSH标志位的包,若其关闭,应该返回一个RST包,如端口打开.则丢弃包.通常在Unix系统下起作用端口扫描扫描方式TCPNULL扫描:根据RFC793文档,程序发送一个没有任何标志位的TCP包,关着的端口将返回一个RST数据包。端口扫描扫描方式UDPICMP端口不可达扫描:向一个打开的UDP端口发送ICMP包,不会给返回任何响应包;如果端口关闭,某些系统将返回ICMP_PORT_UNREACH信息。由于UDP是不可靠的非面向连接协议,这种扫描方法容易出错,速度也比较慢。端口扫描扫描方式Ping扫描真实扫描:发送ICMP请求包给目标IP地址,有响应则表示主机开机。TCPPing:发送特殊的TCP包给通常都打开且没有过滤的端口(例如80端口),有响应则表示主机开机。端口扫描常用扫描工具nmap、netcatXcan,superscan4.3.1端口扫描攻防4.端口扫描的防范对策端口扫描的防范又称系统“加固”。网络的关键之处使用防火墙对来源不明的有害数据进行过滤可以有效减轻端口扫描攻击防范端口扫描的主要方法有两种:(1)关闭闲置及有潜在危险端口方式一:定向关闭指定服务的端口。计算机的一些网络服务会有系统分配默认的端口,将一些闲置的服务关闭掉,其对应的端口也会被关闭了。4.3常用的黑客攻防技术操作方法与步骤:1)打开“控制面板”窗口。鼠标单击“状态栏”左边“开始”按钮,弹出开始菜单。在开始菜单上选择“设置”→“控制面板”。2)打开“服务”窗口。在“控制面板”窗口上,双击“管理工具”。在“管理工具”窗口上,双击“服务”。在“服务”窗口上的右侧,选择DNS。3)关闭DNS服务在“DNSClient的属性”窗口。启动类型项:选择“自动”。服务状态项:选择停止。选择确定。在服务选项中选择关闭掉计算机的一些没有使用的服务,如FTP服务、DNS服务、IISAdmin服务等,它们对应的端口也被停用了。4.3常用的黑客攻防技术案例4-6关闭DNS端口服务4.3.1端口扫描攻防方式二:只开放允许端口。可以利用系统的“TCP/IP筛选”功能实现,设置的时候,“只允许”系统的一些基本网络通讯需要的端口即可。(2)屏蔽出现扫描症状的端口检查各端口,有端口扫描症状时,立即屏蔽该端口。4.3常用的黑客攻防技术4.3.2网络监听攻防网络监听的检测在Linux下对嗅探攻击检测方法:一般只要检查网卡是否处于混杂模式就可以了;而在Windows平台中,可以执行“C:\Windows\Drwatson.exe”程序检查一下是否有嗅探程序在运行即可。另外,还有几种方法也可以帮助检测或预防网络监听。如对于怀疑运行监听程序的机器,可以使用正确的IP地址和错误的物理地址ping,运行监听程序的机器会有响应;从逻辑或物理上对网络分段;运用VLAN(虚拟局域网)技术,将以太网通信变为点到点通信,可以防止大部分基于网络监听的入侵等。使用软件监听。如:Sniffer软件等4.3常用的黑客攻防技术网络监听网络嗅探是一种特定的程序,用来收集网络中的数据包从中获取有用的信息,如用户名,口令等原理:以太网的广播特性以太网卡的混杂模式