网络攻击与入侵检测技术2Word文档格式.docx
- 文档编号:18879252
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:36
- 大小:99.75KB
网络攻击与入侵检测技术2Word文档格式.docx
《网络攻击与入侵检测技术2Word文档格式.docx》由会员分享,可在线阅读,更多相关《网络攻击与入侵检测技术2Word文档格式.docx(36页珍藏版)》请在冰豆网上搜索。
入侵完毕退出目标计算机后,将自己入侵的痕迹清除,从而防止被对方管理员发现。
隐藏IP
这一步必须做,因为如果自己的入侵的痕迹被发现了,当警察找上门的时候就一切都晚了。
通常有两种方法实现自己IP的隐藏:
第一种方法是首先入侵互联网上的一台电脑(俗称“肉鸡”),利用这台电脑进行攻击,这样即使被发现了,也是“肉鸡”的IP地址。
第二种方式是做多极跳板“Sock代理”,这样在入侵的电脑上留下的是代理计算机的IP地址。
比如攻击A国的站点,一般选择离A国很远的B国计算机作为“肉鸡”或者“代理”,这样跨国度的攻击,一般很难被侦破。
攻击和安全的关系
黑客攻击和网络安全的是紧密结合在一起的,研究网络安全不研究黑客攻击技术简直是纸上谈兵,研究攻击技术不研究网络安全就是闭门造车。
某种意义上说没有攻击就没有安全,系统管理员可以利用常见的攻击手段对系统进行检测,并对相关的漏洞采取措施。
网络攻击有善意也有恶意的,善意的攻击可以帮助系统管理员检查系统漏洞,恶意的攻击可以包括:
为了私人恩怨而攻击、商业或个人目的获得秘密资料、民族仇恨、利用对方的系统资源满足自己的需求、寻求刺激、给别人帮忙以及一些无目的攻击。
扫描攻击(scan)
网络踩点
踩点就是通过各种途径对所要攻击的目标进行多方面的了解(包括任何可得到的蛛丝马迹,但要确保信息的准确)。
常见的踩点方法包括:
在域名及其注册机构的查询(whois)公司性质的了解对主页进行分析邮件地址的搜集目标IP地址范围查询。
踩点的目的就是探察对方的各方面情况,确定攻击的时机。
模清除对方最薄弱的环节和守卫最松散的时刻,为下一步的入侵提供良好的策略。
网络扫描
第二步执行扫描
一般分成两种策略:
一种是主动式策略另一种是被动式策略。
扫描
利用各种工具对攻击目标的IP地址或地址段的主机查找漏洞。
扫描采取模拟攻击的形式对目标可能存在的已知安全漏洞逐项进行检查,目标可以是工作站、服务器、交换机、路由器和数据库应用等。
根据扫描结果向扫描者或管理员提供周密可靠的分析报告
扫描器(scanner)
扫描器是一种自动检测远程或本地主机安全性弱点的软件。
主要有端口扫描器和漏洞扫描器两种。
扫描器通常集成了多种功能。
端口扫描器的作用是进行端口探测,检查远程主机上开启的端口。
漏洞扫描器则是把各种安全漏洞集成在一起,自动利用这些安全漏洞对远程主机尝试攻击,从而确定目标主机是否存在这些安全漏洞。
因此,扫描器是一把双刃剑,系统管理员使用它来查找系统的潜在漏洞,而黑客利用它进行攻击。
扫描器历史
早期
80年代,网络没有普及,上网的好奇心驱使许多年轻人通过Modem拨号进入到UNIX系统中。
这时候的手段需要大量的手工操作于是,出现了wardialer——自动扫描,并记录下扫描的结果
SATAN:
SecurityAdministrator'
sToolforAnalyzingNetworks
1995年4月发布,引起了新闻界的轰动界面上的突破,从命令行走向图形界面(使用HTML界面),不依赖于X两位作者的影响(DanFarmer写过网络安全检查工具COPS,另一位WeitseVenema是TCP_Wrapper的作者)
Nmap
作者为Fyodor,技术上,是最先进的扫描技术大集成结合了功能强大的通过栈指纹来识别操作系统的众多技术
扫描攻击的目的
目标网络的网络拓扑结构目标主机运行的操作系统是否有的安全保护措施运行那些服务服务器软件的版本存在哪些漏洞
扫描类型
网络(地址)扫描
发现活动主机,获取网络拓扑结构
端口扫描
确定运行在目标系统上的TCP和UDP服务确定目标系统的操作系统类型确定特定应用程序或特定服务的版本
漏洞扫描
确定特定服务存在的安全漏洞
网络扫描-了解网络情况
目的
黑客首先希望了解你的网络中的详细情况,比如网络拓扑结构,活动主机IP地址,主要服务器,路由器和防火墙。
黑客使用扫描工具一般先扫描你的网关、DMZ系统,各种服务器等Internet周边环境,在控制了你的网络周边环境后,再继续攻击你的内部网络。
种类
发现活跃主机跟踪路由
发现活跃主机
Ping:
发送一个ICMP回显请求(echorequest)数据包,如果目标主机响应一个ICMP回显应答响应(echoreplay)数据包,则表示这是一个活跃主机。
TCP扫描:
许多网络防火墙都阻塞ICMP消息,因此,发送一个TCPack包到80端口,如果获得了RST返回,机器是活跃的。
TTL&
Hop基本概念
跳(Hop):
IP数据包经过一个路由器就叫做一个:
跳。
TTL在路由器中如何工作?
在路由器中如何工作当路由器收到一个IP数据包时,它首先将这个IP数据包的TTL字段减1,如果TTL为0则路由器抛弃这个数据包,并向源IP地址发送一个连接超时的ICMP数据包。
如果不为0则根据路由表将这个数据包发送到下一个路由器或目的网络。
跟踪路由(tracerouting)
黑客可以利用TTL值来确定网络中数据包的路由路径,通过发送一系列TTL值递增的数据包来发现到达目的主机的路由路径。
Unix下的跟踪路由工具是Traceroute,发送有递增的TTL值的UDP数据包,同时寻找返回的ICMP超时消息。
windows下的跟踪路由工具是tracert。
黑客使用跟踪路由(tracerouting)技术来确定目标网络的路由器和网关的拓扑结构。
如何防御网络扫描
利用防火墙和路由器的数据包过滤功能来阻塞这些消息,还应该阻塞所有流入的ICMP消息,另外,也可以过滤从你的网络流出的ICMP超时信息,从而完全拒绝traceroute的访问。
常见的端口扫描技术
TCPconnect扫描SYN扫描FIN扫描UDP扫描RPC扫描FTP反弹扫描ident扫描慢速扫描反向映射扫描IP分片扫描源端口扫描
TCPconnect扫描
是最基本的扫描方式,实际上是利用系统调用函数connect与目标主机建立TCP连接,完成三次握手。
这种扫描方式会被防火墙记录到访问日志中。
因此,会留下扫描痕迹。
但是,这种扫描不需要有特殊权限。
半开放(halfopen/SYN)扫描
扫描器向目标主机的一个端口发送请求连接的SYN包,扫描器在收到SYN/ACK后,不是发送的ACK应答而是发送RST包请求断开连接。
这样,三次握手就没有完成,无法建立正常的TCP连接,因此,这次扫描就不会被记录到系统日志中。
这种扫描技术一般不会在目标主机上留下扫描痕迹。
但是,这种扫描需要有root权限。
FIN扫描
SYN扫描现在已经不是一种秘密了,许多防火墙和路由器都有相应的措施,它们会对一些指定的端口进行监视,对这些端口的连接请求全部进行记录。
但是许多过滤设备允许FIN数据包通过。
因此FIN是中断连接的数据报文,所以许多日志系统不记录这样的数据报文。
FIN扫描的原理就是向目标主机的某个端口发送一个FIN数据包。
如果收到RST应答表示这个端口没有开放,反之则端口开放。
但是有些操作系统不管端口是否开放,都应答RST。
IP碎片扫描
以细小的IP碎片包实现SYN,FIN,XMAS(FIN,URG,PUSH分组)或NULL(关掉所有标志)扫描攻击。
即将TCP包头分别放在几个不同的数据包中,从而躲过包过滤防火墙的检测。
UDP扫描
这种扫描攻击用来确定目标主机上哪个UDP端口开放。
通常是通过发送零字节的UDP数据包到目标机器的各个UDP端口,如果我们收到
户端既请求建立控制连接又建立数据连接。
FTP反弹扫描(FTPbounce)
FTP反弹扫描是利用FTP主动模式,即扫描器与一台FTP服务器建立一个主动模式的FTP连接,然后,发送一个包含它试图扫描的主机的IP地址和端口号的port命令,从而实现FTP反弹扫描。
使用FTP反弹扫描的好处是避免直接暴露自己的IP地址。
OSfingerprinting操作系统的指纹识别
根据不同类型的操作系统的TCP/IP协议栈的实现特征(stackfingerprinting)来判别主机的操作系统类型。
不同的操作系统厂商的TCP/IP协议栈实现存在细微差异,对于特定的RFC文档作出不同的解释。
向目标主机发送特殊的数据包,然后根据目标主机的返回信息在扫描工具的操作系统指纹特征数据库中查找匹配的操作系统名。
主动与被动的协议栈指纹识别
主动协议栈指纹识别:
扫描器主动地向目标系统发送特殊格式的数据包,这种方式可能会被网络IDS系统检测出来。
被动协议栈指纹识别:
通过被动地监听网络流量,来确定目标主机地操作系统。
一般根据数据包的一些被动特征:
TTL,窗口大小,DF等。
扫描应用软件版本
在第一次连接时,许多软件都公布了版本号(如sendmail,FTP,IMAPD,Apache等)。
黑客根据这些连接信息(banner)就可以知道目标的应用软件的版本信息。
根据版本号很容易在网上查到它的已知漏洞,根据这些漏洞对目标主机进行攻击。
常见的扫描工具
NAMP,winmapwww.insecure.orgFoundstone公司的Robinkeir开发的superscan流光fluxay4.7
如何防御端口扫描
关闭所有不必要的端口自己定期的扫描网络主机、开放的端口使用基于状态数据包过滤器或是代理等智能防火墙来阻塞黑客的扫描攻击
漏洞扫描工具
Nessus:
最好的开放源代码风险评估工具,可以运行在Linux、BSD、Solaris。
能够完成超过1200项的远程安全检查,具有多种报告输出能力。
并且会为每一个发现的安全问题提出解决建议。
网址:
http:
//www.nessus.org
ISSInternetScanner:
应用层风险评估工具,商业漏洞扫描软件。
X-Scan等
案例漏洞扫描
使用工具软件X-Scan-v2.3该软件的系统要求为:
Windows9x/NT4/2000。
该软件采用多线程方式对指定IP地址段((或单机)进行安全漏洞检测,支持插件功能,提供了图形界面和命令行两种操作方式扫描内容包括:
远程操作系统类型及版本标准端口状态及端口Banner信息SNMP信息,CGI漏洞,IIS漏洞,RPC漏洞,SSL漏洞SQL-SERVER、FTP-SERVER、SMTP-SERVER、POP3SERVERNT-SERVER弱口令用户,NT服务器NETBIOS信息注册表信息等。
主界面
扫描结果保存在/log/目录中,index_*.htm为扫描结果索引文件。
主界面如图4-14所示。
扫描参数
可以利用该软件对系统存在的一些漏洞进行扫描,选择菜单栏设置下的菜单项“扫描参数”,扫描参数的设置如图4-15所示。
可以看出该软件可以对常用的网络以及系统的漏洞进行全面的扫描,选中几个复选框,点击按钮“确定”。
下面需要确定要扫描主机的IP地址或者IP地址段,选择菜单栏设置下的菜单项“扫描参数”,扫描一台主机,在指定IP范围框中输入:
172.18.25.109-172.18.25.109,如图4-16所示。
设置完毕后,进行漏洞扫描,点击工具栏上的图标“开始”,开始对目标主机进行扫描,如图4-17所示。
嗅探(Sniffer)技术
网络监听
在一个共享式网络,可以听取所有的流量是一把双刃剑
管理员可以用来监听网络的流量情况开发网络应用的程序员可以监视程序的网络情况黑客可以用来刺探网络情报
目前有大量商业的、免费的监听工具,俗称嗅探器(sniffer)
Sniffer(嗅探器)简介
嗅探器是能够捕获网络报文的设备(软件或是硬件),嗅探器这个术语源于通用网络公司开发的能够捕获网络报文的软件Sniffer。
从此以后Sniffer就成为这类产品的代名词,所有协议分析软件都被称为Sniffer。
Sniffer的工作在很大程度是是依赖于目前局域网(以太网)以及网络设备的工作方式。
它主要针对协议栈的数据链路层。
以太网络的工作原理
载波侦听/冲突检测(CSMA/CD,carriersensemultipleaccesswithcollisiondetection)技术
载波侦听:
是指在网络中的每个站点都具有同等的权利,在传输自己的数据时,首先监听信道是否空闲
如果空闲,就传输自己的数据如果信道被占用,就等待信道空闲
而冲突检测则是为了防止发生两个站点同时监测到网络没有被使用时而产生冲突
以太网采用了CSMA/CD技术,由于使用了广播机制,所以,所有与网络连接的工作站都可以看到网络上传递的数据
以太网卡的工作模式
网卡的MAC地址(48位)
通过ARP来解析MAC与IP地址的转换用ipconfig/ifconfig可以查看MAC地址
正常情况下,网卡应该只接收这样的包
MAC地址与自己相匹配的数据帧广播包
网卡完成收发数据包的工作,两种接收模式
混杂模式:
不管数据帧中的目的地址是否与自己的地址匹配,都接收下来非混杂模式:
只接收目的地址相匹配的数据帧,以及广播数据包(和组播数据包)
为了监听网络上的流量,必须设置为混杂模式
共享网络和交换网络
共享式网络
通过网络的所有数据包发往每一个主机最常见的是通过HUB连接起来的子网
交换式网络
通过交换机连接网络由交换机构造一个“MAC地址-端口”映射表发送包的时候,只发到特定的端口上
共享式网络示意图
Sniffer的原理
监听器Sniffer的原理:
在局域网中与其他计算机进行数据交换的时候,发送的数据包发往所有的连在一起的主机,也就是广播,在报头中包含目标机的正确地址。
因此只有与数据包中目标地址一致的那台主机才会接收数据包,其他的机器都会将包丢弃。
但是,当主机工作在监听模式下时,无论接收到的数据包中目标地址是什么,主机都将其接收下来。
然后对数据包进行分析,就得到了局域网中通信的数据。
一台计算机可以监听同一网段所有的数据包,不能监听不同网段的计算机传输的信息。
sniffer的用途的用途
Sniffer的正当用处是分析网络流量,确定网络故障原因。
比如:
网络的某一段出现问题,报文传输非常慢,而管理员又不知道那里出了问题。
这时,就可以利用sniffer来确定网络故障原因。
另外,利用sniffer还可以统计网络流量。
而黑客利用sniffer软件来捕获网络流量,从中发现用户的各种服务的帐号和口令。
Sniffer工作的必要条件
sniffer工作在共享式以太网,也就是说使用Hub来组成局域网。
本机的网卡需要设置成混杂模式。
本机上安装处理数据包的嗅探软件需要系统管理员权限来运行sniffer软件。
Sniffer支持的协议
数据链路层:
ethernet网络层:
IP,ICMP,IGMP传输层:
TCP,UDPIPXDECNet各种应用层协议:
HTTP,FTP,POP3,telnet。
Sniffer造成的危害
Sniffer属于第二阶段的攻击,也就是说黑客已经进入了目标系统,然后安装sniffer软件来进一步获取同一网段或其他网段中用户信息。
Sniffer能够捕获口令。
那些使用明文传输的数据的协议,都可能被sniffer捕获到用户口令。
FTP,telnet等协议。
一般来说,黑客只捕获每个数据包的前200-300bytes,然后将这些数据保存到目标主机的某个日志文件中。
Sniffer软件几乎可以捕获所有的以太网上的网络数据包。
被动嗅探vs主动嗅探
被动嗅探:
被动嗅探:
这种方式的sniffer只是被动地等待网络数据流量经过它们,静静地从LAN中捕获数据包。
主动嗅探:
在交换环境中,进行sniffer攻击需要首先冒充网关,这样就可以捕获到整个网段向外的网络流量。
网关是一个网络连接到其他网络的接口,所有访问其他网络的数据报文都必须经过网络来转发。
交换网络中的嗅探攻击
MACFLOOD(MAC地址泛滥)地址泛滥)(地址泛滥向LAN中发送大量的随机MAC地址,由于交换机把每个链路上使用的MAC地址都保存在它的内存中,当交换机的内存被耗尽时,交换机就会将数据包发送到所有的链路上,这时交换机变成了集线器。
在交换式网络上监听数据包
ARP重定向技术,一种中间人攻击
AB1B打开IP转发功能2B发送假冒的arp包给A,声称自己是GW的IP地址3A给外部发送数据,首先发给BGW4B再转发给GW
做法:
利用dsniff中的arpredirect工具
数据包过滤机制:
BPF
BerkeleyPacketFilter,BPF是由berkeley大学lawrence实验室于1993年提出的一种高效的数据包过滤机制。
BPF是一种应用效率高,应用广泛的数据包捕获技术,目前Unix/Linux平台上大多sniffer软件都是基于BPF开发的。
libpcap库介绍
Libpcap共享库由Berkeley大学洛仑兹伯克利国家实验室开发的。
Libpcap实质上是一个系统独立的API函数接口,用于用户层次的数据包截获工作,可用于不同的操作系统。
Libpcap库封装了BPF接口的数据包过滤过程。
Sniffer工具介绍
Tcpdump,WindumpSniffitDsniffEtherealSnifferPro
tcpdump&
windump
tcpdump是由berkeley大学洛仑兹伯克利国家实验室开发的一个非常著名的sniffer软件,同时也是一个网络报文分析程序。
它的报文过滤能力非常强大,它由很多个选项来设置过滤条件,并且通过布尔表达式来生成报文过滤器。
windump是tcpdump的windows版本。
安装windump之前需要安装winpcap库。
SnifferPro
NAI公司开发的功能强大的图形界面的嗅探器SnifferPro,它是目前最好,功能最强大的Sniffer软件,通用协议分析工具。
Dsniff
dsniff是由DugSong开发的,可以从www.monkey.org/~dugsong/dsniff处下载。
dsniff安装需要其他几个软件包:
OpenSSLlibpcapBerkeleyDBlinnids
Ethereal简介
一个跨平台的嗅探工具,有图形化界面和命令行两种版本。
目前支持windows和linux等多种操作系统。
图形化的报文过滤器:
ethereal通过displayfilter对话框来创建报文过滤器,用户可以通过指定不同协议的不同字段值来生成报文过滤规则,并且可以使用布尔表达式AND和OR来组合这些过滤规则。
TCP会话流重组:
会话流重组:
会话流重组ethereal通过followTCPStream来重组同一TCP会话的所有数据包。
Ethereal主界面
displayfilter
FollowTCPStream
Sniffer攻击的预防和检测
利用交换机、路由器、网桥等设备对网络合理分段。
尽量避免使用Hub来连接网络。
采用加密会话,比如:
SSH来代替telnet。
使用SSL、PGP(PrettyGoodPrivacy)。
根据Sniffer软件的安装位置进行检测,黑客通常将Sniffer软件安装在路由器,有路由功能的主机上。
使用检测工具:
tripwire,anti-sniffer。
由L0pth小组开发的Anti-Sniffer能够检测出sniffer攻击。
Sniffer攻击的手动检测
手动检测:
在unix主机上我们通过ifconfig命令可以确定网卡是否处于混杂模式来判断是否被安装sniffer软件。
检测处于混杂模式的节点
网卡和操作系统对于是否处于混杂模式会有一些不同的行为,利用这些特征可以判断一个机器是否运行在混杂模式下一些检测手段
根据操作系统的特征
LinuxLinux内核的特性:
正常情况下,只处理本机MAC地址或者以太MAC广播地址的包。
在混杂模式下,许多版本的Linux内核只检查数Linux据包中的IP地址以确定是否送到IP堆栈。
因此,可以构造无效以太地址而IP地址有效的ICMPECHO请求,看机器是否返回应答包(混杂模式),或忽略(非混杂模式)。
Windows9x/NT:
在混杂模式下,检查一个包是否为以太广播包时,只看MAC地址前八位是否为0xff。
根据网络和主机的性能
根据响应时间:
向本地网络发送大量的伪造数据包,然后,看目标主机的响应时间,首先要测得一个响应时间基准和平均值
L0pht的AntiSniff产品,参考它的技术文档
网络入侵
内容提要
介绍目前常用的网络攻击手段:
社会工程学攻击物理攻击暴力攻击利用Unicode漏洞攻击利用缓冲区溢出漏洞进行攻击等技术。
并结合实际,介绍流行的攻击工具的使用以及部分工具的代码实现。
社会工程学攻击
社交工程是使用计谋和假情报去获得密码和其他敏感信息的科学,研究一个站点的策略其中之一就是尽可能多的了解这个组织的个体,因此黑客不断试图寻找更加精妙的方法从他们希望渗透的组织那里获得信息。
举个例子:
一组高中学生曾经想要进入一个当地的公司的计算机网络,他们拟定了一个表格,调查看上去显得是无害的个人信息,例如所有秘书和行政人员和他们的配偶、孩子的名字,这些从学生转变成的黑客说这种简单的调查是他们社会研究工作的一部分。
利用这份表格这些学生能够快速的进入系统,因为网络上的大多数人是使用宠物和他们配偶名字作为密码。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 攻击 入侵 检测 技术