[硕士论文精品]基于蜜罐技术的端口扫描检测系统的设计与实现_第1页
[硕士论文精品]基于蜜罐技术的端口扫描检测系统的设计与实现_第2页
[硕士论文精品]基于蜜罐技术的端口扫描检测系统的设计与实现_第3页
[硕士论文精品]基于蜜罐技术的端口扫描检测系统的设计与实现_第4页
[硕士论文精品]基于蜜罐技术的端口扫描检测系统的设计与实现_第5页
已阅读5页,还剩54页未读 继续免费阅读

[硕士论文精品]基于蜜罐技术的端口扫描检测系统的设计与实现.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要伴随着网络带宽的快速增长和越来越多的行业引入互联网技术,各种恶意网络攻击技术也日益提高,互联网信息安全问题也变得越来越重要。为了不被新型网络攻击干扰,主动了解攻击者,改变当前网络安全系统的被动防御缺点是极其重要的。通过端口扫描来获得目标主机的信息是网络入侵的关键一步,端口扫描是网络攻击的第一步,因此对端口扫描的检测在网络安全中显得非常重要。蜜罐是一种安全资源,其存在的价值就是被攻击或损害。在网络安全领域蜜罐的这种性质能够吸引攻击者或把攻击者从真J下的目标转移到蜜罐。利用蜜罐的诱惑性,在蜜罐被攻击或损害的过程中获得攻击者的相关信息或攻击工具,为分析攻击者提供基础,也同样为提前发觉新型攻击方法提供了可能性,从一定程度上弥补了当前入侵检测系统的被动防御性缺点。鉴于端口扫描检测的重要性和蜜罐的主动性优点,本文提出了基于蜜罐技术的端口扫描检测观点。在一台独立主机上布置虚拟蜜罐,捕捉访问蜜罐虚拟主机的数据报,对访问者提供蜜罐模拟服务的同时检测端口扫描。为了避免常用阈值法端口扫描检测难以人为设置阈值的弊病,本文在已有的概率统计端口扫描检测技术基础上,利用所捕获数据报的源地址、目的地址和目的端口三个特性,结合扫描者具有访问多个目的主机的某一端口或单个目的主机的多个端口的特征,分别对水平端口扫描和垂直端口扫描设计检测算法。该方法首先具有一定的适时性,另外,由于蜜罐的诱惑性还可以得到广泛的数据来源。关键词蜜罐,HONEYD,端口扫描,端口扫描检测HTTP/INFO3DOUCOM/网络推广ABSTRACTASTHEINCREASINGOFNETWORKBANDWIDTHANDNETWORKBEINGUSEDINMOREANDMOREINDUSTRY,TECHNIQUESOFNETWORKATTACKAREALSOBEENINGIMPOROVEDSOINFORMATIONSECURITYINTHENETWORKISBEINGMOREANDMOREIMPORTANTITISNECESSARYTOKNOWABOUTATTACKERSINITIATIVELYANDCHANGETHEFLAWOFPASSIVEDEFENSIVEOFNETWORKSECURITYSYSTEMINORDERNOTTOBEDISTURBEDBYNEWATTACKSPORTSCANNINGISTHEFIRSTSTEPOFNETWORKINTRUSIONSOASTOGETINFOLRMATIONABOUTTHEGOALHOSTS,SOITISVERYIMPORTANTTODETECTPORTSCANNINGINTHEAREAOFNETWORKSECURITYAHONEYPOTISARESOURCEWHOSEVALUEISINBEINGATTACKEDORCOMPROMISEDHONEYPOTCANATTRACTATTACKERSORDIVERTANATTACKERFROMTHEREALTARGETINTHEAREAOFNETWORKSECURITYGETTINGINFORMATIONABOUTATTACKANDATTACKTECHNIQUESINTHEHONEYPOTSLOGFILESLAYSAFOUNDATIONFORANALYSINGATTACKERSITISPOSSIBLETOTAKETHEINITIATIVETOEXPLORENEWATTACKS,SOHONEYPOTCANCHANGETHEFLAWOFTHEPASSIVEOFINTRUSIONDETECTIONSYSTEMTOACERTAINEXTERNBECAUSEOFTHEIMPORTANCEOFPORTSCANNINGDETECTIONANDTHEINITIATIVEOFHONEYPOT,IPRESENTAPOINTOFVIEWTHATDETECTINGPORTSCANNINGSBASEDONHONEYPOTINTHISPAPERINTHEENVIRONMENTOFHONEYPOT,AHOSTCAPTURESPACKETSSENDINGTOVIRTUALHOSTSINTHEHONEYPOTWHILEHONEYPOTPROVIDESVISITORSWITHEMULATEDSERVICES,PORTSCANNINGISALSOBEINGDETECTEDINADDITION,ITISDIFFICULTTOSETTHRESHOLDVALUESINTHENORMALTHRESHLDMETHOD,SOIDESIGNAPROBABILISTICMETHODBASEDONTHEFORMERPROBABILISTICAPPROACHESTHEMETHODMAKESUSEOFTHESOURCEADDRESS,DESTINATIONALADDRESS,DESTINATIONALPORTOFTHECAPTUREDPACKET,ANDESPECIALLYCHARACTERSTHATASCANNERACCESSESMORE。PORTSINONEHOSTORMOREHOSTSBUTONYLEONEPORTIMPROVESPROBABILISTICAPPROACHTODETECTVERTICALANDHORIZONTALPORTSCANNINGSRESPECTIVELYTHEMETHODISREALTIMEANDHASBROADSOURCESOFPACKETSKEYWORDSHONEYPOT,HONEYD,PORTSCAN,PORTSCANDETECTION原创性声明本人声明,所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了论文中特另,LJJU以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得中南大学或其他单位的学位或证书而使用过的材料。与我共同工作的同志对本研究所作的贡献均己在论文中作了明确的说明。作者签名圣曼壅日期迎旦L年上月幽学位论文版权使用授权书本人了解中南大学有关保留、使用学位论文的规定,即学校有权保留学位论文并根据国家或湖南省有关部门规定送交学位论文,允许学位论文被查阅和借阅;学校可以公布学位论文的全部或部分内容,可以采用复印、缩印或其它手段保存学位论文。同时授权中国科学技术信息研究所将本学位论文收录到中国学位论文全文数据库,并通过网络向社会公众提供信息服务。储虢猛堕翮签硌也嗍进钍月瑚HTTP/INFO3DOUCOM/网络推广硕十学位论文第一章绪论11课题研究背景第一章绪论弟一早三百T匕当今,伴随着互联网的广泛应用,网络经济和网络社会也逐步到来。INTEMET的发展改变了经济、社会、文化的结构和运行方式。但是,网络技术也有其两面性,网络病毒和黑客攻击行为伴随着网络从无到有,有增无减。从1988年11月2日诞生的第一个网络“蠕虫“病毒到2006年底的“熊猫烧香“病毒。“HACKER从没有贬义的计算机编程高手的代称到电话线路的盗用者再到如今的侵入重要大型计算机网站进行破坏、对某一网站发出拒绝服务的攻击者等。据相关资料统计表明,美国每年因网络安全事件造成的经济损失高达75亿美圆,全球平均每20秒就发生一次网络入侵事件。如何有效地抵御各种攻击行为一直是信息安全领域的一个重要问题。越来越多的企业也意识到安全性问题,并在这方面投入更多的预算。防火墙、入侵检测系统、杀毒软件等都是针对网络安全问题而开发的各种不同功能的软件,这些软件系统有一个共同的缺点就是滞后性,即只有在遭遇到病毒的破坏后才能够总结归纳病毒特征,然后升级软件对病毒做出防护。另外,杀毒软件还存在把正常文件误判为病毒的可能性,导致正常文件被破坏。为了解决滞后性这一问题,在1990年出现了蜜罐HONEPOT概念。蜜网项目组THEHONENETPROJECT仓1始人LANCESPITZNER给出了蜜罐的权威定义【L】蜜罐是一种安全资源,其价值在于被扫描、攻击和攻陷。蜜罐技术也是一种安全技术,经常与入侵检测相互结合使用【2】3】【4】5】【61,但与大多数传统安全机制有所不同,蜜罐技术在一台主机或一个网段中专门提供有漏洞的服务诱骗入侵者,在入侵者的访问过程中,蜜罐的同志系统记录访问者的活动,日志文件经过网络管理人员的分析后获得入侵者的攻击方式【71,并提前作出预防准备。总的来说,蜜罐技术是一种通过欺骗入侵者的手段以达到提前采集黑客攻击方式和保护真实主机系统目标的诱骗技术。蜜罐提供的网络资源的价值就在于被探测,被攻击。蜜罐的这种性质弥补了普通安全软件的滞后性缺点,为提前发现攻击者提供了可能性。但是,直到1998年左右,“蜜罐”还仅仅限于一种思想,没能通过这种手段达到欺骗黑客从而了解黑客的目的。从1998年开始一些研究人员才逐步丌发出一些专门用于欺骗黑客的开源和商用工具。硕十学位论文第一章绪论12课题研究意义蜜罐和蜜网技术的研究还处于早期阶段,目前蜜罐和蜜网的部署和维护还比较复杂,同时能够提供数据分析功能的密罐和蜜网也比较有限,蜜罐技术也还具有很大的研究【8】【9】10】和利用价值11】【12】F13】。端口扫描是入侵者进行网络攻击的第一步,在端口扫描检测系统检测到恶意行为时给更高级的IDS、用户或管理员做出响应以便能对入侵做到预防。本课题将深入探究已有端口扫描检测技术的优缺点并结合新有的HONEYPOT安全理论以设计和开发具有更低误报率和漏报率的端口扫描检测系统为主要目的。课题在开源蜜罐HONEYD环境下对端口扫描做出检测既是对HONYED框架的扩展,又可以通过蜜罐的特性降低误报率和漏报率。13国内外研究现状为了能够在入侵者进行攻击前做出主动防御,在上世纪八十年代就出现了入侵检测的概念,随后入侵检测形成基于网络和基于主机两大阵营。端口扫描检测也是入侵检测和入侵防御系统的重要组成部分。在端口扫描检测这一领域中,现在已经存在不少扫描检测算法和检测工具,如SNORT141、SYNLOG151、SCANLOGD16】等。端口扫描检测的最基本算法理论是通过监视同一个源端对受保护对象在一个固定时间段内进行的探测数量,若探测次数超过预先设定的门限值就把那个源端判定为一个扫描者。另外还存在以概率和统计思想设计的检测算法。现在这些常用的扫描检测工具大都能对TCPCONNECTSCANNING、TCPSYNSCANNING、TCPFINSCANNING等普通端口扫描做到检测。但是,对慢速扫描、分布式扫描、虚假IP地址扫描等通常称为秘密扫描的误报率和漏报率较普通端口扫描要高。蜜罐是一门新兴的技术,到目前为止蜜罐技术的发展历程可以分为以下三个阶段【17】【1引。从上世纪九十年代初蜜罐概念的提出直到1998年左右,“蜜罐“还仅仅限于一种思想,通常由网络管理人员应用,通过欺骗黑客达到追踪的目的。这一阶段的蜜罐实质上是一些真正被黑客所攻击的主机和系统。从1998年开始,蜜罐开发吸引了一些安全研究人员的注意,一些专门用于欺骗黑客的工具陆续被开发出来,如DTKDECEPTIONTOOKIT【19】、NIELSPROVOS开发的HONEYD201等开源工具,同时也出现了像CYBERCOPSTING211、KFSENSOR221、SPECTER23】等一些商业蜜罐产品。DTK是由FREDCOHEN开发的第一个开源蜜罐工具,DTK运行在UNIX系统上模拟UNIX系统的弱点,当受到攻击时记录攻击者的行为,DTK不仅获得了攻击者的信息而且从心理上干扰攻击者。在1998年由2HTTP/INFO3DOUCOM/网络推广硕士学位论文第一章绪论HLFERENTHUGER开发的第一个商业蜜罐产品CYBERCOPSTING问世,CYBERCOPSTING运行于WINDOWSNT系统,在性能上较DTK有很大进步。CYBERCOPSTING能够同时模拟多个系统,如CISCO路由器、SOLARIS系统和NT系统。CYBERCOPSTING还可以模拟一个完整的网络,网络中的每个主机有自己模拟的系统和服务,并且主机的IP协议栈与自己的系统类型吻合,可以回应主动“指纹”识别。这一阶段的蜜罐可以称为是虚拟蜜罐,即开发的这些蜜罐工具能够模拟虚拟的操作系统和网络服务,并对黑客的攻击行为做出回应,从而欺骗黑客。虚拟蜜罐工具的出现也使得部署蜜罐变得比较方便。但是由于虚拟蜜罐工具存在着交互程度低,较容易被黑客识别等问题,从2000年之后,安全研究人员更倾向于使用真实的主机、操作系统和应用程序搭建蜜罐,随之出现了动态蜜罐DYNAMICHONEYPOT【24】【251、蜜网HONEYNET26】【27【】28】等概念。动态蜜罐系统能够通过监听其所处网络中的流量,自动地学习周围的网络环境,识别一个组织或局域网的部署情况,在无需人工干预的前提下自动为系统配置一些蜜罐系统。假如网络的部署情况发生变化,动态蜜罐系统能够实时地识别出这些变化,并且做出动态适应。蜜网是在蜜罐技术上逐步发展起来的一个新的概念,又可称为诱捕网络。蜜网技术实质上还是一类研究型的高交互蜜罐技术,其主要目的是收集黑客的攻击信息。但与传统蜜罐技术的差异在于蜜网构成了一个黑客诱捕网络体系架构,在这个架构中,可以包含一个或多个蜜罐,同时保证了网络的高度可控性,以及提供多种工具以方便对攻击信息的采集和分析。另外,也存在虚拟蜜网概念。虚拟蜜网通过应用虚拟操作系统软件如沁砌RE和USERMODELINUX等在单一的主机上实现整个蜜网的体系架构。虚拟蜜网的引入使得架设蜜网的代价大幅降低,也较容易部署和管理,但同时也带来了更大的风险,黑客有可能识别出虚拟操作系统软件的指纹,也可能攻破虚拟操作系统软件从而获得对整个虚拟蜜网的控制权。14主要的研究工作鉴于端口扫描在入侵中的作用和蜜罐技术在网络安全领域的应用,本文将在蜜罐技术的基础上展开对端口扫描检测的研究。总的来说,课题研究主要包括两个方面。1鉴别端口扫描,并同正常的网络访问区别开。端口扫描与正常网络访问没有什么明显的区别,都是在网络上发送着数据包。但是,攻击者可以通过多种3硕士学位论文第一章绪论不同的手段发送数据包对目标进行探测,总的来说,有TCP和UDP两种数据包类型。若不加细微区分,探测性TCP数据包与正常TCP数据包在结构体上没有什么区别。但是,由于TCPIP协议本身的漏洞和RFC793文件对端口所处状态开放、半开放、关闭对不同类型的TCP数据包由TCP报文首部的6个标志字段及组合决定所做响应的规定,探测者组合不正常的标志字段或把正常的数据包没有按照正常的顺序发送给不同状态的端口,然后观察端口的回应数据包达到判定端口状态的目的。端口扫描检测算法是本文的个重要研究内容。扫描者的扫描方式大多有两种,即垂直扫描和水平扫描。扫描者可以针对一台主机连续扫描不同的端口,也就是所谓的垂直扫描,水平扫描是指在一个网段内逐个IP地址扫描同一个端口。访问的目的主机数和端口数比正常访问的多是水平扫描和垂直扫描的一个特征。本文利用这一特征为端口扫描设计检测方法。2在一个局域网内部署一个虚拟蜜罐,给蜜罐的模拟操作系统绑订网段内没在工作的IP地址,给每个模拟的操作系统配置不同的服务。另外,有些虚拟蜜罐还具有模拟网络拓扑结构的功能。这样,一个虚拟蜜罐基本代替了一个小型局域网。利用虚拟蜜罐技术进行端口扫描检测具有搜集信息来源广的特性,与分布式端口扫描检测技术相比,也降低了网络流量。同样,由于蜜罐本身的诱惑性,更能吸引入侵者。在网络安全技术中,FALSEPOSITIVERATE把合法的访问误判为非法的入侵的概率和FALSENEGATIVERATE把真正的入侵漏掉而没有检测到的概率是安全软件等级的标准。由于蜜罐开放的端口、提供的服务本身并不存在,所以,蜜罐的访问者从一定程度上讲就有一定的可疑性,通过蜜罐的判决能够增加准确度。HONEYD是一个功能强大的开源虚拟蜜罐系统,研究开源虚拟蜜罐软件HONEYD的架构和模拟操作系统、模拟服务原理,扩展HONEYD架构,增补HONYED端口扫描检测功能。本文就在HONYED蜜罐的诱惑性、低成本性和多功能性等优点的基础上研究如何充分利用虚拟蜜罐,为虚拟蜜罐增加端口扫描检测的功能。15论文结构本文共分六章第一章为绪论,主要介绍课题研究背景、端口扫描检测技术和蜜罐技术的发展、课题研究目的和意义以及论文的结构和内容安排等。第二章详细分析了当前存在的各种端口扫描技术原理和蜜罐技术,并对常用蜜罐HONEYD做了分析。第三章在总结已有端口扫描检测方法的基础下,提出在蜜罐环境下进行端口扫描的方法,利用概率统计方法分析垂直端口扫描检测原理并设计检测算法。4HTTP/INFO3DOUCOM/网络推广硕士学位论文第一章绪论第四章继续利用第三章中的概率统计方法分析水平端13扫描原理并设计检测算法。第五章在HONEYD架构下增加端口扫描检测模块,设计端口扫描检测系统,并布置实验环境,利用端口扫描工具NMAP对本文设计的端131扫描检测系统做了测试。第六章对本文所进行的研究工作进行总结,并对下一步的工作进行了展望。5硕士学位论文第二章端口扫描和蜜罐技术第二章端口扫描和蜜罐技术TCPIP协议的特点和漏洞是端口扫描的主要原理。蜜罐提供的有漏洞服务为主动分析入侵者提供了途径。21网络端口扫描各种端口扫描方法都是在TCPIP协议的基础上实现的,在分析扫描技术之前对相关TCPIP协议作出分析。211TCPIP基本概念1TCPIP体系结构TCPIP协议结构是一个具有四层协议的体系结构【291,其结构如图21所示。应用层传输层网际层网络接口层各种应用层协议TELNET,FTT,SMTP等TCP,UDPIP与各种网络接口图21TCPIP体系结构及配套协议应用层为最终用户服务。在应用层存在为用户提供不同服务而彼此通信的应用进程,应用层规定应用进程在通信时应该遵循的协议。每一个应用层协议解决了某一类问题。应用层存在TELNET、FTP、SMTP、HTTP等著名协议。传输层负责为通信双方的应用进程之间提供端到端的数据通信。因特网的传输层使用两种不同的协议,即面向连接的传输控制协议TCPTRANSMISSIONCONTROLPROTOC01和无连接的用户数据报协议UDPUSERDATAGRAMPROTOC01。TCP数据报报头格式如图22所示。TCP报文段首部存在6个标志字段,分别为URG、ACK、PSH、RST、SYN和FIN,在端口扫描中有重要作用,各标志位的意义在分析端口扫描技术时将给出详细说明。UDP数据报首部较TCP报文段首部简单,只有源端口、目的端口、长度和校验和四个字段组成,每个字段都是两6HTTP/INFO3DOUCOM/网络推广硕士学位论文第二章端口扫描和蜜罐技术个字节。源端N16位目的端H16位序号确认序号数据偏移保留UAPRSFRCSSYI窗口4位6位GKHTNN校验和紧急指针图22TCP报文段首部格式网际层负责为互连网上的不同主机提供通信。网络层的主要协议是无连接的网际协议IPINTERNETPROTOC01,另外还有与IP协议搭配使用的三个协议地址解析协议ARP、逆地址解析协议RARP和因特网控制报文协议ICMP。IP数据报报头格式如图23所示。版本首部长度服务类型总长度4位4位标识标志片偏移寿命协议首部校验和源IP地址目的IP地址选项字段及填充长度可变图23数据报报头格式网络接口层包括操作系统中的设备驱动程序和对应的网络接口设备,主要处理与传输媒介的物理接口问题。2端口与端口号传输层端口是一个16比特的号码,用来标识通信双方的连接端点。端口号分为两类,一类是分配给一些常用应用层程序固定使用的熟知端口,其范围为01023,例如,HTTP用80端口,FTP用21端口,TELNET用23端口等。另一类则是一般端口1024“65535,用来随时分配给请求通信的客户进程。端口最基本的两种状态是监听LISTEN和关闭CLOSED。端口处在监听状态表示存在服务程序通过该端口向外提供服务,只要外界正确使用相应的服务协议访问该端口就可以得到服务。端口处在关闭状态表示没有在该端口服务的应用程7硕士学位论文第二章端口扫描和蜜罐技术序或在该端口提供服务的应用程序没有处在运行状态。通过端口扫描获知目标主机的端口状态就基本得到了目标主机所提供的服务,针对不同的服务采取相应的攻击方法对目标进行攻击。在TCP连接过程中,TCP端口可能处在各种状态,状态之间的变迁又是由用户命令、到达报文类型和定时器驱动的。由于本文主要探讨目的主机端的端口扫描与检测问题,故总结目的主机端的TCP端口连接状态变换如图24所示。发注状态的命名和意义与RFC793文件中的一致图24TCP连接服务器端口状态变换图在图24中,启动在某一端口提供的应用进程前,端口处于关闭CLOSED状态,在人为启动应用进程后端口处于侦听LISTEN状态。如果需要访问目的主机的服务,客户端进程首先向目的主机的端口发送SYN标志位置1的同步信号,目的主机的处于LISTEN状态的端口在收到该信号后,状态转变到SYN_RCVD,并给客户端响应一个SYNACK数据报。在客户端收到SYNACK数据报后再向目的主机响应ACK信号,目的主机在收到ACK信号后,双方端口均处于ESTABLISHED状态,表明双方可以开始传输数据信息。假如客户端完成了数据传送,客户端进程向目的主机发送FIN数据报,在目的主机收到FIN数据报之后,给客户端一个ACK响应,目的主机端口变迁到CLOSEWAIT状态。然后,服务器进程发送FIN数据报给客户进程,状态变迁到LASTACK。当收到客户进程对FIN数据报所响应的ACK报文时,服务器进程释放连接,状态回到原来的CLOSED状态。3数据传输过程在INTERNET上传输数据的过程是一个对数据进行封装ENCAPSULATION和解封装DEENCAPSULATION的过程。当向另外一台计算机发送数据时,数据沿着网络模型向下传递,每一层都会在向下传递数据之前给数据添加上数据报头在RHTTP/INFO3DOUCOM/网络推广硕士学位论文第二章端口扫描和蜜罐技术网络接口层还有报尾,过程如图25所示。图25数据的封装过程图应用层一TCP一IP一土F网络接口层212端口扫描技术端口扫描就是对一台客户主机或一个网络段目标主机的某一个端口或指定的一段端口进行访问,其基本原理是利用TCPIP协议向目标主机的端口发送探测数据包,并记录目标端口的响应,从而判断目标主机端口的当前状态。因为多数网络服务都是在指定的端口上提供的,所以得到端口的开关状态是端口扫描的一个目的,更重要的是判断出目标主机所提供的服务。端口扫描主要基于TCP连接,也存在基于UDP连接的。1TCP端口扫描端口扫描一般主要基于TCP连接。TCP是面向连接的数据传输协议,在两个主机开始TCP通信时,必须通过“三次握手过程建立连接,“三次握手”的过程姐图26所示。TCP端口扫描通过利用非正常的握手过程和端口所处状态对异常TCP数据包的响应来判断端口所处状态。TCP报文段首部有6个标志字段,分别为URG、ACK、PSH、RST、SYN和FIN,这6个标志位在TCP端口扫描和检测中有重要作用,将各标志位的意义列举如下。URG当URG置1时,数据报内从第一字节到紧急指针所指字节的那段数据不进入接收缓冲就直接交给上层,余下的数据仍然要进入接收缓冲的。ACK在TCP首部有一个32位的确认序号字段,表示接收方希望下次收到的数据的序列号。只有当ACK置1时确认序号字段才有意义,当ACK置0时确认序号没有意义。PSH当PSH置1时,提示数据的接收者将本报文段立即传送到应用层,9硕士学位论文第二章端口扫描和蜜罐技术而不再将数据报进行队列处理。塑兰堕型、7发T一1接收送陵者者图26三次握手建立TCP连接过程示意图RST当出现了由于主机崩溃或其他原因导致的通信混乱等严重差错时置RST为1,以此来释放连接,然后重新建立传输连接。RST位还用来拒绝接受一个非法的报文段或拒绝一个建立连接的请求。SYN此标志位在建立连接时使用。发起方向另一方发送SYN置L而ACK置O的请求报文段,表明需要同对方建立连接。对方若同意建立连接,就回送SYN置1而ACK置1的报文段。因此,SYN标志位用来表明是连接请求或接受连接请求报文,而ACK标志位用来区别这两种报文。FINFIN标志位用来释放一个连接。当FIN置1时,表明需要发送的数据已经发送完毕,并要求释放连接。根据RFC793的规定,当端口处于CLOSED、LISTEN和SYNRCVD状态时,主机对收到的带有不同标志位的数据报按如下方式进行处理。IF主机端口处于CLOSED状态丢弃所有数据报包括RST数据报,对所有非RST数据报给予RST响应IF到达报文的ACK标志位置O响应数据报ELSEIF到达报文的ACK标志位置L响应数据报ENDIFENDIFRETURNENDJF10HTTP/INFO3DOUCOM/网络推广硕士学位论文第二章端口扫描和蜜罐技术IF目标主机的端口处于LISTEN状态IF到达报文的RST标志置1丢弃RST数据报;RETURNELSEIF到达报文的ACK标志置L响应RST数据报RETURNELSEIF到达报文的SYN标志置1先进行安全性检查,再进行优先级检查,如果其中之一不能通过检查,响应RST报文若通过了安全性和优先级检查,设置RCVNXTSEGSEQI,IRSSEGSEQ,响应SYN数据报,其中,ISS为一个随机值。ELSE丢弃数据报RETURN;ENDIFENDIFENDIFENDIFIF目标主机端口处于SYNRCVD状态IF收到报文的RST标志置1TCP端口状态返回到LISTEN丢弃数据报;ENDIFENDIF根据发送方扫描时发送的不同报文类型,TCP扫描主要有以下几种【30】【3L】【32】1TCPCONNECT扫描TCPCONNECT扫描是最基本的TCP扫描方法,又称全连接扫描。该方法利用操作系统提供的CONNECT系统调用与目标主机的端口进行建立连接尝试,建立连接过程完成一次完整的三次握手和连接释放过程。如果端口处于侦听状态,那么CONNECT就能成功。否则,说明该端口处于关闭状态,没有对外提供服务。硕士学位论文第二章端口扫描和蜜罐技术这种方法的一个最大特点是不需要任何权限,系统中的任何用户都有使用这个调用的权限。另外,TCPCONNECT扫描在速度上也具有优势。除了可以对目标主机的端口以串行方式调用CONNECT外,扫描者还可以通过同时打开多个套接字来加速扫描。但是,这种扫描机制的缺点就是容易被目标系统发现或被放火墙过滤。在目标主机的日志文件中,会记录下这些连接请求和连接出错的服务消息,然后目标系统能很快将其关闭。2TCPSYN扫描因为扫描程序的目的在于判定端口的开放状态,因而不必要打开_个完全的TCP连接。TCPSYN扫描首先发送一个SYN数据包,模拟TCP三次握手过程的第一步,好像准备打开个实际的连接并等待反应一样。如果对方返回一个SYNACK响应,表示端口处于侦听状态;如果返回一个RST响应,表示端口没有处于侦听态。如果收到一个SYNACK,则扫描程序必须再发送一个RST信号,来关闭这个建立连接过程,或者另行处理,但是此时已经得到目标端口的状态。这种扫描技术的优点是,一般不会在目标主机上留下记录,即使目标主机的日志文件中对扫描有所记录,也要比全连接扫描少得多,因此它的隐蔽性【33】【34】比TCPCONNECT扫描要好的多。很多黑客和网络攻击系统使用的扫描工具都是基于此技术实现端口扫描的。但是,这种扫描技巧也有一定的局限性,也就是在大多数操作系统下必须拥有了ROOT权限或授权用户权限才能建立这种可配置的SYN数据包。由于TCPSYN扫描并没有完成一次完整的“三次握手“过程,所以这种方法通常又认为是“半开放”式扫描HALFOPENSCANNING。3TCPFIN扫描有些时候SYN扫描可能也不够隐秘,因为一些防火墙和包过滤器能够监视到SYN数据包对某些未被允许访问端口的访问,从而检I贝J至IJSYN扫描。相反,FIN数据包可能会无阻拦地通过这些监视程序。TCPFIN扫描方法的基本思想是利用RFC793对FIN数据包响应的规定。按照RFC793的规定,对于FIN请求,目标系统中所有关闭的端口给予一个RST应答,而打开的端口会忽略这些请求。这种扫描方法不包含TCPZ次握手过程的任何部分而无法在被记录,因此SYN扫描更加隐蔽。但它能否有效实现,还与目标系统有关。这种技巧通常只工作在基于UNIX的TCPIP协议栈上,而对于WINDOWS系统的操作系统该方法无效,因为不论目标端口是否打开,WINDOWS系列操作系统对FIN请求都发送RST响应。当然,也可以利用FIN扫描这种特点来区分目标系统是UNIX还是WINDOWS。此外,用户必须有配置IP包的ROOT权限才能够利用该扫描。4TCPACK扫描12HTTP/INFO3DOUCOM/网络推广硕士学位论文第二章端口扫描和蜜罐技术TCPACK扫描技术并不能识别端口是否打开,但它可以判断目标主机是否受到防火墙保护以及防火墙的类型。RFC793规定,对于来访的ACK报文,无论端口打开或者关闭,都返回RST报文。如果源主机通过这种方式获得RST报文,就可以据此判断目标主机没有防火墙或者其防火墙只有简单的包过滤功能;如果没有收到RST报文,除非目标主机关机,否则必定有防火墙在保护,并且防火墙是基于状态检测的,它能将非法ACK报文全部丢弃且不做应答。ACK扫描方法也需要有ROOT权限。5TCPNULL扫描该方法是向目标主机的端口发送一个不包括任何标志位的TCP数据报。根据RFC793的规定,目标系统对所有关闭的端口返回一个RST分组,而所有处于监听状态的端口则忽略到达的报文。6TCPXMAS扫描该方法是向目标系统的端口发送一个FIN、URG和PUSH标志位均置为“L的数据报。根据RFC793的规定,处于监听状态的端口忽略到达的报文,而对所有关闭的端口目标系统返回一个RST分组。这种扫描方法通过三种标志位的组合,有可能通过检测FIN标记的包过滤程序。2UDP端口扫描UDP端口扫描较TCP端口扫描简单。UDP不是可靠传输协议,对到来的报文的处理方法也相当简单。如果目标端口当前处于打开状态,UDP就不发送任何响应报文,而如果端口处于关闭状态,UDP就发送一个端口不可达的ICMP报文。这样,只需构造一个UDP报文,观察目标端口对报文的响应就可知道目标端口的状态。但是,这种方法需要有ROOT权限。3隐蔽性端口扫描虽然TCPSYN扫描、TCPFIN扫描和TCPACK扫描具有一定的隐蔽性,但这些方法的隐蔽性只是通过避免在目标主机的日志文件中留下痕迹实现的。如今的一些IDS系统也可以将其记录,从而发现其扫描目的。隐藏M源地址是更加隐蔽的扫描方法。现在的IP协议并不能防止发送数据者使用虚假的IP源地址,这为攻击者隐藏自己的IP地址提供了缺口。但攻击者的问题是如果发送的SYN数据包使用了虚假的源地址,那么接收者的应答数据包,不管它是SYNACK还是RST都会发送到虚假地址上去,而攻击者本身将收不到信号。隐藏源地址的端口扫描必须解决这个问题,目前主要有两种方法。其中之一就是将自己的真实源地址隐藏在很多虚假的诱饵地址中,迫使管理员必须在很多个IP地址中一一跟踪查证,这往往是很难做到的,并且毕竟暴露了自己的IP地址。另外一种就是利用空闲主机扫描ID13硕士学位论文第二章端口扫描和蜜罐技术LESCAN。IP数据报首部有一个标识字段IPID,以便于分片后的数据报片最后能重装成原来的数据报。大多数操作系统在发送一个数据报后就将IPID增加L,所以,探测IPID值的变化可以得知该机在某段时间内发送的数据报数量。IDLESCAN结合端口对TCP数据报响应和IPID来实现完全隐蔽端口扫描。IDESCAN分三个过程来实现。首先选择一台几乎不同其他主机有数据联系的空闲主机,探测其当前的IPID,如利用HPIN92。然后,以空闲主机的IP地址构造SYN数据报,发送到目标主机。接着再次探测空闲主机的IPID。因为,不论空闲主机端口的开放状态,若目标主机的被扫描端口处于LISTEN状态,对扫描者构造的SYN数据包向空闲主机响应一个SYNIACK数据报,但空闲主机响应一个RST报文。若目标主机的被扫描端口处于CLOSED状态,对扫描者构造的SYN数据包向空闲主机响应一个RST数据报,但空闲主机丢弃该报文。所以,在第二次探测空闲主机的IPID值时,若目标主机端口处于关闭状态,其值增加L;若处于监听状态,其值增加2,从而得知端口状态。213常见端口扫描工具当前存在多种端口扫描工具【351。NMAP36】是一个高级的网络探测和安全扫描程序,系统管理者和个人可以使用这个软件扫描大型网络,获取主机运行状态以及提供的服务类型等信息。NMAP支持UDP和TCP扫描,基本实现了所有的TCP扫描方法。NMAP支持单端口扫描和多端口扫描,也支持对多台主机的并行扫描。NMAP还可以向用户提供端口是否被放火墙、包过滤和其他网络安全软件所屏蔽信息。另外,NMAP也具有通过PING扫描探测主机是否工作和利用TCP口协议栈探测操作系统类型功能。XSCANY7】是一部国产网络扫描工具,运行于WINDOWS系列操作系统,以多线程方式对指定的IP地址或IP段进行扫描,扫描内容包括开发端口及远程服务类型、操作系统类型及版本,以及各种弱口令漏洞、应用服务漏洞等多数漏洞。但XSCAN仅仅支持TCPCONNECT和SYN扫描方式。22蜜罐技术蜜罐既可以理解为一种欺骗攻击者的工具又可以看作一门检测攻击者的技术,其实,从根本上说蜜罐的用途就是利用它的欺骗性达到检测攻击者的目的。蜜罐是一个欺骗系统或陷阱的组合,在蜜罐系统中存在口欺骗、服务欺骗、文件欺骗、操作系统欺骗等。HONEYPOT故意提供这些欺骗系统,伪装成有弱点的系统或对外提供有漏洞的服务,吸引入侵者的注意,在入侵者访问HONEYPOT的14HTTP/INFO3DOUCOM/网络推广硕士学位论文第二章端口扫描和蜜罐技术过程中,HONEPOT系统自动记录入侵者的行为和踪迹,服务员通过分析记录来判定入侵者的意图。从一定程度上说,所有流入或流出蜜罐的网络流量都预示着扫描、攻击或攻陷,HONEPOT的核心价值就在于对与HONEPOT相交互的活动进行监视、检测或分析。221蜜罐的分类从不同的角度划分HONEPOT,HONEPOT有不同的类型【38】【391。从应用的角度出发,HONEPOT可分为产品型HONEPOTPRODUCTIONHONEPOT和研究型HONEPOTRESEARCHHONEPOT。产品型蜜罐是已经部署好了的主机系统,这些主机提供一些相关服务并记录访问者的活动,其目的在于利用蜜罐提供的服务去诱惑入侵者达到降低真实系统被攻击的可能性的目的,从一定程度上为一个有组织的网络提供安全保护。研究型蜜罐的目的在于利用系统的服务间接得到攻击者的相关信息,研究人员再分析得到的信息作出警告或预测。研究型蜜罐并没有对组织做出直接的安全保护,但是,由蜜罐搜集的信息问接帮助管理人员对威胁提前作出防备。根据交互度一入侵者能够和蜜罐相交互的数量一的等级,蜜罐可以分为低交互10WINTERACTION和高交互HIGHINTERACTION型蜜罐。低交互度蜜罐利用后台代码模拟操作系统和网络服务。例如,在2L号端口模拟FTP服务,在80号端口模拟网络服务等。低交互度蜜罐容易部署,但是攻击者也可以通过向蜜罐发出命令的方式检测是否是模拟服务。高交互蜜罐部署真实的操作系统,提供真实的服务。这样做的好处就是能够捕捉更多有关入侵者的信息,由于是同真实的系统和服务相交互,入侵者更加全面的行为能够被记录。交互度越高,入侵者的活动范围就越广,研究人员可以对入侵者做更多的了解,但是,蜜罐的风险也就越高。根据蜜罐实现方式的不同,蜜罐可以分为物理蜜罐PHYSICALHONEYPOT和虚拟蜜罐VIRTUALHONEYPOT。物理蜜罐就是网络上真实存在的一台主机,虚拟蜜罐则是在主机上运行的后台程序。这两种类型的蜜罐都需要有自己的IP地址。尽管存在蜜罐的多种定义,但各种类型蜜罐之间仍存在一定的联系38】,蜜罐的关系如图27所示。从图27中可以看出,物理蜜罐经常被用于交互程度较高的产品型蜜罐和研究型蜜罐,虚拟蜜罐仅仅提供模拟服务,在记录入侵者活动方面的能力差,所以常用于产品型蜜罐。15硕士学位论文第二章端口扫描和蜜罐技术PRODUCTIONRESEARCHLOWINTE穗GIJON黝HIGHINTERACTION图27蜜罐关系图222蜜罐的优缺点同任何网络安全工具一样,蜜罐做为一种新型的网络安全手段也有自身的优点和缺点。1HONEYPOT的优点1HONEYPOT收集的数据量少,但很有价值。HONEYPOT仅仅收集与其交互的信息,而与HONEYPOT的交互基本上都是怀有不良动机的行为,其目的在于扫描、攻击。同分析防火墙和入侵检测系统的日志记录相比,更容易分析HONEYPOT记录,且分析结果的误警和漏警程度更低。2蜜罐的功能强大。蜜罐提供一个欺骗系统或陷阱的组合,在蜜罐系统中存在IP欺骗、服务欺骗、文件欺骗、操作系统欺骗等。另外还可能在蜜罐中组织一定拓扑结构的网络。2HONEYPOT的缺点1存在风险。使用任何一种网络安全工具都存在风险,HONEYPOT也不例外。攻击者可能以HONEYPOT为跳板进而去影响其他系统。HONEYPOT的风险程度随着HONEYPOT的类型和对HONEYPOT的设置有所不同,HONEYPOT越简单风险就越底,交互度越低风险就越小。2有限的信息来源。HONEYPOT仅仅能够捕捉到与它直接交互的信息,而对与其它系统交互的信息一无所知。所以,假如攻击者已经识别出蜜罐,就有可能避开蜜罐而渗透到其它系统。23HONEYD蜜罐HONEYDHONEYPOTDAEMON是一个创建虚拟网络主机的后台程序,是一个低交互度的产品型蜜罐,但也可以用于应用研究。HONEYD能够同时以多个空闲IP地址的身份出现,做为一个受害者同攻击者交互。另外HONEYD还可以从应用层和TCPIP层同时模拟多种不同的操作系统。HONEYD具有如下特性1HONEYD并未解决将发送到蜜罐主机的数据全部引入到HONEYD虚拟主机16HTTP/INFO3DOUCOM/网络推广硕士学位论文第二章端口扫描和蜜罐技术这一问题,HONEYD并不检测发送到HONEYD主机的数据。由于虚拟蜜罐在网络系统中并不真正存在,所以若不通过其他手段解决数据接收问题,发送到虚拟蜜罐的数据最终要被丢弃。HONEYD并不是通过自己路由发送到虚拟蜜罐的数据,而是需要人为地正确配置网络。第一种方法是修改路由器的路由表,将所有虚拟蜜罐的路由入口设置为HONEYD主机。第二种方法就是利用ARP欺骗即】。假如没有配置路由表,路由器会使用ARP指令查询虚拟蜜罐的MAC地址。由于没有响应的虚拟主机,让HONEYD主机利用自己的MAC地址去响应ARP请求。2不同操作系统的网络栈处理各不相同,这导致它们所发送的数据包具有各自的特点,HONEYD模拟操作系统的TCPIP协议栈,使HONEYD蜜罐虚拟主机有自己的“个性”。HONEYD在响应ARP、ICMP、TCP和UDP数据报时,修改IP首部的IP地址、TTL、分片标志和IP标识字段,同时对TCP数据包也修改TCP首部的控制字段、初始序列号和窗口大小字段,使得每个发送出去的数据包符合指纹识别软件预期的操作系统特性。HONEYD利用NMAP指纹库做为TCP连接和UDP连接个性化的参考,利用XPROB2的指纹库做为ICMP连接个性化的参考。3HONEYD不仅能模拟TCPIP协议栈,而且能够模拟端口及服务。HONEYD可以模拟从0到65535的任何一个TCP或UDP端口。HONEYD为每个端口设置状态,并做出响应的简单处理方法,如图28所示。但简单地给予端口连接响应并不能从根本上迷惑入侵者,HONEYD支持为每个开放端口提供PERL或UNIXSHELL脚本代码对外提供模拟应用或网络通信服务。端口类型端口状态HONEYD处理方法TCPOPEN默认响应S1FNACK数据报,连接行为记录于日志,屏幕显示“CONNECTIONESTABLISHED”BLOCK无响应,企图连接行为记录于日志文件RESET响应RSTLACK数据报,“CONNECTIONCLOSED”显示于屏幕并记录于日志UDPOPEN无响应,记录连接BLOCK无响应,丢弃数据报,不做日志记录RESET响应ICMP差错报文ICMPOPEN默认响应相关ICMP报文BLOCK丢弃报文,不做响应图28HONEYD端口设置及响应4HONEYD支持创建一个完整的虚拟网络拓扑结构,在网络拓扑结构中存在17硕士学位论文第二章端口扫描和蜜罐技术子网和路由器。HONEYD可以模拟不同品牌和类型的路由器,网络连接也有时延和丢包现象。当使用TRACEROUTE、PATHPING等工具进行网路影射时,网络流的表现与配置的路由器及网络结构一致。通常情况下,HONEYD虚拟路由拓扑是一个树形结构,该树以数据包进入虚拟网络拓扑的入口作为树根。树的每个内部节点代表一个路由器,每条边代表一个有时延和丢包现象的链路,树的终端节点与网络上的主机节点相对应。HONEYD架构支持平行共存的多个网络入DWINDOWS版本的HONEYD仅限于有一个入口和一个出口的有根树网络拓扑。接收数据包的时候,系统会找到合适的入口路由,从根部开始,周游路由树,直到找到包含数据包目标P地址的节点。每条网络连路上的丢包率和时延会被累积计算以确定一个包是否该被丢弃、该被推迟多长时间后再传递等。当数据包路由途中经过一个路由器时,HONEYD框架也会消耗该包的TTL。当一个包的TTL变为0的时候,该包会被丢弃,系统会发送一个ICMP的超时消息,该消息会包含使该包TTL减到0的路由器的IP地址。HONEYD的软件架构【4L】由几个组件构成一个配置数据库、一个中央包分发器、协议处理器、一个特征引擎以及一个可选的路由器组件,如图29所示。NETWORKJL1RROUTERONFIGURATIONPERSONALITYPERSONALITYJ,山_EN百NE一II一IPACKETDISPATCHER丁。卜。ROUTERJLJL。,ICMPTCPUDP上一SERVICES一一图29HONEYD系统结构图经过ARP欺骗或路由器人为设置进入到HONEYD的数据包首先被中央包分配器PACKETDISPATCHER处理。PACKETDISPATCHER检查IP包的长度并确认包的校验和。HONEYD仅仅处理3种INTERNET协议TCP、UDP和ICMP,其他协议的包被日志记录后丢弃。在处理数据包之前,PACKETDISPATCHER查询配置数据库18HTTP/INFO3DOUCOM/网络推广硕士学位论文第二章端口扫描和蜜罐技术以找到一个与目的IP相符合的虚拟主机模板,如果不存在指定的虚拟主机,一个默认的模板将被使用。结合模板配置,包和相应的配置将被分发给指定的协议处理器。ICMP协议处理器支持大多数ICMP请求。在默认情况下,所有的HONEYPOT支

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论