互联网资产信息采集监测系统项目建设方案.docx
目录第一章项目概述11、项目名称12、项目背景13、指导思想24、建设原则25、建设目标与任务5第二章需求分析61、业务目标需求分析结论62、系统功能指标分析73、信息量指标分析84、系统性能指标分析9第三章总体建设方案111、总体设计原则111.1、总体框架111. 2、总体技术路线132、总体目标与分期目标132. 1、总体目标133. 2、分期目标143、总体建设任务与分期建设内容144. 1、总体建设任务144、系统总体结构和逻辑结构155. 2、系统逻辑结构15第四章本期项目设计方案161、建设目标、规模与内容161.1、建设目标161. 2、建设规模161.3、 建设内容172、标准规范建设内容172. 1、项目建设标准172.3、 项目先进性标准193、信息资源规划和数据库设计203. 1、信息资源规划204. 2、数据库设计214、应用支撑系统设计225、应用系统设计235.1、资产识别235.2、资产查询245.3、资产数据分析挖掘255.4、业务领先的资产指纹识别能力255.5、准确的资产与漏洞检测能力255.6、独有扫描机制265.7、系统抓取分析技术266、数据处理和存储系统设计276.1、数据处理设计276.2、数据存储系统设计317、终端系统及接口设计378、网络系统设计3810、备份系统设计39H、运行维护系统设计4012、系统配置及软硬件选型原则4414、系统软硬件物理部署方案44第五章人员配置与培训461、人员配置计划461. 1技术力量和人员配置461.2、 人员培训需求和计划461.3、 项目建设的实施策略462、人员培训方案471.4、 人员培训计划471.5、 培训目标472. 3、培训对象482、 4、培训讲师483、 5、培训时间492. 6、培训课程492、 7、培训方式503、 8、培训意见反馈52第八章效益分析541、前期项目建设成效分析542、本期项目效益分析54第一章项目概述1、项目名称互联网资产信息采集监测系统建设项目2、项目背景目前,随着各类开源系统的逐渐丰富,安全问题也随之逐步暴露,全球范围内的通用漏洞开始呈现出爆发式的增长趋势。伴随着今年StrUtS2漏洞的再次爆发,黑客利用通用漏洞进行攻击的案例越来越多。2017年6月,“永恒之蓝”勒索软件漏洞影响了全球近千万台服务器,仅我国境内受影响服务器多达4万多台。可以看到,针对通用组件的攻击将成为未来很长一段时间的主旋律。反观我们国家整体的安全建设,网络防火墙、Web应用防火墙、下一代防火墙、IDS、IPS、扫描器等等设备一应俱全,为何仍会在StrUtS2及“永恒之蓝”等漏洞出现时束手无策。由此可见,在新的网络安全形势下,已有的安全监控及防护手段存在着极大的不足和滞后性,无法及时反映出信息系统、网络设备的信息及安全状况,缺少一种高效精准的技术手段了解这些系统和设备开放的组件、服务和端口情况,以至于在出现严重漏洞时既不知道受不受影响,也不知道影响范围有多大。因此亟待采取有效的措施来进行弥补,了解并掌握网络资产状况,一旦高危漏洞爆发时,能够更快速、精确的发现存在问题的站点并发出预警及利用。互联网资产信息采集监测系统的推广将会在这个过程中起到至关重要的作用,帮助技术侦查部门掌握足够的真实数据以做出了解判断并及时预警、响应,同时可以加以利用,获取有价值的信息,信息系统化的方式大量节约人力和时间。3、指导思想以“情报信息主导”理念为导向,紧密结合工作实际,按照“因地制宜,分类指导,稳步推进”的原则,全力推动信息化建设工作。从基础建设、加强执法管理、业务流程等环节入手,切实推动基础工作信息化,使工作和队伍管理真正融入到信息化平台,不断提升信息化应用的整体水平。4、建设原则互联网资产信息采集监测系统建设应遵循如下基本原则: 全面性互联网资产信息采集监测系统的框架设计,应遵循科学的设计理念,各个组成部分均符合当代信息技术发展形势,满足未来各种业务对信息系统的要求,提供统一系统应用,选择先进的平台软件,提供针对各种数据源的接口支持。 开放性在现有应用系统和手段建设中有大量资源,包括软硬件环境资源和大量信息资源,在实现资源共享时要统一规划,最大限度实现各类资源共享,支持多重业务工作的开展。系统需提供多种数据访问、服务调用和资源管理接口,实现资源和服务对其他业务手段和使用人员的共享。 灵活性各警种未来在数据类型、数据规模、业务应用方面都会有不断扩展和演化,系统设计需采用灵活架构实现可配置,动态可扩展和自定义,有较强的可扩展性。 融合性工作涉及到海量数据、多用户。良好的数据融合和应用融合可以帮助在日常工作和情报分析工作中快速、有效、准确的获得成果。 标准化数据中心的设计与开发应坚持标准化、规范化原则,采用业界成熟的标准化技术,遵循国家和部制定的相关标准和技术规范。只有基于标准化的处理方式,数据资源才能有序、完好的汇聚到数据中心,系统才能横向或纵向的可持续发展。安全性系统必须有高可靠性,能够长时间运行而不宕机,要保证系统使用的连续性。建立全局的数据安全机制,建立统一的访问控制机制,实现统一的身份认证、访问控制、审计等安全机制。 实战化系统的建设以保证围绕为一线民警提供强有力的手段为原则,确保系统的易操作性,功能的实用性,业务的全面性,切实满足实战需要。同时,系统的建设也要能够提升数据资源的成果转化,提升工作人员的信息化技战实力。 先进性在保证实用性、标准化、可靠性的前提下,系统在达到设计思想先进性的同时,也能够与现有主流应用系统技术兼容,其体系结构应采用先进的架构和成熟技术。 易维护性项目涉及面广、复杂度高、规模较大,系统的可管理性和可维护性是系统能否持续运行的关键,系统需要具备可解决问题并易于管理的系统。贯彻面向最终用户的原则,部署快捷,具有了友好的用户界面,操作简单、直观、灵活,易于学习和掌握。5、建设目标与任务漏洞危机带来的新的威胁以及网络环境的日趋复杂,脆弱性扫描正朝着集成化、智能化方向发展。脆弱性扫描的新趋势具体包括:集成系统漏洞、数据库漏洞、Web漏洞、安全配置漏洞的发现能力,并可生成风险分析报告;支持对扫描资产的管理,并能够结合漏洞评价,计算主机和网络的脆弱性风险,为风险评估和风险监控提供必要支撑;支持对不同软件、系统类别的漏洞进行统一评级,并保证评级的开放性和客观性,为漏洞评级的交流提供方便;支持对历次扫描结果中的漏洞情况、脆弱性风险的变化趋势进行分析,为漏洞管理策略合理化调整提供决策依据;厂商必须具备持续性的漏洞跟踪及研究能力,以确保产品中漏洞知识库的全面性、准确性和权威性,并且能够做到及时更新,甚至能够对重大的突发漏洞事件进行应急;厂商在漏洞检测领域有长期的积累,以保证产品应用的成熟度。互联网资产信息采集监测系统利用基于指纹库的组件识别技术,进行网络信息采集,可识别的设备类型包括:路由器、交换机、邮件服务器、网站服务器、数据库服务器、防火墙、打印设备、摄像头设备等;可识别的网络设备软件包括:LinUX(操作系统)、Windows(操作系统)、IIS(Web容器)、APaChe(Web容器)、WebLOgiC(Web容器)、WOrdPreSS(CMS系统)、Discuz(论坛系统)、MySQL(数据库)、MongoDB(数据库)等。互联网资产信息采集监测系统是针对网络设备资产进行信息普查和风险感知的手段。通过对全球互联网IP段、端口等参数进行探测,掌握应用系统、网络设备的存活情况、开放端口、组件信息、服务信息,并通过周期性监控,及时发现信息变化。第二章需求分析1、业务目标需求分析结论随着企业的发展和IT信息化建设的快速开展,承载企业业务的资产越来越多,接入互联网的设备也是五花八门的,除了个人PC机和服务器,还包括交换机、路由器、打印机、视频监控、移动设备、物联网设备等。这些设备共同组成了企业等单位所处的网络空间。互联网资产信息采集监测系统是一个针对全球互联网中,包括政府、高校、企事业单位开发的网络空间资产检索系统,能够自动获取网络空间存活的资产和开启的服务,然后进行协议识别,根据协议的信息对资产进行指纹识别,并且还可以出具各种资产统计报表。要求系统具有快速、全面、准确等优势。可采用全球领先的端口扫描程序,可快速获取到企业的存活资产。包含IlO多种协议的识别,覆盖网络常用端口,能够全面识别出来资产开放的服务,超过7000多条识别规则能够识别出资产的指纹信息。要求系统可以解决防火墙等设备导致的端口开放的误报情况,使结果更加准确。互联网资产信息采集监测系统建设,通过对于网络空间资产的检索、扫描、漏洞验证、报送呈现,为后期业务工作提供基础数据资源。将有利于加快推进技术侦查工作的步伐,实现“以网管网”的工作目标,有效打击涉网犯罪,更好地促进互联网环境健康发展。2、系统功能指标分析在全面网络资产识别基础上,重新定义了安全事件处理和漏洞扫描形式,基于漏洞匹配符合特征的网络资产进行专项扫描,并结合资产分布统计、安全态势分析等功能,形成集资产探测管理、安全事件验证、智能统计分析、安全态势感知、持续安全监控为一体的全方位安全体系。3、信息量指标分析资产搜集系统可自动搜集网络空间中的存活资产,在线资产识别比例超过95%。资产检索支持针对资产的模糊检索;支持根据资产IP地址、资产名称、端口、服务、操作系统、设备类型、厂商、组件、设备地区、业务应用进行高级检索。端口扫描支持全网端口扫描,深度识别240个以上的常用网络端口,包括协议的默认和非默认端口,并支持自定义端口。协议识别支持110种以上的主流协议识别,包括数据库、SSH.FTP、HTTP、程序组件、工控等类型;支持协议扩展。指纹识别预置超7000条指纹识别规则,包括视频监控、安全产品、路由器、交换机、OA、财务、邮件、项目管理等。扫描速度扫描100oO资产,网络常用端口(240个)5M带宽30分钟。高准确度能够准确识别协议的开放情况,由于连接重置和防火墙导致的误报率低于3%o漏洞快速扫描系统支持单个漏洞的快速扫描,IW以内资产单个漏洞扫描速度5分钟。IOW以内资产,单个漏洞扫描速度15分钟。分析报告包括资产分析、漏洞分析;针对资产的设备类型、厂商、端口、操作系统、数据库使用、地区分布、资产总量变化进行统计分析;针对漏洞的分布、影响进行统计分析;支持饼图、柱形图、折线图、地图等多种图表形式;支持添加自定义图表。4、系统性能指标分析互联网资产信息采集监测系统的各种性能要求如下表:项目分类时间响应时间IP查询<2秒端口查询<2秒资产查询<3秒漏洞查询<3秒采集入库时间IP入库<15分种端口入库<15分种资产入库<20分种协议入库<10分种指纹入库<15分种漏洞入库<15分种连接建立时间资产搜集<5秒资产检索<5秒端口扫描<5秒协议识别<5秒指纹识别<10秒漏洞验证<15秒第三章总体建设方案1、总体设计原则1.1、总体框架WEB服务层资产展示IPHOSTPORT管理检索报表胃9POC厂家工控企业API数据存储层数据存储网站数据端口数据其他数据数据索引规则索引用户信息存储区存储区存储区数据聚合层数据关联分析数据有效性分析资产指纹库管理HOSTCERTTITLEHEADER任务管理数据采集层端口扫描端口识别协议识别库爬虫DOMAINHOST常口自定义端口BANNERPROTOCOLCERTTITLEHEADER互联网资产信息采集监测系统采用B/S架构,通过浏览器即可使用,人性化的管理界面,可视化操作流程,使用成本低。整个系统分为数据采集层、数据聚合层、数据存储层、任务管理、Web展示层五个大的模块组成。1)WEB展示层控制台、资产导入、资产管理、数据检索、报表管理、漏洞管理、流量分析等Ul展示相关的功能。2)数据储存层主要承担存储数据的功能,存储的数据包括企业资产信息、协议信息和HTTP信息、周期扫描数据等,可提供资产信息大容量数据存储和高速数据检索,任务队列管理模块提供扫描任务队列高速缓存。3)数据聚合层数据采集层采集到的都是原始数据,需要经过一定的分类汇总后才能存储到系统中去。数据聚合层主要用于数据的关联性分析、资产动态变化统计和资产指纹管理等。4)数据采集层通过全网端口扫描、协议识别、网络爬虫、流量监控等模块,收集企事业单位网络空间资产信息,支持进行单IP、IP段扫描,全网端口扫描模块基于一定的频度对网络空间中的常用标准端口(如21、22、80、3306等)以及非标准端口进行扫描,收集资产开放端口的情况;自主研发的协议识别模块根据端口和协议信息进行详细的识别,从而收集协议的各项信息,收集信息包括IP、端口号、banner,证书等;网络爬虫模块主动进行HTTP协议的信息抓取,采集的信息包括host、domain>header、server>body、title,这几个模块是整个系统的原始数据来源。由主控进程把每个站的各个检测任务扔到任务队列中,jobserver把任务丢给worker去异步执行,由每个worker定期去更新自己的进度,另有daemon程序定期检测意外死掉或失败的Worker,去做善后工作,然后更新状态。这样,各个子功能模块之间耦合比较低,容易通过水平扩展来提升处理能力。2、总体目标与分期目标2.1.、总体目标通过该项目的建设,系统可以针对网络设备资产进行信息普查和风险感知,并通过对全球互联网IP段、端口等参数进行探测,尤其掌握关注范围内的应用系统、网络设备的存活情况、开放端口、组件信息、服务信息,此外进行周期性监控,及时发现信息变化,做到对全球网络空间尤其是指定站点目标的网络相关信息探测。2.2、分期目标根据一期项目建设情况及工作实战需求进行研讨后,确定后期建设任务并启动系统定制开发任务。3、总体建设任务与分期建设内容3.1、总体建设任务随着信息网络技术的发展,网络信息安全已成为维护国家安全和社会稳定的焦点。安全扫描技术是一种极为有效的主动防御技术,成为网络安全研究中的热点。目前漏洞的广泛存在已成为网络系统的直接安全威胁,研究针对发现漏洞的网络安全扫描技术具有重要的意义。围绕网络安全扫描技术和工具开展研究与实现工作。系统通过模拟黑客攻击的方式对目标可能存在的已知安全漏洞进行逐项检测,在完成对目标的扫描后,给出扫描报告,从而帮助民警快速、及时地查看网络的安全状况,该系统应用专业技术有效地提高了系统扩展性,为系统对新漏洞的检测提供了支撑。系统除了本身的功能模块和相关组件,也给出了主要漏洞扫描的验证,通过测试证实,证明系统的设计和实现方案的有效性。4、系统总体结构和逻辑结构4.2、系统逻辑结构第四章本期项目设计方案1、建设目标、规模与内容1.1、 建设目标按照业务工作的要求,并结合本地实际情况,开展互联网资产信息采集监测系统建设工作。提升部门对互联网网络资产和漏洞资源掌握利用的能力,为部门和其他警种提供有效的实战支撑。实现监查管理的流程化,依托系统建立流程化监查管理体系,完善基础信息的收集、核验;对采集接入数据进行统一的针对质量、标准化的预处理机制;建立统一的数据存储方案;并且对数据进行有效的统计工作。实现实战化应用,以服务实战为导向,通过互联网资产信息采集监测系统建立服务实战数据资源支撑体系,紧紧围绕相关需求,研发实战应用模块。1.2、 建设规模拟计划针对全球互联网IP进行资产扫描,漏洞验证等相关符合技术侦查部门实战业务需求的手段建设。1.3、 建设内容建设有可对全球主机开放的端口进行扫描、搜集、存储、分析等等功能,查找已经产生的可利用漏洞以及即将有可能产生的漏洞,并对漏洞加以利用、分析及预防。互联网资产信息采集监测系统通过对盲扫或者指定的IP段及端口进行探测,掌握其范围内的应用系统、网络设备、主机设备的存活情况、开放端口、组件信息、服务信息,并通过周期性监控,及时发现信息变化,做到对目前全球大环境下的网络情况心中有数。系统可以针对目标网络设备的资产信息和漏洞信息,进行数据统计和趋势分析,从宏观上展现网络资产和风险情况,及其变化趋势。同时,用户可以根据需求选择数据统计和分析的不同维度,进行自定义的数据挖掘。2、标准规范建设内容2.1、 项目建设标准统一规划、分步实施立足于实际应用和发展要求,从全局出发,统一进行方案整体规划、设计,并分步开展实施。兼容性、适应性在总体框架下,充分发挥规模、集约效应,充分遵循部委、省厅制定的标准和规范,确保良好的适应性。完整性系统提供体系完备、功能完整、架构完善的服务能力,包括网络服务、虚拟主机、分布式数据库、对象存储服务和大数据计算服务能力,应满足多节点内系统的互联互通和数据同步。可扩展性系统应具有灵活的结构并留有合理的扩充余地,具备基础资源池的快速、弹性、持续和自动化供给服务能力,提供大规模、分布式集群的管控能力,通过增加物理设备,实现总体网络资源、计算/存储资源、内存资源和数据库资源的自动扩展;提供横向扩展能力,可根据业务、管理要求,增加节点。安全性系统要具有高可靠性及强大的容错能力,应保持一定数量的冗余以保证整体平台的高可靠性和高可用性;严格按照国家关于信息安全的规定和要求。结合安全基础防护、安全监测管理、安全运维等,形成完整的安全防护体系。技术领先性系统应采用虚拟化、大数据、云计算等行业领先技术以满足用户复杂业务需求,采用先进的设计思想和方法,成熟开源技术,符合技术发展趋势,创新互动设计。开放性支持异构平台,兼容主流硬件产品;基于应用开发平台以服务接口的方式提供服务,可以和第三方软件产品集成、兼容,便于有技术能力的工作人员或者开发人员快速实现基于服务接口的实战型小应用开发、搭建。2.2、 项目先进性标准安全可靠具备必要的安全保护和保密措施,以及对计算机犯罪和病毒的防范能力。适应性、可扩展性系统必须具备较好的可扩展性,适应业务的发展,通过良好的架构设计和系统配置管理,保证系统的适应性。实用性在设计和开发过程中,本着“以需求为导向”的原则,避免为了集中而集中。先进性在保证实用、可靠的前提下,结合业界先进的设计思想和软件技术、数据库技术。高效性系统负责处理所有数据的清洗入库、服务调度等工作。必须具有很高的响应能力。易管理系统在投入使用后,需要进行运行维护和管理,管理操作必须简洁易用。3、信息资源规划和数据库设计3.1、 信息资源规划在建设互联网资产信息采集监测系统时,可以采取“从上自下”、“从下而上”或“上下结合”的方式进行信息资源规划。1 .从上自下。从的应用需求出发,通过分析建设互联网资产信息采集监测系统来解决什么问题,从而归纳出需要从该系统中获取哪方面的知识,然而倒推出该系统的信息体系结构和数据体系结构。2 .从下而上。从现有的数据资源出发,分析所能获得的数据资源,归纳整理出互联网资产信息采集监测系统的数据体系结构,再往上推出该系统的信息体系结构和知识体系结构。3 .上下结合。既考虑所能获得的数据资源,又考虑业务对互联网资产信息采集监测系统的应用需求。数据库设计总体规划包括源数据层、数据ETL层、数据存储层、数据计算层和数据服务层五层结构,主要建设八大部分的内容:源数据接入整合、数据整合ETL工具、基础数据资源库、应用服务资源库、云文件中心、数据管理、数据计算和数据服务。基础汇集库:保存全量的基础数据,全系统所有数据资源最终汇集于此。总体建成后,整个体系架构支持万亿(FB级别)规模的数据存储和数据访问,主要用于离线分析和查询。应用服务资源库包括:主题库、基础调研库、业务专题库、索引数据库、缓存数据库、应用配置库、应用日志库、个人关注库、统计数据库、分析关联库、中间结果库等。主题库:以基础汇集库、基础调研库、业务专题库为数据来源,主要用于在线分析和查询。A基础调研库:在业务工作中累计的,针对特定群体或课题,未成为专案专项人员目标的数据,主要由业务干部手工录入。A业务专题库:主要包括主要业务部门分别提供的简项降密之后的业务数据、组织的要素数据,主要由业务部门从专用数据库系统中筛选后手工摆渡至系统。索引数据库:基于基础汇集库、基础调研库、业务专题库、主题库、云文件中心等抽取提炼的全文索引。A缓存数据库:主要是用户进行海量数据分析操作时的数据暂存平台和大数据计算平台。A应用配置库:应用功能的相关配置信息,包括:用户、权限、各类标准参数、数据资源列表等。A应用日志库:应用和数据的操作日志存储。数据管理可以统一管理整个数据中心,包括:数据整合管理、数据资源监控、数据资源统计报表、数据质量管理等。4、应用支撑系统设计系统扫描节点使用大量VPS,VPS(VirtualPrivateServer虚拟专用服务器)技术,将一台服务器分割成多个虚拟专享服务器的优质服务。实现VPS的技术分为容器技术,和虚拟化技术。在容器或虚拟机中,每个VPS都可分配独立公网IP地址、独立操作系统、实现不同VPS间磁盘空间、内存、CPU资源、进程和系统配置的隔离,为用户和应用程序模拟出“独占”使用计算资源的体验。VPS可以像独立服务器一样,重装操作系统,安装程序,单独重启服务器。IDC资源租用,由VPS提供商提供。不同VPS提供商所使用的硬件VPS软件的差异。这些VPS主机以最大化的效率共享硬件、软件许可证以及管理资源。每个VPS主机都可分配独立公网IP地址、独立操作系统、独立超大空间、独立内存、独立CPU资源、独立执行程序和独立系统配置等.VPS主机用户除了可以分配多个虚拟主机及无限企业邮箱外,更具有独立主机功能,可自行安装程序,单独重启主机。5、应用系统设计5.1、 资产识别系统综合运用多种手段,准确、快速的发现目标中存活的网络设备,准确识别其相关属性:开放端口、提供服务、设备类型和厂商、使用组件名称和版本。可探测的网络设备类型包括:路由器、交换机、邮件服务器、网站服务器、数据库服务器、防火墙、打印设备、摄像头设备等。可探测的组件包括:Apache(Web容器)、IIS(Web容器)、WordPress(博客系统)、Discuz(论坛系统)、Mysql(数据库)等。同时,系统能够将网络资产的自有属性(资产所属部门和重要性等属性)与信息普查结果进行融合,管理收集与主动采集两个手段相配合,为技术侦查部门提供基础数据资源。具体资产类型分类: WEB服务容器信息 WEB应用类型信息:如CMS,ERP,OA等 主机资产指纹信息 端口信息 协议信息 I。T设备信息 网络摄像头信息 网络设备指纹信息 网络资产IP信息 地理位置信息5.2、 资产查询为了对数据进行有效处理和查询,对数据进行了数据预处理,删除无效及重复数据,根据预处理后的数据进行逐条解析并归一化,最后存储至数据库。数据数据归T七数据预处理解析处理存储数据存储使用EIaStiCSearCh数据库,存储大量数据,采用多台机器进行分布式集群部署。为了保证数据的可靠性和安全性,数据存储的同时创建备份,进行准备切换。也提高了查询的性能。提供APl接口,方便用户能够自动化对接。5.3、 资产数据分析挖掘系统可以针对目标网络设备的资产信息和漏洞信息,进行数据统计和趋势分析,从宏观上展现网络资产和风险情况,及其变化趋势。同时,用户可以根据需求选择数据统计和分析的不同维度,进行自定义的数据挖掘。5.4、 业务领先的资产指纹识别能力系统依赖于自主研发的组件识别调度框架、高效的组件识别引擎和海量精准的组件指纹库,并辅以不断更新组件指纹库的常态机制,保证系统的组件识别能力始终处于业界领先水平。5.5、 准确的资产与漏洞检测能力每当有新漏洞爆发,产品背后的安全团队会及时对漏洞进行分析与研究,掌握漏洞危害、验证方法以及修复措施,将信息整合推送至产品,保证产品对最新漏洞的响应速度。漏洞检测是基于已经发现的资产信息进行针对性的检测,根据资产类型选择适用性的检测策略,保证了整个检测过程的快速性。漏洞检测是通过漏洞特定验证工具来实现的,每个漏洞对应了一个特定的漏洞验证工具,漏洞存在时会展示漏洞验证的取证信息,保证了漏洞检测准确率高达99%o5.6、 独有扫描机制在对安全设备进行扫描时,一般扫描系统会依据IP地址进行按序扫描,而一些安全设备通常具有防扫描机制,会根据扫描的顺序性来判断,如果单一IP请求过于频繁且带有一定规则性,则容易被判定为扫描行为或攻击行为,后续的连接请求将会被阻断,这将会影响扫描结果。而本系统进行扫描时,会将IP列表进行拆分,打乱顺序进行扫描,扫描完成后将再次重新排列组合,避免被防扫描安全设备防御机制所阻断,大大提高了扫描成功率。5.7、 系统抓取分析技术系统使用了基于正则匹配、动态文档结构、动态脚本解析等技术来访问各种应用系统,从而在目标信息收集中不会出现系统地址及参数遗漏、解析错误等问题,确保了信息收集时数据的完整性。独有的基于智能指纹识匹配算法,能够准确识别各种类型系统的信息,避免与其他应用程序出现的误报现象。6、数据处理和存储系统设计6.1、 数据处理设计6.1.1离线计算 MapreduceD数据划分和计算任务调度:系统自动将一个作业(Job)待处理的大数据划分为很多个数据块,每个数据块对应于一个计算任务(Task),并自动调度计算节点来处理相应的数据块。作业和任务调度功能主要负责分配和调度计算节点(Map节点或Reduce节点),同时负责监控这些节点的执行状态,并负责Map节点执行的同步控制。2)数据/代码互定位:为了减少数据通信,一个基本原则是本地化数据处理,即一个计算节点尽可能处理其本地磁盘上所分布存储的数据,这实现了代码向数据的迁移;当无法进行这种本地化数据处理时,再寻找其他可用节点并将数据从网络上传送给该节点(数据向代码迁移),但将尽可能从数据所在的本地机架上寻找可用节点以减少通信延迟。3)系统优化:为了减少数据通信开销,中间结果数据进入Reduce节点前会进行一定的合并处理;一个Reduce节点所处理的数据可能会来自多个MaP节点,为了避免RedUCe计算阶段发生数据相关性,Map节点输出的中间结果需使用一定的策略进行适当的划分处理,保证相关性数据发送到同一个RedUCe节点;此外,系统还进行一些计算性能优化处理,如对最慢的计算任务采用多备份执行、选最快完成者作为结果。4)出错检测和恢复:在大规模MaPRedUCe计算集群中,节点硬件(主机、磁盘、内存等)出错和软件出错是常态,因此MaPRedUCe需要能检测并隔离出错节点,并调度分配新的节点接管出错节点的计算任务。同时,系统还将维护数据存储的可靠性,用多备份冗余存储机制提高数据存储的可靠性,并能及时检测和恢复出错的数据。 Spark构建在Spark上处理Stream数据的框架,是将Stream数据分成小的时间片断(几秒),以类似batch批量处理的方式来处理这小部分数据。SparkStreaming构建在Spark上,一方面是因为Spark的低延迟执行引擎(100ms+),虽然比不上专门的流式数据处理软件,也可以用于实时计算,另一方面相比基于ReCOrd的其它处理框架(如StOrn),一部分窄依赖的RDD数据集可以从源数据重新计算达到容错处理目的。此外小批量处理的方式使得它可以同时兼容批量和实时数据处理的逻辑和算法。方便了一些需要历史数据和实时数据联合分析的特定应用场合。6. L2流式实时计算 StormStOnn是个实时的、分布式以及具备高容错的计算系统。同HadOOP一样StOnn也可以处理大批量的数据,然而Storm在保证高可靠性的前提下还可以让处理进行的更加实时;也就是说,所有的信息都会被处理。StOnn同样还具备容错和分布计算这些特性,这就让StOrnI可以扩展到不同的机器上进行大批量的数据处理。 SparkStreamingSparkStreaming是核心SparkAPI的一个扩展,它并不会像StOnn那样一次一个地处理数据流,而是在处理前按时间间隔预先将其切分为一段一段的批处理作业。Spark针对持续性数据流的抽象称为DStream(DiscretizedStream),一个DStreanI是一个微批处理(micro-batching)的RDD(弹性分布式数据集);而RDD则是一种分布式数据集,能够以两种方式并行运作,分别是任意函数和滑动窗口数据的转换。6.1、 3查询分析采用HiVe算法,作为一个分布式、按列存储的数据仓库,管理HDFS中存储的数据,并提供基于SQL的查询语言(由运行时引起翻译成MapReduce作业)用以查询数据。6. L4数据挖掘与机器学习面向Hadoop的机器学习。用于预测分析和其他高级分析。MahoUt是一个很强大的数据挖掘工具是一个分布式机器学习算法的集合,包括:被称为TaSte的分布式协同过滤的实现、分类、聚类等。MahoUt最大的优点就是基于hadoop实现把很多以前运行于单机上的算法,转化为了MapReduce模式,这样大大提升了算法可处理的数据量和处理性能。包含算法有:算法类算法名分类算法LogisticRegression逻辑回归Bayesian贝叶斯SVM支持向量机Perceptron感知器算法NeuralNetwork神经网络RandomForests随机森林RestrictedBoltzmannMachines有限波尔兹曼机聚类算法CanopyClusteringCanopy聚类K-meansClusteringK均值算法FuzzyK-means模糊K均值ExpectationMaximizationEM聚类(期望最大化聚类)MeanShiftClustering均值漂移聚类HierarchicalClustering层次聚类DirichletProcessClustering狄里克雷过程聚类LatentDirichletAllocationLDA聚类SpectralClustering谱聚类关联规则挖掘ParallelFPGrowthAlgorithm并行FPGrowth算法回归LocallyWeightedLinearRegression局部加权线性回归降维/维约简SingularValueDecomposition奇异值分解PrincipalComponentsAnalysis主成分分析IndependentComponentAnalysis独立成分分析GaussianDiscriminativeAnalysis高斯判别分析进化算法并行化了Watchmaker框架推荐/协同过滤No11-diStributedrecommendersTaste(UserCF,ItemCF,SlopeOne)DistributedRecommendersItemCF向量相似度计算RowSimilarityJob计算列间相似度VectorDistanceJob计算向量间距离非Map-Reduce算法HiddenMarkovModels隐马尔科夫模型集合方法扩展Collections扩展了java的Collections类6.2、 数据存储系统设计HDFS文件系统存储Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(COnnnOdityhardware)上的分布式文件系统。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。HDFS放宽了一部分Pc)SIX约束,来实现流式读取文件系统数据的目的。HDFS在最开始是作为ApacheNutch搜索引擎项目的基础架构而开发的。HDFS是APaCheHadoopCore项目的一部分。HDFS有着高容错性(fault-tolerant)的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高吞吐量(highthroughput)来访问应用程序的数据,适合那些有着超大数据集(largedataset)的应用程序。HDFS放宽了(relax)Pc)SlX的要求(requirements)这样可以实现流的形式访问(streamingaccess)文件系统中的数据。特点和目标硬件故障硬件故障是常态,而不是异常。整个HDFS系统将由数百或数千个存储着文件数据片断的服务器组成。实际上它里面有非常巨大的组成部分,每一个组成部分都很可能出现故障,这就意味着HDFS里的总是有一些部件是失效的,因此,故障的检测和自动快速恢复是HDFS一个很核心的设计目标。数据访问运行在HDFS之上的应用程序必须流式地访问它们的数据集,它不是运行在普通文件系统之上的普通程序。HDFS被设计成适合批量处理的,而不是用户交互式的。重点是在数据吞吐量,而不是数据访问的反应时间,POSlX的很多硬性需求对于HDFS应用都是非必须的,去掉POSIX一小部分关键语义可以获得更好的数据吞吐率。大数据集运行在HDFS之上的程序有很大量的数据集。典型的HDFS文件大小是GB到TB的级别。所以,HDFS被调整成支持大文件。它应该提供很高的聚合数据带宽,一个集群中支持数百个节点,一个集群中还应该支持千万级别的文件。简单一致性模型大部分的HDFS程序对文件操作需要的是一次写多次读取的操作模式。一个文件一旦创建、写入、关闭之后就不需要修改了。这个假定简单化了数据一致的问题,并使高吞吐量的数据访问变得可能。一个Map-Reduce程序或者网络爬虫程序都可以完美地适合这个模型。移动计算比移动数据更经济在靠近计算数据所存储的位置来进行计算是最理想的状态,尤其是在数据集特别巨大的时候。这样消除了网络的拥堵,提高了系统的整体吞吐量。一个假定就是迁移计算到离数据更近的位置比将数据移动到程序运行更近的位置要更好。HDFS提供了接口,来让程序将自己移动到离数据存储更近的位置。异构软硬