• 13.03 MB
  • 2022-06-16 12:40:08 发布

基于采集器和暗网环境的高交互动态蜜场

  • 59页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
隶。轫大·粤硕士学位论文万方数据基于采集器和暗网环境的高交互动态蜜场 万方数据Hie.hInteractiveDynamicHoneyFarmBasedontheCollectorandDarknetEnvironmentAThesisSubmittedtoSoutheastUniversityFortheAcademicDegreeofMasterofEngineeringByGongHaoSupervisedbyDingWeiProfessorDepartmentofComputerScienceandEngineeringSoutheastUniversityApril2014 万方数据东南大学学位论文独创性声明本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得东南大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。研究生签名:盟日期:兰!!复:乡:.f东南大学学位论文使用授权声明东南大学、中国科学技术信息研究所、国家图书馆有权保留本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布(包括以电子信息形式刊登)论文的全部内容或中、英文摘要等部分内容。论文的公布(包括以电子信息形式刊登)授权东南大学研究生院办理。研究生签名:鲤导师签名: 万方数据摘要基于采集器和暗网环境的高交互动态蜜场本论文的研究和开发工作是基于CERNET华东(北)网络中心的环境,设计并实现了NorthWind系统。该系统是一个基于采集器和暗网环境的高交互动态蜜场。它可以在不改变任何路由和网络配置的情况下,基于采集器和重定向技术,利用大规模接入网中未使用的地址碎片构造的暗网环境实现了一个高交互的虚拟蜜场系统,并对同时获得的IBR(InternetBackgroundRadiation)流量进行统计和保存。论文的主要研究点包括对IBR流量的分析、利用采集器和暗网环境构造高交互蜜场的可行性分析以及构造这类蜜场系统的关键技术研究,最后是系统的实现和功能测试。本文首先讨论了防火墙等被动防御型技术在面对未知威胁时的不足,接着对蜜罐技术和暗网系统的原理、发展起源和现状进行了介绍。其次,本文利用已有算法对CERNET江苏省网边界实测数据中的背景辐射流量的构成和特性进行了分析,发现这些IBR流量中存在大量的扫描流量,它们可以成为蜜罐所需的恶意流量的来源。再次,本文探讨了开发一个位于接入网络边界、基于采集器和暗网环境构造的高交互蜜场系统的难点和可行性,包括对可用暗网空间的获取、在非对称路由条件下报文交互回路的构建等问题。在此基础上,基于虚拟机环境,设计实现了一个高交互的蜜场系统NorthWind,具体工作包括蜜场环境配置、虚拟环境构建和基于NAT原理进行的报文重定向机制的管理,以使得用有限的蜜罐资源支持一个大范围的暗网地址交互成为可能。最后,本文对NorthWind系统的具体实现,各模块的关键数据结构,逻辑流程进行了描述,同时对功能进行了测试。关键词:蜜罐,暗网,重定向,网络安全 万方数据AbstractHi曲InteractiveDynamicHoneyFarmBasedonthe胁伍CCollectorandDarknetEnvironmentWiththehelpoftheenvironmentofCERNETeastem(north)Chinacenter,thisthesisdevelopedahoneyfarmcalledNorthWindsystem.Itisahighinteractiondynamichoneyfarmbasedonatrafficcollectorandadarknet.Usingthetrafficcollectorandaredirectiontechnology,wedevelopedavirtualhoneyfarmleveragingafragmentofunusedaddressesinalarge.scaleaccessnetwork.Thissystemrequiresnochangeroutingandnetworkconfigurations.Atthesametime,thesystemobtainsandstoresIBRtrafficforstatisticalanalysis.ThemaincontentofthisthesisaretheanalysisofIBRtraffic,thefeasibilityanalysisofusingthetrafficcollectoranddarknetenvironmenttoconstructahighinteractionhoneyfarm,thekeytechnologyofthiskindofhoneyfarm,therealizationofthesystemandthefunctiontest.Firstly,thisthesisdiscussesthelimitationofpassivedefensivetechnologysuchasfil-ewall,andintroducestheprinciple,ongin,developmentandpresentsituationofhoneypottechnologyanddarknetsystem.Secondly,thethesisanalyzestheIBRtra伍cwhichWascapturedatthenetworkboundaryofCERNETJiangsuprovince.AlargeamountofscanningtrafficWasfoundintheIBRtraffic,whichWasunwantedtrafficbutusefulforthehoneyfarm.Thirdly,thethesisdiscussesthedifficultyandfeasibilityofahoneyfarmsystemwhichisdeployedattheboundaryofaccessnetworkandbasedonthetrafhccollectoranddarknetenvironment,includinghowtoobtaindarknetaddressesandconstructtheinteractivecircuitundertheconditionofasymmetricrouting.Then,basedonthevirtualmachineenvironment,thethesisdesignedandrealizedahighinteractionhoneyfarmsystem----NorthWind,includinghowtoconfigurehoneyfarmenvironmentandmanagethepacketredirectionmechanismusingtheprincipleofNAT,whichenablesthehoneyfarm,whichhaslimitedIPresources,tosupportawiderangeofdarknetaddresses.Finally,sometechniquedetailsinrealizationoftheNorthWindsystemarediscussed,includingkeydatastructure,thelogicalprocessofeachmodule,aswellasthefunctiontest.keyword:honeypot,darknet,redirection,NetworkSecurityII 万方数据目录摘要⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯IAbstract⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯II目录⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯III第一章绪论⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯11.1弓l言⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。11.2网络背景辐射流量(IBR】⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯21.3蜜罐系统⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯31.4论文的研究内容与目标⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯41.5论文结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.S第二章蜜罐与暗网⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.62.1蜜罐⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一62.1.1蜜罐技术的起源与发展⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯62.1.2蜜罐的关键技术研究⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。72.1.3存在的问题⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.9Z.2珏音网⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。102-3本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一11第三章IBR流量的分析⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯123.1IBR流量的获取⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯123.2实验结果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。133.3实验结果分析⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。143.4IBR流量与蜜罐流量⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯163.S本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。16第四章基于采集器和暗网环境构造蜜场的可行性⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。174.1暗网地址空间的获取⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯174.1.1暗网报文的捕获⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯184.1.2暗网报文的分析⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯194。2交互回路的构建⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯204.3本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.22第五章报文重定向相关问题研究⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯23S.1报文的重定向机制⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯235.2报文校验和重计算⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯255.3本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..27第六章NorthWind系统的设计与实现⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯286.1蜜罐的配置和网络环境的虚拟⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯286.2报文传输格式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。306.3控制系统⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯-306.3.1保存与统计进程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯316.3.2过滤与会话进程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯336.3.3WEB管理模块⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯376-3.4关键数据结构说明⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯386.3.5主要函数说明⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.39III 万方数据目录6.4本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.40第七章NorthWind系统测试⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯417.1统计与保存模块⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯417.2会话与过滤模块⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯427.3网页管理端⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯4S7.4本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。46第八章总结与展望⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯478.1总结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯478.2展望⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..47致谢⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯49参考文献⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯50 万方数据第一章绪论1.1引言随着时代的发展,互联网越来越深刻地改变着人们的生活。人们的工作和生活越来越多地依赖互联网和相关的产品。据工信部的统计,截止2013年,中国网民数量已达到6.18亿人n1,2013年全年网络零售交易额达N1.5万亿元之多,并预计2015年,甚至可以超过3万亿元。互联网不仅覆盖人群广,而且影响程度深,已经渗透到人们生活的方方面面,而且依然在不断得为人们的生活提供更多的快捷和便利。但是互联网在带给人们无尽便利的同时,也随之带来了巨大的安全问题,缓冲区溢出攻击,SOL注入攻击,Web木马攻击,跨站攻击,新的技术、业务在带来新的体验的同时,也带来了更多的安全风险。根据CNCERT/CC发布的<(2013我国互联网网络安全态势综述》描述。2013年,境外有3.1万台主机通过植入后门对境内6.1万个网站实施远程控制,所控制的境内网站数量相较2012年大幅增长62.1%。在木马僵尸网络方面,境内有1090万余台主机被境外2.9万余个控制服务器控制。而在网络钓鱼攻击方面,同样有3823个境外IP地址承载29966个针对我国境内网站的仿冒页面,分别较2012年增长54.3%和27.8%。从承载的钓鱼页面数量看,仅仅美国就有2043台主机承载12573个钓鱼页面乜1。为了应对越来越复杂的网络安全形势,一系列的关于网络安全的技术相继发展起来。典型的安全技术有:(1)入侵检测系统(IDS)口1IDS技术,依赖于既有的安全策略,对网络和系统的运行状况进行监视,以对攻击企图,攻击行为,攻击结果进行发现,以保证网络系统资源的机密性,完整性和可用性。(2)防火墙H1防火墙指的是一个由软件和硬件设备组合而成,在内部网和外部网之间,专用网与公共网之间的界面上构造的保护屏障,在外部网络与内部网络之间建立起一个安全网关(SecurityGateway),从而保护内部网免受非法用户的侵入。(3)身份验证崎1身份验证又称“验证”、“鉴权”,是指通过一定的手段,完成对用户身份的确认。身份验证的方法有很多,基本上可分为:基于共享密钥的身份验证、基于生物学特征的身份验证和基于公开密钥加密算法的身份验证。可以看到,对于传统的安全技术,多是依赖于既有的经验,或者是基于先验的数学理论而提出来的。但是,首先,基于经验的安全技术手段,不能很好的应对未知的安全威胁;其次,在这些安全技术的实现过程中,也不可避免的引入一些安全漏洞,例如2013年4月曝出的有关于OpenSSL的漏洞,就对网络安全造成了巨大的影响;最重要的是,这 万方数据东南大学硕士学位论文些安全技术都是被动防御型的安全技术,不能主动的去发现新漏洞,应对未知的威胁,这也造成了在安全领域的一个不对称,就如文献[6]所说,安全防护人员需要对系统的方方面面进行保护,而攻击者只需要抓住其中的一个漏洞,就可以对系统实现攻击。基于这个需求,也促成了蜜罐技术的诞生和发展。而另一方面,就如文献[7]所说的,包括IDS在内的安全技术,都是对网络的微观进行观察的技术,并不能对网络的宏观现象进行观察。于是,包括caida在内的组织,利用未分配的IP地址段,构建了暗网系统哺1。这些暗网系统可以获得对网络安全很有意义的IBR(IntemetBackgroundRadiation)报文。下节将对IBR相关概念,进行一个简单的介绍。1.2网络背景辐射流量{IBR}暗地址是指全球可路由且未使用的Ⅲ地址。暗地址空间中没有活跃用户,因此发往暗地址的流量被认为是异常的。这部分流量被称为背景辐射流量IBR。背景辐射流量通常由蠕虫传播、DDoS攻击、伪装源地址类扫描或DDoS攻击的backscaRer、错误配置等造成。现有的研究表明可以通过研究IBR流量来发现、追踪网络威胁。这类监测暗地址空间的系统有蛐et【101、blackholel9]、networktelescope[111、Intemetmotionsensor[12】以及networksinks【l2j等。图1—1所示的是典型的蠕虫在传播过程中,所产生的IBR流量的形式。蠕虫在传播过程中,随机生成IP地址作为目标,并向这个目标地址发送蠕虫报文,希望其中存在一个易受感染的对象I引。图1-1IBR流量产生形式但就如文献【15】所说,传统的暗网系统构建,需要大量的未分配的IP地址,如caida的networktelescope使用了256个B的IPV4地址。这样的工作条件往往只有欧美等互联网技术发展较早,有大量IP资源的国家才可以施用。而在中国等IP资源匮乏的国家,并没有布置大规模暗网的条件。2 万方数据第一章绪论为此,一方面文献[16】提出利用军队,铁路等不与外界交互的网络的IP地址来捕获IBR流量,另一方面文献【17】[18】提出了灰网的概念,利用使用中的IP地址和未使用中的口地址构成的混合的Ⅲ地址空间,来捕获IBR报文的技术。究其根本,前述方法都是利用已分配的P地址空间中未使用的P地址,来捕获IBR报文。1-3蜜罐系统对于蜜罐系统来说,如何获取恶意流量,是一个首要的问题。在传统的蜜罐/蜜网结构中,往往是一个IP地址对应着一个蜜罐/蜜网,蜜罐被击中的概率比较低。于是在Spitzner的倡导下,成立了一个旨在推动分布式蜜罐/蜜网的组织Honeynet,它希望在全世界的各个地区部署蜜网节点,然后将所捕获的恶意数据,汇总起来,以供安全人员进行分析研究【l引。在中国,同样有诸葛建伟主持开发的Matrix分布式蜜网系统,在全国31个省份,部署了超过50个节点I乃‘。典型的蜜网结构如图1—2所示:图卜2典型的蜜网结构在此之外,Spitzner还提出了一种利用未使用的口地址和未打开的端口,基于报文重定向的方法,将恶意流量从正常的业务系统中导入后端蜜场的方法。但是这种方法一是会对正常的业务系统造成影响,二是实现复杂,部署和管理都较为困剌211。就如上文所描述的,分布式的蜜罐/蜜网系统,需要有在大范围内部署设备的条件,并且需要耗费大量人力物力,而蜜场系统又部署困难,实现复杂。而在另一方面,暗网系统使用了大量的IP地址,例如caida的networktelescope使用了256个B的Pv4地址,流向暗网的IBR流量成分中包含大量的蜜罐系统需要的流量,如扫描等。因此本论文希望将二者结合起来,在构造并利用暗网捕获IBR流量的同3 万方数据东南大学硕士学位论文时,将其中可能被蜜罐利用的流量引入蜜罐系统。这样,IBR流量的统计分析和蜜罐系统的构造是本学位论文需要完成的核心工作,其中后者更具难度和挑战性。在CEP,NET江苏省网络边界,在国家973和985相关项目的支持下,装备有一个高速网络报文采集系统。在该采集器的支持下,我们可以对从CER2qET主干到江苏省网的报文进行实时的捕捉。该高速网络报文采集系统是在一个叫WATCHER瞳妇的采集原型系统的基础上开发而成,属于IPTAS(IPTrace.AmalysisSystem)系统的一部分。该采集系统能在一段连续时间内,以低丢包率完成对指定长度的双向全部IP报文进行完全捕捉呦1,并将报文实时的传送到后端处理机中。在本论文的研究工作中,采集器用于捕获指定暗网的流量。1.4论文的研究内容与目标本文的研究目标是在不改变任何网络配置的条件下,基于采集器和重定向技术,利用大规模接入网中未使用的地址碎片构造的暗网环境,实现一个高交互的虚拟蜜场系统,并对同时获得的IBR流量进行统计分析和定制保存。为此,本文将主要围绕以下几个方面进行研究。1)基于采集器的暗网环境的构建本系统利用CERNET江苏省网边界的网络环境,在不更改路由配置的情况下,利用采集器构建一个虚拟环境,使得发往暗网的流量,可以为本系统所捕获。将所捕获的报文,依据判断机制,对其中的有进一步引诱价值的报文,利用重定向技术,引入蜜罐中,以得到真实的,自然的响应。2)基于采集器构造蜜场的关键问题由于暗网地址的规模远远大于物理蜜罐数量,如何对暗网流量,特别是其中的攻击报文以及蜜罐做出的响应报文进行管理,是本系统的另一个重要研究内容。主要工作包括:1.IBR流量过滤:IBR流量的主要组成部分是由DDOS攻击的反射流量以及黑客的扫描流量构成。在对其进行统计的基础上,设计适当的算法对向蜜罐转发的报文进行过滤,以减轻后端蜜罐的工作压力。2.重定向:由于暗网地址远大于蜜罐数量,为得到蜜罐对这些报文自然的响应,需要对蜜罐的响应报文进行适当的地址映射。3)系统结构的设计与实现本系统依赖于现有的网络环境,利用省网边界采集器所得来的数据作为数据源,采用基于虚拟机的真实操作系统作为蜜罐。并前置一个透明的控制系统,以此来收集和管理暗网流量。并通过报文重定向技术,利用前置的控制系统,对攻击报文和响应报文进行记录和进一步分析。4)系统的测试与结果的分析4 万方数据第一章绪论对系统功能和效率进行有效,合理的测试,以及对暗网侦听结果,蜜罐交互报文的特征等进行分析,也是本文研究的重要内容。包括对系统是否可以有效完整的记录,转发,响应相应的报文的测试。1.5论文结构本文一共分为8个章节,从系统相关技术的发展,系统本身结构,实现方法,测试结果等对系统进行了全面详尽的描述。第一章介绍了系统研究的背景,提出了一个将暗网技术和蜜罐技术相结合的方法,以此来进一步挖掘暗网所采集报文的价值,以及为蜜罐找到更多的恶意流量。第二章介绍了蜜罐以及暗网的相关技术,发展现状,以及一些使用和部署情况。第三章对IBR流量进行了分析,包括IBR流量的构成和一些特点。第四章介网络拓扑环境,获取暗网地址的原理,回路构造的机理等。第五章至第七章分别介绍了NorthWind系统的关键技术研究,系统的实现,测试第八章对整篇论文进行了总结。5 万方数据东南大学硕士学位论文第二章蜜罐与暗网蜜罐是网络防御方为了改变网络攻防博弈不对称局面而引入的一种主动防御技术,通过部署没有业务用图的安全资源,诱骗攻击者对其进行非法使用,从而对攻击行为进行捕获和分析,以了解攻击工具与方法,推测攻击意图和动机∞1。暗网地址是指全球可路由且未使用的口地址。暗地址空间中没有活跃用户,因此发往暗地址的流量被认为是异常的。背景辐射流量通常由蠕虫传播、DDoS攻击、伪装源地址类扫描或DDoS攻击的backscatter、错误配置等造成1321。2.1蜜罐2.1.1蜜罐技术的起源与发展蜜罐技术的雏形最早见于1988年,CilffordStoll的小说{TheCuckoo’SEgg},书中描写了一个公司的网络管理员,如何利用蜜罐技术追踪破获了一宗商业间谍案乜4|。而在其后的一年,B订lDheswick写给了安全界一篇论文{AnEveningWithBerferd}中,论文中第一次描述了一个希望被黑掉的系统,这也是第一个被明确描述的真正蜜罐。其后,随着网络越来越普及,网络安全形势也越来越复杂,原有的一些安全措施如防火墙,入侵检测系统并不能完全涵盖安全的需求,一个新型的安全工具亟待产生。在1998年,著名计算机安全专家Cohen开发了一款专门欺骗黑客的工具,也是第一个公开的蜜罐解决方案DTK(DeceptionToolkit)瞵1,该工具模拟了当时已知的Unix漏洞,用以吸引黑客进行攻击,并且同时,DTK会记录攻击者的行为,动作,以及攻击者所透露的特征信息,并且将这些信息保存至系统日志,用以后续的分析和研究。其后蜜罐吸引了安全研究人员的高度关注,蜜罐技术进入了一段相当迅速的发展时期,一批开源的蜜罐工具相继出现,如著名的低交互蜜罐Honeyd,以及在Honeyd上发展起来的Nepenthesml等,以及一些商业的蜜罐产品,如KFSensor,SymantecDecoyServer竺[6]寸。早起发展的蜜罐技术主要为低交互类型的蜜罐,低交互蜜罐一般伪装成已知的有漏洞的网络服务,对攻击链接做出响应,从而对攻击者的行为,动作等做出监视和记录。因为所模拟的服务皆为安全人员所制作和伪装,可以在软件代码层面上对攻击进行监控和记录,所以可以得到攻击者较为详细的动作和行为。但是于此同时,对于每一个想监视的服务,都需要开发相应的模拟服务,工程量浩瀚,这也随之造成了这种类型的蜜罐交互能力低,并且同时不能对未知的漏洞进行监测,而且交互信息过于单一,容易为入侵者所发觉的弱点,进而限制了传统低交互蜜罐的作用和功能。为了克服传统低交互蜜罐存在的种种困难,1999年,在Spitzner等安全研究人员成立非盈利性研究组织TheHoneynetProjectn9|,以高交互蜜罐为依托的蜜网技术在Honeynet的倡导下随之发展起来。蜜网系统(Honeynet)由透明蜜网网关,多个多种蜜罐6 万方数据第二章蜜罐与暗网系统,加上防火墙,入侵检测系统,系统行为记录,自动报警与数据分析等辅助机制组成瞳7。。在这样的蜜网系统中混合了使用真实的操作系统的高交互蜜罐和模拟服务构建的低交互蜜罐,可以达到有选择性的或者为攻击者提供更充分的交互环境,或者对攻击行为进行深层次的监控的能力,同时也更难为攻击者所识别,使得安全人员可以在一个高度可控的环境中,监视攻击行为,从而去了解攻击方的工具,方法和动机。同时,为了解决传统蜜罐/蜜网技术存在的监视范围过于狭小的问题,分布式蜜罐/蜜网又随之发展起来。2003年,TheHoneynetProject第一次提出了在互联网多个位置部署蜜罐/蜜网,再将多个蜜罐/蜜网所捕获的数据综合汇总分析的想法n9|。2005年,以这个思想为依托的Kanga分布式系统开发完成,再之后又有TGDN系统啪3,巴西分布式蜜罐系统嘲1,欧洲电信的leurre.Com啪1与中国的Matrix等分布式蜜罐系统∞¨引。但是这样的分布式蜜罐在取得重大成果的同时,又会消耗大量的IP地址,硬件设备,投入大量的人力和物力去维护。图2—1蜜场结构针对这个问题,2003年,Spitzner提出了一种新型的蜜罐系统部署模型一蜜场∞¨,如图2一l所示。基于蜜场技术概念实现的网络威胁预警与分析系统有Collapsar,PktemkinheIcarus等。2.1.2蜜罐的关键技术研究蜜罐系统本身不存在具有价值的业务或者服务,所以流入蜜罐中的流量,都可以认为是恶意的,不正常的流量。蜜罐系统的构建者本身希望能够以最小的代价,去捕捉到7 万方数据东南大学硕士学位论文尽可能多的流量,也就是使得,首先蜜罐系统能够尽可能地成为攻击者的目标,让这些攻击者对蜜罐系统进行攻击,这或者需要蜜罐系统本身处在互联网上相对易受攻击的位置,例如使得蜜罐处于美国国防部或者一些受瞩目的公司的IP地址段,或者使得蜜罐系统具有足够多的IP地址,以使得蜜罐系统更容易为攻击者所发现瞳7l。其次,在蜜罐已经成功得吸引到攻击者攻击之后,蜜罐系统的构建者希望尽可能详尽,确切的捕获这些攻击者攻击所进行的动作的原始数据,包括如网络连接记录,原始数据包,系统行为数据,恶意代码样本等。再次,在安全人员获得了攻击者的数据之后,希望能有效地分析出这些安全威胁的类型和根源,以了解攻击者的攻击方法和手段,如攻击了哪些端口,使用了哪些工具,喜欢在何时进行攻击,具体到端口,则是使用了何种方法对该端口对应的服务进程进行了攻击,利用了该进程的哪些漏洞等,从而对安全威胁态势进行感知。更进一步,是否可以分析出这些攻击的特征,为入侵检测系统提供更多的特征资源,以此来保护业务系统的安全。在此之外,由于蜜罐本身常常为了吸引攻击者而故意留下一些漏洞,所以存在很大的被攻击者攻陷的可能,在蜜罐被攻陷之后,如何保证该蜜罐不会成为一个跳板,从而从内部对其它系统进行攻击。以及如何高效率配置和管理蜜罐,从而降低蜜罐的使用维护成本,以及最后又如何对抗反蜜罐技术。这些问题都是蜜罐的构造者需要考虑的问题。针对蜜罐系统本身的目的和需求,在设计蜜罐系统之时,可以认为有以下几个关键技术是需要仔细考虑嵋1:一是构建怎样的欺骗环境,以完成对攻击者的引诱,这主要包括是构建以模拟服务为基础的低交互蜜罐,或者以真实系统为基础的高交互蜜罐。而更具体的,在确定以高交互蜜罐为基础以后,是使用蜜网结构或者蜜场结构等,亦或确定使用蜜网结构后,构建怎样的蜜网,是构建一个类似于Honeynet的包括蜜网网关,入侵检测系统,多种交互类型蜜罐,报警系统与行为分析,防火墙等系统组成的蜜网还是其它结构。欺骗环境的构建又往往会和捕获方法和技术结合在一起,构建什么样的欺骗环境就需要什么样的捕获技术,所拥有的捕获技术又往往限制了欺骗环境的构建。这些都需要根据用户本身的需求,所针对的安全目的,所面临的威胁,所拥有的资源,对人力,物力成本以及所可能获得的收益进行衡量,进而决定。二是如何对威胁行为,威胁数据进行捕获。在构建完欺骗环境后,可以认为已经可以对攻击者进行诱骗,已经拥有一个可控的环境,接着面临的问题是如何在这样一个可控的环境里,对这些威胁进行尽可能详实的捕获。传统的低交互蜜罐,由于使用的是模拟的服务,在模拟的服务本身的编写过程中,在软件层面即已经可以对攻击进行记录和监控,对行为和数据进行捕获对于低交互蜜罐来说是比较容易做到的事。而对于高交互蜜罐,由于本身使用的是真实操作系统,问题就变成了如何对既有的网络、软件和服务,进行监控的问题,而在任意一个系统中,如何详实的了解其他进程到底在干什么,本身也是一个难点,也出现了依赖于线程注入技术等方法对进程进行监控的沙盒技术等。而8 万方数据第二章蜜罐与暗网在蜜罐中,由于面临的威胁主要来源于网络,于是就衍生出了包括透明蜜网网关,文件交叉监控,对文件系统本身的实时监控,对系统关键api调用进行记录,对系统日志进行记录等方法。尽管人们想出了种种方法,但是攻击者也往往会采取一些蜜罐对抗技术,有针对的对一些常见的蜜罐方法进行一些措施,如删除系统日志,绕过常见的api调用记录等方法。总而言之,对于与高交互蜜罐,对恶意行为进行捕获依然是设计的一个重点和难点。三是如何对所捕获的数据进行分析的问题。首先,需要将捕获的数据按一定的方式进行存储,并且希望存储的方式能够与后续的分析方式相契合,有利于分析工作的展开,例如Honeynet中,将捕获来的数据,汇总至关系型数据库中,并通过WallyeT_具u叫向外界的安全人员提供接口,以满足安全人员的广泛需求。在可以捕获到数据,并且可以高效的使用这些数据之后,如何有效的分析这些数据,成为了系统设计的一个重点,随之发展出了多种技术。包括实证分析,通过对数据的汇总,如蜜网体系内各个子系统的数据进行汇总,或者如分布式蜜罐/蜜网各个系统内的数据进行汇总,通过统计的方式,揭示出这些攻击行为的特性;同时也发展出了可视化分析的方式,以2d或者3d的方式,为安全人员了解安全态势提供了一个直观的观察方式;又例如,采用PCA方法,聚类方法,归因分析等方法,都是希望可以从这些数据中尽可能地找到攻击的特征,或者是基于各种攻击的时序相似性的方法,也是希望能从中找到攻击的模式,此外还有依赖于安全知识库的关联分析,分析人员希望能够尽可能的还原攻击的场景等。2.1.3存在的问题蜜罐技术本身是随着黑客的攻击技术的变化而不断演化的,本身并不像加密解密技术,安全认证技术等存在较强的理论性,因而也并没有通用的适应于所有需求的蜜罐,更加也就没有一些通用规范。蜜罐工具的推出,往往和当前的需求定位,功能定位紧密相关,更多的依赖于一些对抗的策略和技巧来进行设计№1。对于当前蜜罐体系,主要存在以下几个主要问题:1.可控性和仿真性之间的矛盾。低交互蜜罐所采用的基于模拟服务的方法,由于对攻击者攻击行为的监控,可以直接在软件层面上进行实现,对攻击行为的每一步都可以进行细致的观察,相对于高交互蜜罐,可以更细致,更详尽的获得攻击者的攻击方法,攻击行为,但是同时,由于原理性的原因,不可避免的会有仿真性较低,不能对未知漏洞进行监控,交互程度较低等问题。而采用真实操作系统作为蜜罐,又会遇到结构复杂,难以对攻击行为进行缜密观察的困难。在蜜网体系中,如何平衡好两者的关系,是蜜罐/蜜网设计的一个重点。所以,在一些蜜网设计的时,往往也将这两种蜜罐混合在一起,以在可控性和仿真性上都取得平衡№1。2.现有蜜罐往往是应对大范围,普遍性的网络问题,而对特定目标性的持续性的安全攻击,并没有一个很好的解决方法。对于这种威胁,往往需要高度定制,高度欺骗性9 万方数据东南大学硕士学位论文。的蜜罐,需要安全人员对所保护的目标有足够的了解,并且对攻击者的攻击意图也比较了然,而现今的蜜罐技术又往往是针对普遍传播的蠕虫,来自黑客扫描之后的攻击,Web木马等威胁,对专门高度定制化的威胁应对并不是非常充分嘲。3.蜜罐属于一种主动防御的技术。首先要有防御的目标,其次要在围绕这个目标打造一个主动防御的措施。而对于快速发展的新平台,如Android,lOS等,本身并不和传统的结构相同,PC上的原有技术和思想,并不能直接的部署在新平台上,需要安全人员对这些平台本身的结构,以及所面临的威胁,重新进行研究和开发,所以总体来说,蜜罐技术相对于攻击技术依然具有一定的滞后性哺1。4.对于没有条件部署大规模分布式蜜罐/蜜网的研究人员,以及由此而来的恶意流量不足,蜜网部署成本过高等问题。传统的蜜网结构,一个IP地址往往对应一个蜜罐/蜜网,而在成片的地址,往往是同时被一个攻击者所扫描,然后被自动化或手动的方法所攻击,攻击方法多是类似,这就对安全设备产生了极大的浪费。如何在有限的条件下,获取足够多的恶意流量,并且降低蜜网部署的成本,是本文的一个研究重点。2.2暗网传统的网络安全技术,包括入侵检测系统,防火墙等,都是对微观的网络安全状况进行观察的一种手段。并不能对宏观的网络状况,进行有效的了解。于是Simon等人就提出了利用网络中未分配或者未使用的IP地址,来对网络进行监听的想法口1。因此,在暗网地址空间中是没有活跃主机的,任何流入暗网空间的报文都是不正常的报文,这些主要报文主要由以下三个方面组成:1.是网络的配置错误;2.其他研究需求产生的报文;3.由于恶意的网络行为而产生的报文。这些报文都是纯粹的IBR报文。于是Cooke等人提出,可以利用这些IBR报文,来发现、追踪网络威胁【9】o理想的暗网地址空间,是一段现在没有被分配使用,最好历史上也从未被分配使用的全球可路由的口地址空间。用于构造暗网系统的地址段大小,并没有理论的限制,即使只有一个口地址,暗网系统也是可以工作的。但是越大的暗网地址空间,可以使得研究人员越好的观察到网络上发生的状况。所以一般希望暗网空间是越大越好。例如,caida的networktelescope就使用了一个/8的IPv4地址,Simon在对暗网进行研究时,使用了一个/24的P地址空间。对于暗网流量的采集,Simon等人提出将暗网流量引入一个可控的VLAN,利用嗅探器(sniffer),对进入VLAN的流量进行监听口1,以此来捕获IBR报文。同时,还存在利用采集器和对己知的暗网的了解,在ISP主干道对暗网报文进行捕获的实现方法。同时,Simon等人还利用IPS,对流入暗网的TCPSYN报文,响应TCPSYNACK报文,以完成TCP三次握手,建立起TCP连接,从而对流入的恶意报文,进行简单的引诱,以捕获更多的有价值的数据。10 万方数据第二章蜜罐与暗网2-3本章小结本章首先介绍了蜜罐和暗网的概念,接着对蜜罐技术的起源和发展情况,蜜罐系统的关键技术进行了介绍,同时对暗网的原理,暗网产生的原由,暗网内的流量性质进行了介绍。蜜罐本质是一个欺骗工具,蜜罐的作者通过将蜜罐伪装成带有漏洞的普通的计算机,来引诱攻击者对其进行攻击,并且在攻击者进行攻击的过程中对其进行监控,从而达到通过攻击过程来了解攻击者攻击方法和攻击手段,并进而对真实的业务系统进行保护的目的。暗网系统是一种利用全球可路由的,但未分配使用的IP地址,对宏观的网络状况进行观察的系统。流入暗网系统的报文都是IBR报文,IBR报文是一种不正常的报文,主要由黑客的扫描行为,DDOS攻击的发射流量,错误的路由配置等因素产生。研究人员可以通过对IBR报文的分析,来发现、追踪网络威胁。 万方数据东南大学硕:{=学位论文第三章IBR流量的分析背景辐射流量是网络中的一种非正常的流量,多是由黑客的扫描行为,DDOS的反射流量,错误的网络配置产生的。虽然暗网中的流量全部是背景辐射流量,但不是背景流量的全部。由于产生IBR流量的行为在选择地址时往往具有随机性,所以在广泛的网络地址空间中,都会接收到IBR报文。随着时间的推移,如果固定的暗网地址被攻击者掌握,将不会让其产生的IBR流量进入这些空间。因此,在口地址相对紧张的地区,开始有人尝试研究利用其它方式捕获正常使用地址空间中的IBR流量。在CERNET江苏省的网络边界,该省网的IP地址总量接近5000个/24地址。管理该网络的ISP会定期以1/4流抽样的方式在接入点采集报文头部,并以IPTrace形式保存Il引。本文利用Miao【l5】等人提出的灰网的概念,从已保存的报文中,分离出IBR报文,并对其进行分析。分析的目的在于了解所关注的运行网络中的IBR流量情况,查看其中是否具有足够数量的可以被蜜罐系统使用的流量。3.1IBR流量的获取在TCP/IP协议中,IP层在转发报文时仅依赖目的地址,而不检查源地址。通信对端则总是假设IP报文的源地址是真实的,这使得其在回复报文时,有可能使用的是错误的目的地址,这是产生网络IBR流量的原因之一。伪造源地址的活动,会使得网络流量具有不对称性。基于这种不对称性,我们就可以从原始流量中分离出IBR流量。要分离出IBR流量,首先就要定义出灰地址空间。设g为接入网内部的一个IP地址,若其在时间段T中,不发送流量、仅接收流量,则称g为灰地址。此外,在实际网络中存在一部分地址并没有实际的出流量,而是由接入网的边界防火墙代替做出应答的情况,则实际上该类地址并不存在实际活跃的行为。即,设r为接入网内部的一个IP地址,若其在时间段T内,仅发送TCPRST+ACK报文,将此类地址也纳入灰空问的范围。由于灰空间中并没有活跃用户,因此称向灰空间发送报文的IP为可疑IP地址。称所有可疑IP地址组成的空间为可疑空间。可疑IP地址发送的流量并不全都是辐射流量,其中存在着部分正常交互的流量。称可疑空间发出的单向流为IBR流量。即,判定可疑IP发送的单向流为IBR流量,双向流则为正常流量。称使用被动测量方法从CERNET江苏省网边界捕获的原始流量为Trace[in]和Trace[out],则从Trace中分离出IBR流量。的算法F可归结为以下4步。其中,Trace[in]指流入接入网的报文头集合,Trace[out]指流出接入网的报文头集合。由于并未拥有接入CERNET江苏省网的所有IP地址表,本算法使用近似的方法,统计该IP地址表所拥有的地址空间。(1)对于报文记录集合Trace[in]和Trace[out],根据通用流特征,组成五元组流(64秒超时),得到Flow[i]和Flow[out]。12 万方数据第三章IBR流量的分析(2)统计在Flow[out]的源地址中未出现,而在Flow[i]的宿地址中出现的地址,以此获得灰空间。(3)将Flow[in]中向灰空间发送流量的源IP地址判为可疑地址,归入可疑IP地址空间中。(4)过滤出Flow[in]中所有以可疑空间为源点的单向流,从Flow[out]中过滤出所有以可疑空间为宿点的单向流,匹配两个方向的流记录。若成功匹配,则生成双向流。若不能匹配,统计其中可疑空间发送的单向流,则其很有可能即为IBR流量。即:IBR=F(Trace[in,out])算法输入:报文记录集合Trace[in]和Trace[out]算法输出:背景辐射流量IBR。3.2实验结果分析数据来自IPTAS2008年到2011年四年,每年挑选一个小时的Trace作为本文的实验数据,见表3—1。表3-1实验数据集TraceIPcountDateTimem14:00:00~A1712262008.12.2015:00:0014:00:00~B2109152009一12-2015:oo:0014:00:00~C2465492010.11.1415:00:0014:00:00~D2954072011-11.1715:00:00如表3一l所示,IP地址的数量是动态变化的。如果仅从总量上分析,并不能实际反映变化情况。令IPi={第i年实际出现的地址)。实际中我们只统计4年共同出现的地址,即IP∞m=IP2008n口2009NIP20lon口20ll作为实验对象进行统计和分析。经实验统计得,共同出现的地址数为:IIP∞m1=166021。13 万方数据东南大学硕士学位论文图3-1IBR总流量变化趋势统计IP∞m在这4年所受的背景辐射总流量,如图3—1所示。我们可以发现在2008年到2009年,IBR流量基本无变化,但从2010年开始,IBR流量出现了剧烈的增长,相对于2009年,增长了约4倍,并在2011年继续增长了约3.4倍。这也反映出近年来,网络异常流量等出现迅速增长的趋势。3-3实验结果分析由于口i地址过多,我们将Ⅲi内的地址做如下处理ipIl洲=ipola&0xttttl000,即将前20位相同的口地址归入同一个统计单元。我们计算一个地址块内,每个存在的P地址平均所受到的辐射流量。这也意味着存在ip鹏w[i】与ipnewD】中实际所拥有地址数不相同的情况,但不影响实验观察结果。同时,为保证隐私,我们使用一个映射函数fm即将原IP地址在不更改顺序的情况下,映射为新的数字:Num=岛(P)(3.1)实验结果如图3.2所示。我们可以发现,不存在未收到IBR流量的地址块,而对于不同的ip一地址块,所受的IBR流量差别是很大的。平均受到IBR流量最多的是X.X.176.0/20地址块,每个P地址平均共受到2998个背景辐射流。而最少的为X.X.0.0/20地址块,平均只有3个背景辐射流。图3—22011年IBR流量空间平均分布14 万方数据第三章IBR流量的分析其中,Y轴表示所受到的平均背景辐射流数。图3.2x轴表示,/20地址经过fm印变换后得到的分布。图3.3是2008年到2011年四年间共同出现的P地址块的中每个IP地址平均所受到的背景辐射流数与该年数据中,所受到平均辐射最大的地址块的比值,即将每个地址块的平均所受辐射数按照最大地址块所受辐射值进行归一化。由图3—3可知,IBR流量的空间偏好是存在变化的,任意/20地址块所受平均辐射流量比例在这四年间是不相同的。同时,IBR流量也存在一定的聚集性,存在若干120地址块,在这四年中都接受到较高的IBR流量。其中,Y轴表示所受到平均辐射与最大平均辐射的比值。X轴表示,/20地址经过fm卸变换后得到的分布。流~“~”i数80Do,‘比r一2010例60.oo%.40DO%l一2∞9I‘ltl§i411J1-"--20.∞%Ljj羔置鞠k。以直⋯i—U.UU7口⋯⋯■⋯⋯●⋯⋯●⋯⋯⋯⋯⋯⋯⋯⋯■⋯⋯⋯■⋯⋯一;一=瓮导器兽罢譬苕署高暮未2晶蓦昌一一一一一一一一N图3-32008—2011年IBR流量空间分布比例本实验所有统计分析皆基于流。将IBR流量根据协议、TCP标记字段分为若干类,如TCPSYN单包流,TCPSYN+ACK单包流,UDP单包流,ICMP流等。则总量排在前三位的成分如表3—2所示。表3-2IBR流量组成成分比例Trace2008200920102011SYN+ACK(%)3.466.4377.8484.07SYN(%)78.6175.2615.976.65UDP单包(%)4.55.88l-998.4lS删(%)86.5787.5795.899.13从表3—2可得,TCPSYN单包流和TCPSYN+ACK单包流是构成mR流量的主要组成部分。而显然,TCPSYN+ACK单包流和TCPSYN单包流不是正常的TCP流量。在2008年和2009年,IBR流量的主要组成部分为SYN单包流,而在2010年和2011年,主要组成部分转变为SYN+ACK单包流。我们猜测,在2008年和2009年,背景辐射的主要成分为扫描流量:从2010年开始,背景辐射的主要成分转变为反向散射流量。这可能意味着从2010年开始,DDoS攻击开始盛行。15 万方数据东南大学硕士学位论文对2011年数据中单包流进行分析,发现发送SYN+ACK量最大的一个口地址为X.X.237.32。这说明在观测时间T内,该网站受到了一定规模的DDoS攻击,并且此网站已被某著名搜索引擎列入黑名单中,说明该网站确实存在异常行为。本文算法有效滤出上述流量是该攻击的反向散射流量,属于是典型的IBR流量。产生的主要原因是因为在攻击服务器时,攻击源使用的是假源地址的TCPSYN报文,以此来消耗服务器资源。服务器在收到TCPSYN报文时,向假源地址回复TCPSYN+ACK报文。3。4IBR流量与蜜罐流量在前述章节,已经对IBR报文的构成和特性进行了详细的分析。构成IBR流量主要组成部分之一的TCPSYN报文,是黑客进行扫描活动的征兆。因为黑客在进行攻击活动时,并不能事先对目标区域的主机是否存活,目标端口是否打开进行判定,所以需要对所有目标发送报文进行探测。同时,由于黑客在进行攻击时,往往是对成片的区域进行扫描,以最大幅度的寻找到有漏洞的主机。3.5本章小结本章利用一种从接入网边界的原始流量中分离IBR流量的方法,并将该方法应用于CERNET江苏省网边界的原始流量。通过对2008年到2011年四年抽样的Trace进行分析可知,IBR流量具有普遍性,即每个/20地址块均收到了辐射流量。同时,这些辐射流量的组成比例虽然在不同时间段有所变化,但主要还是由TCPSYN报文,TCPRST报文组成。而TCPSYN恰好是黑客进行攻击活动的前兆。在后续章节,本文将继续描述,如何利用IBR流量的这个特性,将暗网和蜜罐有机的结合起来的思想和方法。16 万方数据第四章基于采集器和暗网环境构造蜜场的可行性根据上一章的讨论表明,对于混合在正常网络通信报文之中的IBR流量,可以利用灰网的思路来对其进行捕获。但是这种方法,仅适合事后分析,并不具有实时性。对于暗网系统,由于其内部并没有活跃的主机,所以发往暗网地址空间的报文天然是没有掺杂正常网络通信报文的IBR报文。这些IBR流量中存在相当数量的对蜜罐系统有价值的报文。于是,本文提出一种利用暗网系统进行IBR流量的捕获,同时将其中有进一步引诱价值的报文发往后端蜜罐的思路,并以此构造一个可以获取恶意流量的蜜场系统。为构造这个系统,需要解决几个可行性方面的问题,首先,如何获取可用的暗网地址空间;其次,在得到可用的暗网地址空间后,如何对流入暗网地址空间的报文进行捕获;最后,如何将这些暗网报文引入地址数量有限的蜜场系统并构造交互回路,以使得蜜场中蜜罐的响应报文可以顺利的返回原始发包者处。下面将分别讨论这几个问题。4.1暗网地址空间的获取暗网地址空间的获取是与路由信息紧密相关的。CERNET华东(北)网络中心是江苏省教育网的管理机构,负责管理CERNET主干道到江苏省的边界路由器,以及其所有下行路由器的静态路由配置。具体的网络环境配置情况,如图4—1所示。JSERNET内所有校园网通过华为12800路由器,经华为NE40主干路由器接入CERNET主干。.。。。糕一。’◇凇景,熹9募集器㈣南一鬻咻吣一~妒p秒匿●r手拓.霸∽.|一一"∞T江撇雌1,i舯职¨靴雠图 万方数据东南大学硕士学位论文在此背景下,本文提出一种暗网获取的方法,利用主干和接入路由器中静态路由表之差分析出可用的暗网地址,这是因为主干路由器的路由表为了获得更高的查找效率,一般会通过忽略相对较小的地址碎片,使路由表的条数更少。在实际中,具体的做法是:设A=边界路由器NE40E的下指路由表,Bi_华为128000路由器的某个下行接口的路由表,则可疑的可用暗网地址空间C为:c=彳一∑屡(4.1)f在实践中我们发现,地址空间C内的地址,并非一定是可用的暗网地址,因为存在该段地址已经被登记放弃使用,并已经在更高级的核心路由器上去除相关路由条目,但在边界路由器上出于减少路由条目的原因,并未将其从路由表中移除的情况。从而使得目标地址为该段地址的报文不能路由到边界路由器。对此,本文通过以下方法,从可疑地址空间C中提取出可用的暗网地址空间D。1.在指定时间段内,对流入路由器NE40E的报文进行监听,查看是否有目标地址为地址空间C的报文。2.同时,在边界路由器NE40E,对出方向的源地址为地址空间C的报文进行监听。3.从省网外,对地址空间C,发送测试报文,在路由器NE40E边界查看是否存在流入的报文。本文依赖上述方法,从路由表中分析得到4段口地址空间,结果如下:表4.1分析所得暗网空间地址IP地址段IP数量大小211.70.1lx.0/221024219.219.15x.O/221024219.219.15x.0/23512219.219.15x.0/24256最后,经过相关NIC确认,上述地址段是没有归属,未经其他单位使用的地址段。说明上述地址段是可路由的,不存在活跃主机的暗网地址空间。这段地址构成本文后继工作所使用的暗网空间。4.1.1暗网报文的捕获在得到可用的暗网地址空间后,本文利用位于CERNET江苏省网边界的高速报文采集系统,对从教育网主干道流入江苏省网,目的地址为上述暗网地址的报文进行捕获。该采集系统是在原Watcher采集系统的基础上开发而成,属于IPTAS系统的一部分。该采集系统能在一段连续时间内,以低丢包率完成对指定长度的双向全部IP报文进行捕捉,并向外提供实时的报文数据。至此,在入方向上,本文完成了对暗网地址空间的获取和对暗网报文的捕获。在下面的内容,将对从采集器捕获的暗网报文进行构成分析。18 万方数据第四章基于采集器和暗网环境的构造蜜场的可行性4.1.2暗网报文的分析本文在三个不同的时间段,利用上述分析所得暗网地址空间以及ISP所提供的一个符合暗网条件的C类的地址空间(211.87.}.0/24),对暗网报文进行捕获,并对所得到的报文进行测度分析。表4-2实验数据集序号时间地址空间大小20145.3日I3072下午3:30-4:3020145-4日23072下午3:30-4:3020145.5日33072下午3:30-4:301)对报文的总量和主体构成进行分析,结果如表4—3所示:表4-3暗网报文分析5月2日5月3日5月4日报文总数130156261505113767ICMP报文比例0.34%57.48%1.90%TCP报文比例87.80%33.47%84.82%UDP报文比例4.04%6.80%4.97%其它类型报文比例7.81%2.26%8.31%从表4—3中可以看到,在连续三天的同一时段内,报文总数变化较大。同时,不同类型报文比例也有很大差别,但总体来说,icmp和tcp类型报文所占比例较大,udp和其它类型报文比例较小且相对稳定。这和黑客的扫描报文和DDOS攻击的反射流量主要由ICMP报文和TCP报文构成的先验知识相符。2)对TCP报文的构成比例进行分析,结果如表44所示:表4-4TCP报文类型分析报文类型5月2日5月3日5月4日TCPSYNACK1.26%1.31%0.88%TCPSYN98.60%98.66%99.09%TCPRST0.13%0.02%0.03%TCPFIN0.OO%0.Oo%O.00%从表4-4中,可以看出,在这三个时间段内,主要都是TCPSYN报文为主,这说明在上述时间段内,黑客对暗网地址空间进行了广泛的扫描。表4.5给出了对5月2日扫19 万方数据东南大学硕士学位论文描的端口进行分析的结果。表4—5热点端口分析端口13514332280802380199850004458088others次数35889164417738768264716055525545713813361516748占比31.40%14.39%6.77%6.72%5.66%5.30%4.60964.00%3.34%3.16%14.66%从表4.5可以看出,黑客对端口的扫描主要集中在135端口,1433端口上,其中135端口是windows的远程调用端口,1433端口是SQLServer端口,都是高危端口。从以上分析可以看出,暗网报文主要由ICMP和TCP报文构成,而在TCP报文中,用于端口扫描的TCPSYN报文又占了报文总量的98%以上。说明暗网报文是可以作为蜜罐所需恶意流量的来源。至此,对于蜜罐网络环境的入方向通道论述完毕。4.2交互回路的构建一个可用的高交互蜜罐的网络环境,除了需要在入方向上有恶意流量进入,在出方向上,蜜罐的响应报文必须可以返回原始发包者处,即可以构成正常的交互。如果将暗网地址作为蜜罐地址使用,必须要解决交互的问题。在传统互联网中,是以目标网络地址为核心因素建立路由表的,一般情况下路由器在对报文进行转发时,并不会对其源地址进行检查。这一点是目前互联网体系结构中一个不完备的地方,也是很多网络安全问题的起因,典型的如DDoS攻击m1,中间人攻击H9。,DrDos攻击唧1等。对真实源地址相关问题的研究是互联网领域的一个研究热点,但不属于本学位论文讨论的领域。在本系统中,我们利用伪造源地址手段,完成暗网地址与网外主机的交互。即使用暗网中被扫描的地址对SYN报文进行响应,响应报文以常规方式进入网络到达扫描者主机,随后的交互以同样的方式进行,即蜜罐系统从采集器获得需要的入方向报文,响应报文以正常方式到达对方。我们设计了一个实验,对上述方案进行验证:实验目的:在采集器的支持下,用假冒暗网地址可以与网外地址进行正常TCP交互实验环境:处理机不能与Internet直接进行交互,需要向外转发服务器进行过渡。具体网络环境如图4—2所示Inte}net发送十怛Ⅲ⋯返回Internet向外转发服务器图4-2实验网络环境20》~匿舯≯一匿蔗 万方数据第四章基于采集器和暗网环境的构造蜜场的可行性实验方案:1.在江苏省网内搭建一个的HTTP服务器2.从省网外(IP地址为116.56.138.x)向暗网地址发送网页请求3.采集器捕获目标地址为暗网地址,源地址为该省网外IP地址的报文,并将其实时发往后端处理机。4.在处理机上,将所捕获的报文,源地址替换为本处理机地址,将宿地址替换为HTTP服务器地址,并将其发往该服务器,并监听从该服务器返回的报文。5.捕获从HTTP服务器返回的报文,将其源宿地址替换为原始地址,并将其通过向外转发服务器从省网内发出。6.在实验开始时,在省网外的发包主机处,打开wireshark,对整个交互过程进行监听。实验结果如下:No.TimeSourceDestinationProtocolLengthInfoⅡl帅Z..-160,。2毁,1ZU.g,.戳。114116.均.138{懿TCP铀h1:tp>blL帅l吖N,ACK5eq=OACK=iwln:b))曲Len=o图4-3HTTP传输报文图4-4ICMP超时报文图4—5释放连接报文从图4.3可以看出,双方在报文顺序111961(以下简称61),62,63处完成了TCP三次握手。随后在64号报文处,省网外主机向http)]艮务器发送了对网页hello.php的H1]瞪GET请求,并在65号报文处,得到了服务器的404notfound的响应。在图4—5,双方以TCPFIN报文释放连接。同时,可以从图4-4的7l,72号报文处,出现两个ICMP超时报文(还有其他ICMP超时报文,在此未列出),是由于在省网边界的两个路由器呈现了如图4—6的路由形态:2l 万方数据东南火学硕:}:学位论文o◇⋯将月的地址为暗心的报文指阳华为12800路山器H标地址为晴网的报文,{华为NE40E路山器和华为—————◆环128路00路山器之问形成路由I.本路由器无关于晴网的路由条目2.将目标地址为暗嘲的报文指向默认路山华为NE40E1}:),112800图4.6路由环路产生目标地址为暗网的报文在路由器华为NE40E和华为12800之间形成路由环路,直至TTL耗尽,路由器向原始发包者116.56.138.}发送ICMP超时报文。在发现这一现象后,与网络管理者取得了联系,将华为12800路由器关于暗网地址的路由条目指向了路由黑洞后,则上述ICMP超时报文消失。从以上实验可以看出,伪造源地址的报文并没被限制,皆顺利的到达了目的主机,双方完成了正常的交互。以上实验证明了用采集器和暗网空间构造蜜场系统的可行性。4-3本章小结基于采集器和暗网环境进行蜜罐环境的构建,关键在于首先在入方向上,是否有可用的暗网地址,以供采集器进行IBR报文的捕获,在此本文提出了利用上下级路由器路由之差查找可用暗网地址的方法,并对所获得的暗网进行了验证。其次在出方向上,由于恶意流量是从采集器流入蜜场的,而响应报文需要从正常路径返回公共网络,本章设计了利用伪造源地址报文的方式完成交互,并通过实验证明了可行性。这样,构建蜜场的外部条件即已成熟,在后续章节,将会对设计蜜罐的关键技术研究,以及蜜罐的具体实现过程等进行阐述。一舀 万方数据第五章报文重定向相关问题研究从前述章节的讨论中可以得出,入方向目标为暗网地址的报文在经过CERNET江苏省网边界时,可以被采集器以分光的方式捕获,并被实时发送至蜜罐系统,而原始报文则会进入路由黑洞,不会对正常交互产生影响。在蜜罐响应报文的出方向,由于路由器不进行源地址检查,使用暗网地址的响应报文可以正常到达省网外的目的地址。在此基础上本章提出一个基于采集器和暗网环境的高交互蜜场系统一NorthWind。主要讨论的是这个系统中的报文的重定向机制相关问题,这是NorthWind系统的关键问题。5.1报文的重定向机制NorthWind系统是一个蜜场系统,系统通过对来自于暗网的报文进行重定向,以使蜜罐获得恶意流量。系统由一台可以采集省网边界主干道光纤报文的采集器,一台作为控制系统和蜜场宿主机的服务器和若干台用于蜜场的虚拟机组成。系统运行环境如图5—1所示:,一/一一一./图5—1系统运行环境图而蜜场系统不可能配置与暗网地址数量相当的蜜罐主机。NorthWind使用的暗网地址的数量远远大于蜜罐主机的数量,这就需要对暗网报文和蜜罐的地址进行相应的映射。其次,对于同一个会话的交互报文,要求可以保证交互的连续性,即属于同一个会话的报文,始终可以映射到相同的蜜罐上去。同时,报文可以正常进入蜜罐,同时蜜罐的响应报文依靠相应的机制也可返回原始发报文处。在此NorthWind参考NAT技术,对报文的重定向机制进行设计。NAT技术是一种在IP报文通过路由器或防火墙时重写源Ⅲ地址或目的IP地址的技术。这种技术被普遍23 万方数据东南大学硕士学位论文使用在有多台主机但只通过一个公有P地址访问因特网的私有网络中。其原理如图5—2所示:。.t.’10粥10.".1.100Inl绡f璩tlnl叠m融———一Paci({毗打omHosttoServer————’Packe‘tfromServerloHost图5—2NAT技术原理如图5—2所示,借助于NAT,私有(保留)地址的”内部”网络通过路由器发送数据包时,私有地址被转换成合法的口地址。在NAT的支持下一个局域网只需使用少量P地址(甚至是1个)即可实现网络内所有计算机与Intemet的通信需求。NAT将自动修改IP报文的源口地址和目的IP地址,IP地址校验则在NAT处理过程中自动完成。有些应用程序将源IP地址嵌入到口报文的数据部分中,所以还需要同时对报文的数据部分进行修改,以匹配P头中已经修改过的源口地址。否则,在报文数据部分嵌入口地址的应用程序就不能正常工作。①如图5—2所示Host的gateway(网关)设定为NAT主机,所以当要连上Interact的时候,该封包就会被送到NAT主机,这个时候的P源地址为10.1.1.100.②而透过这个NAT主机,它会将Host的对外联机封包的源地址伪装成这个接口所具有的公共口,因为是公共IP了,所以这个封包就可以连上Intemet了,同时NAT主机并且会记忆这个联机的封包是由哪一个Host端传送来的;③由Intemet传送回来的封包,当然由NAT主机来接收了,这个时候,NAT主机会去查询原本记录的路由信息,并将目标IP由公共口改回原来的10.1.1.100;④最后则由NAT主机将该封包传送给原先发送封包的Host对此,Nothwind使用数组boolport[64512],以及统计变量count,对端口号从1025至65535进行循环使用,并用变量count标识可使用的最小的端口号(mod65535),对每一个进入控制系统的tcp报文,依赖四元组(源宿端口,源宿地址)进行哈希,从而查询报文是否已在控制系统内进行登记,对未登记的系统,为其建立会话单元,并分配端口号,即对目的地址和源端口号进行替换。当响应报文为系统所捕获时,查询数组port,检查是否已经建立会话,因为本系统主要对蜜罐的感染过程进行监视,所以对从蜜罐发出的未建立会话的报文进行丢弃。其中会话单元结构如下:表5一l会话单元结构24 万方数据第五章报文重定向相关问题研究序号名称描述l-start——time起始时问2.endtime终止时间3.src_lP源ip4.dst—ip宿ip5.src—port源端口6.dst_port宿端口9.conn_type会话类型10.fin—type结束类型11.in_pkt入方向报文总数12.outpkt出方向报文总数13.in—byte入方向字节总数14.out—byte出方向字节总数同时,当交互双方,发送tcprst报文或者是tcpfin报文时,表明会话已经结束,系统保存会话单元数据,同时清除会话信息,以对端口号进行回收利用,保证后续报文可以得到相应的端口使用。5.2报文校验和重计算在报文的重定向过程中,需要修改报文的地址和端口,这会导致报文原有的IP层和传输层校验码失效,校验码失效的报文会被目标机器的TCP/IP协议栈丢弃,而不能被目标机器正常接收。本文在发送报文过程中,使用从IP层开始的原始套接字,这也意味着需要控制系统自身对报文的IP层和传输层的校验码进行重新计算。IP层校验码计算算法和传输层校验码计算算法相同。IP层校验码覆盖IP报文头,传输层校验码在计算时,需要构造伪首,覆盖包括传输层报头以及传输层报文负载。传输层内TCP协议和UDP协议校验码计算方法相同,不同的是UDP协议允许不计算校验码,而直接将其置为0。对此本文在此对传输层校验码算法进行介绍:一、如图5—3是一个UDP的检验和所需要用到的所有信息,包括三个部分:1.UDP伪首部2.UDP首部3.UDP的数据部分25 万方数据东南大学硕士学位论文卜黄部卜嚣图5—3UDP伪首和报文体伪首部包含IP首部一些字段,其目的是让UDP两次检查数据是否已经正确到达目的地,只是单纯为了做校验用的。二、计算检验和(checksum)的过程主要分为以下几个步骤:1.把伪首部添加到UDP上;2.计算初始时是需要将检验和字段置0;3.把所有位划分为16位(2字节)的字4.把所有16位的字相加,如果遇到进位,则将高于16字节的进位部分的值加到最低位上,举例,OxBBSE+OxFCED=OxlB84B,则将l放到最低位,得到结果是OxB84C5.将所有字相加得到的结果应该为一个16位的数,将该数取反则可以得到检验和checksum。三、举例对其分析,该例计算的是一个TCP的检验和(和TCP的算法一致)TCP计算检验和的报文结构如图5—4所示:32位源IP地址m嘏016632位目的IP地址两Ⅺ,3沁全03位协议(TCP0x05)I16位T凹总长匿002C源赭口号0688l目的靖口号00."30序号cAdS548d确认号0000OOOO首毒长度bI保留0l控拳腔2l窗口太小ffff检黼洲I蘩鳞针锄数鼍O:0L189一毗0303a3010l稍啦a咖0嗍湖O∞曲010l04021.首先将检验和部分置0:图5—4报文校验码计算26 万方数据第五章报文重定向相关问题研究2.然后将TCP伪首部部分,TCP首部部分,数据部分都划分成16位的一个个16进制数;3.将这些数逐个相加,记得溢出的部分加到最低位上,这是循环加法:OxcOa8+0x0166+⋯⋯+Ox0402=0x9b494.最后将得到的结果取反,则可以得到检验和位Ox64865.3本章小结由于蜜场系统的恶意流量来源于目标为暗网地址的报文,其目的地址和蜜罐所配置地址并不相同,且地址范围远远大于蜜罐地址。本文利用重定向的机制,将入方向报文的目的地址替换为所分配蜜罐的目的地址,利用替换入方向报文的源端口进行标识,解决了暗网地址段和蜜罐地址段的映射问题。同时,在重定向过程中,由于需要对报文的地址和端口进行修改,则同时也需要重新计算报文的校验码,本章在最后也对如何计算IP成和传输层的校验码进行了说明。27 万方数据东南大学硕士学位论文第六章NorthWind系统的设计与实现NorthWind系统是一个基于采集器和暗网环境的高交互动态蜜场。系统的设计要求是在基本不改变任何网络配置的条件下,基于采集器和重定向技术,利用大规模接入网中未使用的地址碎片构造的暗网环境实现一个高交互的虚拟蜜场系统,并对同时获得的IBR流量进行保存。在功能方面要求可以做到在系统的引导,监视和控制下,完成对暗网流量的保存、过滤、转发和有价值的连接的维护和保存,同时还应确保实验环境的安全,防止蜜场主机成为新的攻击源,从而污染网络环境。在此同时,支持对系统中IBR信息的使用。6.1蜜罐的配置和网络环境的虚拟在前文的叙述中已经说明,基于采集器和暗网环境构建蜜罐的外部网络环境和重定向机制已经成熟,暗网报文已可以顺利进入后端处理机,同时伪造源地址的报文也已经可以顺利返回原始发包者处。在本小节,对蜜罐的网络环境配置进行说明。对蜜罐网络环境的配置,主要考虑以下几个需求:1.蜜罐需与业务系统网络隔离,不允许因为蜜罐被感染而对业务系统造成影响。2.进出蜜罐的网络流量需要被监测和捕获。3.需要使得蜜罐内的操作系统,可以像业务系统内的主机一样,进行网络反应。对此,本文提出,基于OEMU-KVM对蜜罐进行安装,同时利用TUN/TAP设备生成虚拟网卡,以供蜜罐进行加载的方法。具体过程如下所示:利用TUN/TAP,生成虚拟网卡TAPx,同时在蜜罐启动时加载此网卡。TUN与TAP是操作系统内核中的虚拟网络设备。不同于普通靠硬件网路板卡实现的设备,这些虚拟的网络设备全部用软件实现,并向运行于操作系统上的软件提供与硬件的网络设备完全相同的网络功能。TAP等同于一个以太网设备,它操作第二层数据包如以太网数据帧。TUN模拟了网络层设备,操作第三层数据包比如IP数据封包。操作系统通过TUN/TAP设备向绑定该设备的用户空间的程序发送数据,反之,用户空间的程序也可以像操作硬件网络设备那样,通过TUN/TAP设备发送数据。在后种情况下,TUN/TAP设备向操作系统的网络栈投递(或“注入”)数据包,从而模拟从外部接受数据的过程。TUN/TAP设备的网络设备的原理如图6一l所示:28 万方数据第六章NorthWind系统的设计与实现物理链路图6.1TUN/TAP设备原理1.在蜜罐中,对其网络进行配置,设置内容如下:①设置其IP地址为192.168.0.100;②网关地址为192.168.0.1;③DNS地址为192.168.0.2④设置子网掩码地址为255.255.255.02.在宿主机中,对路由表进行修改,将目标为192.168.0.0/24的网络接口修改为TAPx。3.在宿主机中,对虚拟网卡TAPx进行监听,并对目标地址为蜜罐网关地址,以及DNS地址的ARP请求报文,虚构响应。虚拟网卡TAPx是二层虚拟设备,所监听到的报文都是以太网帧,所以在进行虚拟响应时,也必须将其置入以太网帧的负载之中,其格式如图6—2所示:6字节宿地址6字节源地址2字节报文类,舛28字节报文负载——鐾毽类鬻篓嚣。r嚣麓㈠麓i鎏i、,罨:4字节FCS图6-2带有ARP报文负载的以太帧结构至此,蜜罐的网络环境配置完毕。具体网络环境如图6—3所示:29 万方数据东南大学硕士学位论文图6-3控制系统与蜜罐相关网络配置如图6—3所示,从蜜罐的角度出发,是身处于一个网络地址为192.168.0.0/24的完整的网络环境的,而实际上蜜罐是与外界网络完全隔离,仅通过虚拟网卡TAPx与外界进行交互。同时,该虚拟网卡又处于宿主机完全的监控之中。这就满足了蜜罐网络配置时所考虑的需求。6.2报文传输格式因为采集器和控制系统分别处于不能互相直接通信VLAN,所以需要中间经过其他服务器对报文进行转发。图6—3中的边界向内转发服务器,作为一个对外提供报文服务器,以C/S模式向需要报文的进程提供服务,对连接到自己9988端口的进程,提供实时的从链路采集的以PCAP格式封装的报文。这样,采集器将报文采集以后,发送到向内转发服务器,在向内转发服务器封装为PCAP格式,将完整报文经过TCP连接发往控制中心。系统并不需要单个PCAP文件所需要的文件头,只需要报文头和报文体即可。其中packetheader格式如下:structpcap_pkthdr{structtimevalts:DWORDcaplen:DWORDlen:)其中ts为报文所捕获时的时间戳,caplen为所报文体实际长度,len为报文原始长度。6.3控制系统控制系统是整个Northwind系统的核心,它与系统中其他部分的关系可以参见图5一I和6—3.控制系统由多个进程模块构成,包括保存与统计进程,过滤与会话进程,WEB管理端,暗网分析进程。详细结构如图6-4所示。30 万方数据第六章NorthWind系统的设计与实现lI图6—4系统构成6.3.1保存与统计进程保存与统计进程负责以所配置的时间粒度,对输入的PCAP格式数据进行统计,并将统计测度实时写入数据库中,以供相关人员进行查询。所统计的测度,包括:表6—1保存与统计进程统计测度同时,进程在接收到报文保存请求信息后,将数据以pcap格式保存至服务器指定磁盘区域。并添加pcap文件头,文件格式如下:3l:冉辫报文转襞曩蜜簟一⋯一:服务器l-一一一』一一一.●过II等会话进翟■啼理靖向内,{报文电卉封≈∞*t。转发”9“9『日“”8”81进程Il、蠡据库I保存与统计进控⋯I所需的暗同地址表I鼙舟分析进程。、I序号名称描述1.start——time起始时间2.endtime终止时间3.ibrtotalIBR报文总数4.tcp_totaltcp报文总数5.udp_totaludp报文总数6.icmp—totalicmp报文总数7.tcp_syntcpsyn报文总数8.tcp_syn_acktcpsynack报文总数9.tcp_fintcpfin报文总数10.tcp_rsttcprst报文总数11.byte—total报文总长度12.byte_aver报文平均长度 万方数据东南大学硕士学位论文表6-2pcap文件格式pcappacketlpacket2headerdataheaderdata其中pcapheader格式如下:structpcap——file——header{DWORDmagic:DWORDversion_major:DWORDversionminor:DWORDthiszone:DWORDsigfigs:DWORDsnaplen:DWORDlinktype:):其中,linktype表示所保存的报文的格式类型,在此为rawip,表示报文不包含数据链路层。同时,对所保存的数据报文文件名按格式ibr_yymmdd_hhmmss命名,并添加类型名pcap进行,文件名称为该文件起始写时间,以方便文件的归类。这样,保存与统计进程逻辑可以,如图6—5所示:初始化配置系统参数厂线程l——L线程2.连接向内报文打开端口收听控制1转发服务器端信息上接受报文0对测度进行统计圣对是否需要保{F报文进行公.\芝兰/1是T对报文进行保存图6—5统计与保存进程流程图32 万方数据第六章NorthW"md系统的设计与实现其中,配置文件config.xml内容包括,1.向内转发服务器的IP地址和端口;2.系统统计测度时间粒度;3.存储文件目标位置;4.本进程服务端口号。因为需要周期性的将相关统计测度存储至数据库中,所以创建相关的时间堆以对时间时间进行管理。时间堆是一个以事件执行时间为比较单位的最小堆,这样可以保证最将要被执行的事件被放到顶端,以便于系统的检查。系统每隔30s触发一次时间信号,对时间堆进行检查,检查是否有小于等于当前时间的事件尚未执行,如果存在则将其执行。同时如果该事件为周期性事件,重置时间触发事件,将其重新加入时间堆。时间堆内元素可以表示如下:structtime——event{time—ttime:time—tnext:FunpHandleEvent:void*DBParam):其中time表示事件希望被执行的时间,如果事件希望被执行后,再次加入时间堆,将next字段置为非0,pHandleEvent表示事件对应函数,DBParam表示事件参数。同时,进程打开9898端口,等待WEB控制端发送的指令,以进行包括进行对所流经的报文进行存储等操作。这样,进程就包括2个主要线程,其一为接受来自向内报文服务器发送的,采集自省网边界的暗网报文,并对其中的测度进行统计,并在需要对其进行保存的时候,将报文按照pcap格式进行保存,同时每隔确定的时间粒度,将统计测度保存至数据库中。其二为进程打开一个端口,时刻收听来自WEB控制端的指令,以进行包括是否存储报文等事项进行操作。系统接收的来自WEB控制端的指令包括,停止系统,对所历经的报文进行保存,以及取消对所历经的报文进行保存。6.3.2过滤与会话进程过滤与会话进程是系统的核心进程。该进程一方面从向内转发服务器接收实时捕获的暗网报文,然后对其进行相应的过滤,丢弃,重定向等操作,另一方面捕获从蜜罐返回的报文,并对蜜罐返回的报文,过滤,保存,丢弃,反向重定向等操作,同时对蜜罐的配置报文,进行虚拟响应,即对蜜罐网络环境进行虚构,并且负责对会话表信息进行统计、维护,会话单元信息的保存等,并且对蜜罐主机进行管理。本进程首先需要维持一个会话表,对当前系统所维持的会话进行描述。系统定义的会话,是外界主机与蜜罐之间的同一源宿地址和源宿端口的持续性的TCP交互。系统定33 万方数据东南大学硕士学位论文义会话的目的是,首先为了可以维持会话双方的交互,因为本系统是将一个大范围的地址映射为小范围地址的系统,地址本身是并不对称的,这就需要相应的机制,对其进行管理。其次,对会话单元的测度进行统计,并且对会话总体测度进行统计。当某个会话单元结束时,系统对会话内容和会话单元信息进行保存。这是通过在会话单元内,维持一个链表实现的。该模块同时对会话总体属性进行统计,统计内容包括:表6-3会话统计测度序号名称描述1.start—time起始时间2.endtime终止时问3.conn_num会话总数4.tcp—cortntcp会话5.udp_connudp会话6.icmp—connicmp会话7.most_packet——COILS报文最多会话8.byte_most——conn交互数据最多会话lO.in_packet入方向报文总数11.out_packet出方向报文总数12.in—byte入方向字节总数13.out——byte出方向字节总数统计测度按时间粒度,存储至数据库,以方便相关人员进行查询。过滤与会话统计进程,首先从向内转发服务器处接收以pcap格式封装的报文,因为本系统是捕获的暗网地址范围的报文,这个地址范围往往远远超过蜜罐主机数量,将所有捕获的报文统统发往蜜罐主机,会给后端的蜜罐主机造成不必要的负载。所以可以在本进程内,对简单的扫描报文,如ICMPPing报文,直接在控制系统内对其作出响应,并不转发给后端蜜罐。同时,对于与系统会话无关的tcprst报文,tcpfin报文,tcpsynack报文直接进行丢弃,以减轻系统负担。同时将剩余的可能与系统相关的tcp报文添加至会话处理队列。然后,将报文从会话处理队列中逐个提取出来,依赖报文属性选择适合的动作,为报文选择合适参数,对报文进行操作,包括为该报文创建一个会话单元,将报文发往后端蜜罐,删除会话单元,以及直接丢弃报文等。这样,报文的处理逻辑可以如图6—6所示:34 万方数据第六章NorthWind系统的设计与实现否是图6—6前置报文处理逻辑会话处理逻辑依赖报文属性,包括报文的TCP/UDP类型,是否已经为该报文所属的会话建立会话单元等,如果没有相关会话单元,则判断该报文是否为TCPSYN报文,如果不是,则无法与后端蜜罐建立连接,该报文为无意义的报文,则在进行统计后,直接将其丢弃,这样则返回丢弃报文操作;如果是TCPSYN报文,则该报文为会话的首报文,为该报文分配一个蜜罐,以及一个用于标识会话唯一性的端口,然后返回创建会话操作。如果存在响应会话单元,则首先查询该会话单元所分配的蜜罐地址,以及分配的端口号。其次,判断该报文是否为tcprst报文,或者为tcpfin报文,如果遇到这两种报文,说明会话已经结束,无需再为该会话维持会话单元,需要将会话单元释放,则返回返回会话单元操作,如果不是终止会话的报文,则直接返回继续发送报文操作。这样的话,会话处理逻辑可以表述为如图6—7所示逻辑:35 万方数据东南大学硕士学位论文图6—7后置报文处理逻辑系统同时对蜜罐进行管理,以方便蜜罐的地址以及属性配置,并进行实时的创建,退出,重置。系统建立蜜罐管理模块,当蜜罐需要加入蜜场时,在蜜罐管理模块处进行登记,并通知自身属性,如为Linux或是Windows,以及自身所配置的IP地址,网关,DNS地址等。当蜜罐欲离开蜜场时,向蜜罐管理模块提出离开申请,蜜罐管理模块清除该蜜罐相关信息,以避免报文再次发往该蜜罐。同时,系统捕获从蜜罐返回的报文,并对蜜罐返回的报文进行相应的处理。蜜罐返回的报文,可分为主动发出报文和被动响应报文。主动发出报文,包括蜜罐系统的系统报文,如ARP查询报文,NetBios查询报文,Windows时间服务报文等。以及,系统上所安装的软件主动发出的报文,如youkumedia.exe等进程向服务器的主动请求等。系统对于ARP等不回应会影响系统正常工作的报文,虚构报文进行响应,以对蜜罐内的操作系统进行欺骗,构造一个虚拟的网络环境以让蜜罐工作。对于,系统上所安装软件的主动请求,控制中心在捕捉到这些报文,予以直接丢弃。系统对于蜜罐响应的报文,查找会话表,寻找该报文对应的原始地址和端口,对其进行替换,并对报文测度进行统计,将其发送至原始攻击者处。这样的话,从蜜罐发出的报文的处理过程,可以用以下流程图6-8表示:36 万方数据第六章NorthWind系统的设计与实现卜否丢弃是否图6—8.蜜罐返回报文处理逻辑否斗丢弃6.3.3WEB管理模块本系统通过WEB页面对系统暗网报文测度和会话信息测度进行查询,以及对暗网地址表进行管理,对作业表进行管理。系统首先可以对当前的IBR统计信息,包括对时间粒度内的IBR报文总量,IBR报文构成情况,即TCP报文数量,UDP报文数量,ICMP报文数量进行统计,同时对TCP报文类型内的,TCPSYN报文数量,TCPSYNACK报文数量,TCPRST报文数量,TCPFIN报文数量,平均报文长度等信息进行描述,以及系统当前所维系的会话数量进行描述。同时,系统可以对历史数据同样可以进行查询。系统输入欲查询的时间段的起始和终止时间,对该时间段内的数据进行查询。如图6-9所示:最后,系统可以通过WEB端,对会话进程和IBR进程,发出指令。包括,开始保存报文,停止保存报文等。如图6-9所示:37 万方数据东南大学硕士学位论文∞目#赶m£t^#∞t冠埯址击tBI作业熹f理IBR报文统计6.3.4关键数据结构说明图6—9WEB管理默认界面表6—4关键数据结构结构名称结构成员成员类型成员说明结构介绍公共数据结构tstimeval时间戳用于描述报文概要caplenuint32t报文捕获长度Header信息lenuint32t报文实际长度headerHeader报文头说明Packet用于描述报文buffchar[]报文数据sIPuint32t源地址diPuint32t宿地址用于描述报文的源Addresssportuintl6t源端口宿地址和端口dPortuintl6t宿端口统计与保存模块ibruint32tibr报文总数tcpuint32ttcp报文数量udpuint32tudp报文数量1cmpuInt32ticmp报文数量用于对IBR统计数IBRInfotcp_synmnt32ttcpsyn报文数量据进行描述tcp_syn_ackuint32tsynack报文数量tcp_finuint32ttcpfin报文数量tcp_rstuint32ttcprst报文数量38 万方数据第六章NorthWind系统的设计与实现byte—totalUint32t总byte长度byte_avrdouble平均报文长度过滤与会话模块oAddrAddress原始地址nAddrAddress替换后的地址dispatchportuintl6t分配的端口sTimetimet起始时间eTimetimet结束时间SessionsupTimetimet更新时间描述会话单元infoSessionInfo统计数据pHoneyHoneyPot*分配蜜罐指针sess_typeuint8t会话类型nextSession*指向下一会话pktlistlist报文列表start—timetimet开始时间curtimet当前时间COnnn岫uint32t会话总数tcp—eonnuint32ttcp会话总数udp_connuint32tudp会话总数icmp_connuint32ticmp会话总数描述总体会话统计SessionCountmost_pkt—connuint32t最多报文会话信息most——byte——connuint32t最多字节数会话inpktuint32t入方向报文outpktuint32t出方向报文in_byteuint32t入方向字节out—byteuint32t出方向字节模块间通信交互格式indexuint8t消息类型模块问通信交互格Messagecodeuint8t类型子编码式buffuint8t类型参数6.3.5主要函数说明表6-5主要函数说明所属模块函数名称作用意义过滤与会话模块PktFromOutSide为入方向报文选择操作39 万方数据东南大学硕士学位论文PktFromHoney为蜜罐方向报文选择操作HasRelateSession判断该报文属于一个会话CreateSession创建一个会话DeleteSession删除一个会话UpdateSession更新会话信息保存与统计模块Count——ibr——info统计IBR信息公共模块GetTCPChecksum计算TCP的校验码6.4本章小结本章对NorthWind系统的结构进行了说明。NorthWind系统由过滤与会话进程,保存与统计进程,暗网分析进程,以及WEB管理端共4部分组成。过滤与会话进程对流入的IBR报文进行过滤,响应简单的扫描,同时维系会话表,对会话元素进行统计,保存,对用于标识会话的端口进行分配,以及负责对蜜罐的管理。保存与统计进程,负责对IBR报文进行保存,以及测度的统计。WEB管理端,提供了一个直观的界面,对系统当前测度情况,历史测度情况进行查询,同时提供了对暗网地址表,以及作业表的管理。 万方数据东南大学硕士学位论文第七章NorthWind系统测试Northwind系统主要由过滤与会话模块、保存与统计模块、WEB管理模块组成。在前面章节中,已经对各模块的主要逻辑结构,算法流程,关键数据结构,关键函数进行了介绍。本章将对各模块进行功能测试。7.1统计与保存模块◆测试目的统计与保存模块的功能是从采集器接收由IBR报文组成的数据流文件,并对其进行统计,将统计结果保存至数据库中,同时在接到系统命令时,将流经的报文按照pcap格式进行保存。在此,本文首先对该模块的统计功能是否正确,报文是否被正确保存分别进行测试。◆测试方案1.首先通过采集器抓取一小时长度的正常的暗网报文。2.对这些暗网报文,依照本模块的测度,进行统计。3.向本模块,播放所捕获的报文。4.在网页界面上,查看所统计的测度,是否与已知的测度相同。5.同时对所保存的两份文件,进行MD5值的校验。◆测试结果本文首先捕获一个一小时时长的报文,如图7—1所示:l蠡越壹垂垂垂画E二=二二二二二二二二二二二二亟堑j逦塑匦垂E=j三三二正图7一l已保存的IBR文件然后对其进行测度的统计,统计结果如下:表7—1报文统计结构IBR报文总量TCP报文总量字节总量报文平均字节19:27:181.33k1.13k59.81k45.0719:28:182.24k2.1lk93.7lk41.8519:29:182.48k2.30k103.20k41.6519:30:183.32k3.19k155.39k46.8519:31:181.02k92644.64k43.6319:32:181.21k1.10k52.92k43.5919:33:1880871535.54k43.9841 万方数据东南大学硕:l:学位论文19:34:181.57k1.48k66.8lk42.6419:35:185.43k4.50k307.10k56.5319:36:183.10k2.60k156.51k50.42其中678,973表示文件大小大小,单位为字节。将其播放给系统,其中控制系统显示统计测度如下:图7-2WEB端统计数据其数据相吻合,说明报文被系统正常的接收,并且统计了。同时,检查目标文件夹,同样生成文件舞i两迂面面画石一——⋯———丽湎r面丽万面蕊r一—i==—i≯一图7—3所保存的IBR文件同时,对两个文件的MD5值进行校验,同样得到MD5值为:E2DED6C4CD73D1E0273C7431276DD4CF,说明两个文件内容一致,说明保存与过滤进程模块功能完整,正确。7.2会话与过滤模块◆测试目的会话与过滤模块,首先从采集器接收暗网报文,然后按照前述的规则对其进行过滤,对Ping扫描报文,在控制系统内进行响应,以减轻后端蜜罐的压力,同时滤出有进一步引诱价值的报文。然后依赖于类似于NAT技术的重定向技术,将报文转发至后端蜜罐中,并捕获从蜜罐返回的报文,并将其反向重定向至公共网络中。同时,在一个会话42 万方数据第七章NorthWind系统测试结束时,对会话内容按照pcap格式进行保存。在此,本文对本模块的重定向技术,以及会话的保存功能进行测试。◆蜜罐构成交互能力测试方案首先,对本模块是否有构成完整交互能力的功能进行测试,即是对蜜罐的重定向功能进行测试。1.在蜜罐上布置一个http服务器,并编写若干简单的网页。2.选择省网外某己知的主机,在该主机处打开监听软件wireshark,对地址为暗网地址的报文进行滤出,以方便观察。3.在该主机的浏览器上,以暗网地址为目标地址,对已知的网页进行访问。同时,观察wireshark处的监听结果。◆测试结果对于会话与过滤模块,在省网外已知主机,116.56.138.XXX处,对一个随意指定的暗网地址211.87.XX.123发起请求,并且在该主机处,对此进行监听。在发包主机处,监听结果结果如下:,_【年tD舾on媸∞越㈤斑包‘0糟池辑;焰匡’;固土晶∞普蜘∞冒≮牲黛0,。j嗣冀g童。’、罐矗露。零耋匡图q&a[二=醵冒巴w强疗it+}addr==2:IAl7.*Y。f24-j醚赢.;稚£二焉图7—4发包主机处监听结果从图7-4中可以看到,发包主机与蜜罐产生了包括TCP三次握手在内的多次交互,以http请求,服务端的响应,最后连接以TCP的4次握手释放结束。同时,在网外主机处的浏览器上,可以看到所加载的网页:helloworld图7—5网外主机所加载页面43 万方数据东南大学硕士学位论文测试结果说明,系统构造交互能力正常,报文按预计的结果返回了网外主机,系统的重定向能力正常,报文经过地址转换到底蜜罐后,可以按照预期结果进行反向重定向,找到原始的源地址。同时,从图7-4中可以看到,在交互过程中,产生了TCP重传现象,这和报文在系统内的流经时间,以及当时的网络环境有关。◆会话的保存功能测试方案本系统在会话结束时,将会话报文进行保存。由于本系统并不苛求所有会话报文都准确地进行保存。在此,本文仅对会话功能是否可行,进行测试。1.打开本模块进程及相关辅助进程。2.在WEB管理端,提交保存会话报文请求,并设定时长为一小时。3.在作业完成后,查看会话报文是否得到正确的保存。◆测试结果作业表管理图7-6作业表管理如图7—6所示,对系统进行保存会话请求,工作时长为--d,时,在一小时以后,文件会被写完成。并按照Pcap格式,保存在指定的位置上。如图7—7所示:鍪l三曼三曼受旦圣翌旦i曼!=!;!墨呈i曼坦熙⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯!!:!!!翌!⋯图7-7所保存会话文件在一个小时后,一共捕获到了247208字节的数据。打开文件,对内部结果进行验证。如图7—8所示:2228959.1824:211.87.嘞13.5114.44.121.晶矬5I"18173NegottarePrlTtocolResponse238.4966553.3.4.44.121.o,211.87.’.U,SMBi17SessionSetupm1舣Request.User:anonymous2428959.5596211.87.糯.115114.44.121.裔姆州B132ses5’onsetupAnd)