网站平面设计,南昌做网站的公司多不多,手机立体房屋设计软件,乡村别墅室内装修设计效果图该知识领域涉及如下考点#xff0c;具体内容分布于如下各个子章节#xff1a;
设计和验证评估、测试和审计策略进行安全控制测试收集安全过程数据#xff08;例如#xff0c;技术和管理#xff09;分析测试输出并生成报告执行或协助安全审计
7.1. 构建安全评估和测试方案…该知识领域涉及如下考点具体内容分布于如下各个子章节
设计和验证评估、测试和审计策略进行安全控制测试收集安全过程数据例如技术和管理分析测试输出并生成报告执行或协助安全审计
7.1. 构建安全评估和测试方案
安全评估和测试方案是信息安全团队的基础维护活动。该方案包括测试、评估和审计定期验证组织是否己采取足够的安全控制及这些安全控制是否正常运行并有效地保护信息资产。
7.1.1. 安全测试
安全测试是验证某项控制措施是否正常运行。包括 自动化扫描 工具辅助的渗透测试 试图破坏安全的手动测试。
7.1.2. 安全评估
安全评估是对系统、应用程序或其他待测环境的安全性进行全面审查。通常包括
安全测试工具的使用但不限于自动化扫描和手工渗透测试。它们还包括对威胁环境、当前和未来风险、目标环境价值的细致审查。 安全评估的主要工作成果通常是向管理层提交的评估报告报告包括以非技术语言描述的评估结果并通常以提高待测环境安全性的具体建议作为结尾。 根据NIST 800-53A评估包括4个组成部分:
规范指与待审计系统有效的文档包括政策、要求、详细设计。机制信息系统中用于满足规范的控制措施。如IPS活动在信息系统中所采取的行动包括执行备份导出日志文件或审查账户历史记录。人员执行规范、机制和活动的人员。 评估可以由内部团队执行也可以外包到在待评估领域具备经验的第三方评估团队进行。 7.1.3. 安全审计
安全审计虽然与安全评估采用许多相同技术但必须由独立审核员执行。尽管组织安全人员定期执行安全测试和评估但这不是安全审计。区别点
安全评估与测试结果仅供内部使用旨在评估控制措施着眼于发现潜在的改进空间安全审计是为了向第三方证明控制措施有效性而进行的评估。安全审计结果供董事会、政府监管机构和其他第三方使用。
7.1.3.1. 审计标准
进行审计或评估时审计团队应明确评估组织所采用的标准。 信息和技术控制目标Control Objectives for Information and related TechnologyCOBIT是一个开展审计和评估的通用框架描述了组织围绕其信息系统所要具备的通用要求。 ISO发布了一套与安全相关的标准ISO 27001描述了建立信息安全管理系统的标准方法而ISO 27002则详细介绍了信息安全控制的细节是一项专注于信息安全的国际标准标题为“信息技术-安全技术-信息安全管理实践准则”。ITIL安全部分源自ISO 27002。
7.1.3.2. 三种审计类型
1. 内部审计 内部审计由组织内部审计人员执行审计负责人直接向总裁、CEO或董事会报告。 2. 外部审计 由外部审计公司执行。因为执行评估的审计员与组织没有利益冲突所以外审具有很高的公信力。知名的四大审计公司
安永(Ernst Young)德勤(Deloitte)普货永道(PricewaterhouseCoopers)毕马威(KPMG)
3. 第三方审计 由另一个组织进行的审计比如监管机构可依据合同或法律对被监管公司进行审计执行审计的组织通常会选择审核员和设计审计范围。美国注册会计师协会(American Institute of Certified Public Accountants AICPA)发布一个《认证参与标准声明文件 18》(The Statement on Standards for Attestation Engagements document 18, SSAE 18)标题为控制报告提供了一个通用标准供审计人员对服务组织进行评估目的是允许组织进行外部评估而不是多个第三方评估然后与客户和潜在客户共享结果报告。 SSAE 18和ISAE 3402审计通常被称为服务组织控制Service organization ConrtrolSOC审计它们有三种形式
SOC 1 参与评估可能影响财务报告准确性的组织控制措施。SOC 2 参与评估组织的控制措施这些控制措施会影响系统中存储信息的安全性机密性、完整性和可用性和隐私。SOC 2审计结果是保密的通常只在NDA下在组织外部共享。SOC 3 参与评估组织的控制措施这些控制措施会影响系统中存储信息的安全性可信度、完整性和可用性和隐私。然而SOC 3审计结果旨在公开披露。
除了三类SOC评估外还有两种不同类型的SOC报告。这两份报告都是从管理层对现有控制措施的描述开始的。审计师提供的意见范围不同
I类报告 这些报告提供了审计师对管理层提供的描述以及控制设计的适用性的意见。第一类报告也只涵盖一个特定的时间点而不是一个延长的时期。你可以把I类报告更多地看作是一种文件审查审计员在文件审查中检查书面情况并确保管理层描述的控制措施是合理和适当的。二类报告 这些报告更进一步还提供了审计师对控制措施运营有效性的意见。也就是说审计师实际上确认了控制措施的正常运行。第二类报告还涵盖了一段延长的时间至少六个月的运作。你可以认为第二类报告更像是一种传统的审计。审计员不仅仅是检查文件他们还将进入并验证控件是否正常工作。 1、SSAE-18不主张具体的控制。相反它审查被审计组织中控制措施的使用和应用。它是一个认证标准用于外部审计并构成SOC 1、2和3报告的基本框架的一部分。 2、SAS 70在2010年被SSAE 16标准取代该标准有三个SOC级别可供报告。SAS70包括2型报告涵盖数据中心并对2型报告使用了6个月的测试期。 7.2. 开展漏洞评估
7.2.1. 漏洞描述
NIST提供了安全内容自动化协议Security Content Automation ProtocolSCAP为漏洞描述和评估提供一种通用语言。SCAP组件包括
通用漏洞披露(Common Vulnerabilities and Exposures, CVE):提供一个描述安全漏洞的命名系统。通用漏洞评分系统(Common Vulnerability Scoring System, CVSS):提供一个描述安全漏洞严重性的标准化评分系统。通用配置枚举Common Configuration EnumerationCCE提供一个系统配置问题的命名系统通用平台枚举Common Platform EnumerationCPE提供一个操作系统、应用程序及硬件的命名系统可扩展配置检查表描述格式(Extensible Configuration Checklist Description Format,XCCDF)提供一种描述安全检查表的语言。开放漏洞评估语言Open Vulnerability and Assessment LanguageOVAL提供一种描述安全测试过程的语言。
7.2.2. 漏洞扫描
漏洞扫描可自动探测系统、应用程序及网络识别可能被攻击者利用的漏洞。主要分为4类
7.2.2.1. 网络发现扫描
网络发现扫描通过使用多种技术探测远程系统上的开放端口常见技术如下 TCP SYN扫描 向目标系统的每个端口发送一个SYN数据据如果扫描器收到SYN和ACK响应数据包则表明进入了TCP三次握手的第二阶段同时说明这个端口是开放的。TCP SYN扫描也称为半开放扫描。 TCP Connect扫描 向远程系统的某个端口创建全连接。适用于执行扫描的用户没有运行半开放扫描所需权限的场景。 TCP ACK扫描 发送ACK标志位的数据包表明它属于某个开放连接。这种扫描可以尝试确定防火墙规则。 Xmas扫描 发送设置FIN、PSH及URG标志位的数据包。 设置所有或大部分可能的TCP标志的TCP扫描被称为圣诞树或圣诞节扫描因为据说它会用这些标志“像圣诞树一样亮起来”。 网络发现扫描最常用的工具是Nmap可以提供端口的状态 开放该端口在远程系统上已经开放同时在该端口上运行应用程序主要接受连接请求 关闭该端口在远程系统可以访问意味着防火墙允许访问该端口但在该端口上没有运行接受连接请求的应用程序。 过滤因为防火墙会干扰连接尝试nmap无法确定端口是开放还是关闭。
7.2.2.2. 网络漏洞扫描
网络漏洞扫描相对发现扫描更深入不止步于探测开放端口会继续探测目标系统或网络发现已知漏洞。 网络扫描器默认执行非登录扫描但限制了充分发现系统可能存在漏洞。执行登录扫描可提高扫描准确性减少漏报和误报。
常用漏洞扫描器有Nessus、Qualys、Nexpose和OpenVAS。
7.2.2.3. Web应用漏洞扫描
Web应用程序为企业安全引入主要风险。如SQL注入攻击、XSS、CSRF等。
常用Web漏扫工具Acunetix、Burp Suite、Nikto和Wapiti。
7.2.2.3.1. 数据库漏洞扫描
虽然大多数据库受防火墙保护避免外部直接访问但Web应用程序会提供这些数据库的入口攻击者可利用Web应用程序来直接攻击后端数据库如SQL注入。
常用数据库漏扫工具sqlmap
7.2.3. 渗透测试
渗透测试实际上在尝试攻击系统所以比漏洞测试技术更进一步。执行渗透测试的安全专业人员尝试突破安全控制措施入侵目标系统或应用来验证漏洞。 渗透测试过程通常包括以下阶段
规划阶段包括测试范围和规则的协议。规划阶段是极其重要的它确保测试团队和管理人员对测试性质达成共识明确测试是经过授权的。信息收集和发现阶段结合人工和自动化工具来收集目标环境的信息。此阶段包括执行基本的侦察来确定系统功能(如访问系统上托管的网站)并执行网络发现扫描来识别系纺的开放端口 Whois可以提供有关组织的信息包括IP范围、物理地址和员工联系人。 漏洞扫描阶段探测系统脆弱点结合网络漏洞扫描、 Web 漏洞扫描和数据库漏洞扫描。漏洞利用阶段试图使用人工和自动化漏洞利用工具来尝试攻破系统安全防线。报告阶段 总结渗透测试结果并提出改进系统安全的建议。
渗透测试人员通常使用Metasploit工具支持使用脚本来实现常见攻击的自动化执行对目标系统进行漏洞利用。Metasploit提供了一个可扩展的框架允许渗透测试人员除了创建工具中内置的漏洞外还创建自己的漏洞利用。
在渗透测试中目录索引最初看起来可能不是一个问题但仅仅知道文件的名称和位置就可以为攻击者提供有关组织的大量信息以及潜在可访问文件的列表。
渗透测试不足点
渗透测试只能覆盖进行时的时间点。在进行渗透测试时由于脆弱的服务而导致拒绝服务的可能性始终存在但它可以通过社会工程和操作测试来测试流程和策略以验证这些流程和策略是如何工作的。 渗透测试通常划分为白盒渗透测试、灰盒渗透测试及黑盒渗透测试。 7.3. 软件测试
7.3.1. 代码审查与测试
7.3.1.1. 代码审查
代码审查Code Review也称同行评审Peer Review,即由其他开发人员审查代码是否存在缺陷。最正式的代码审查过程称为范根检测法Fagan inspections包含6个步骤规划-概述-准备-审查-返工-追查
7.3.1.2. 静态测试
不运行软件的情况下通过分析软件源码或编译后的应用程序评估软件的安全性
7.3.1.3. 动态测试
在软件运行环境下检测软件的安全性。测试人员无法接触源码在生产环境中动态测试应该谨慎开展避免服务的额外中断。
7.3.1.4. 模糊测试
模糊测试是一种特殊的动态测试技术向轮换提供无效的输入随机产生的或特殊构造来测试其限制发现之前 未检测到的缺陷。主要分为两大类
突变模糊测试(Mutation) 从软件实际操作获取输入值然后操纵变异输入值来生成模糊输入。预生成模糊测试(Generational) 设计数据模型基于对软件所用数据类型的理解创建新的模糊输入。 模糊测试通常不能完全覆盖所有代码一般仅限于不涉及复杂业务逻辑的简单漏洞。 7.3.2. 突变测试
突变测试以小的方式修改程序然后测试该突变体以确定它的行为是否正常或失败。该技术用于通过突变来设计和测试软件测试。
7.3.3. 接口测试
软件测试过程中需要测试的接口分为
APIsUIs包括图形用户界面和命令行界面。物理接口
7.3.4. 误用例测试
一些应用程序存在明显的说明示例展示软件用户可能尝试错误使用应用程序。
误用用例图使用的语言超出了典型用例图包括威胁和缓解措施。 误用测试关注的是组织所不希望的行为或与系统或应用程序的正确功能背道而驰的行为。用例测试用于验证所需的功能是否有效。动态测试用于确定代码如何处理随时间变化的变量 7.3.5. 测试覆盖率分析
测试覆盖率已测用例数量/全部用例数量。常用于以下标准分支覆盖率在所有if和else条件下每个if语句是否执行。条件覆盖率在所有输入集合下代码中的每个逻辑是否执行函数覆盖率代码中的每个函数是否已被调用循环覆盖率在导致代码执行多次、一次或0次的条件下代码中的每个循环是否执行语句覆盖率测试期间是否运行过每行代码。
7.3.6. 网站监测
安全专业人员也经常参与网站持续监控从事性能管理、故障排队、潜在安全问题识别等活动。主要可分为两类 被动监测 通过捕获发送到网站的实际网络流量进行分析。真实用户监控Real User MonitoringRUM是一种被动监测变体监测工具重组单个用户活动追踪其与网站的交互。
主动监测 对网站执行伪造的事件活动从而评估其性能。 基于签名的监测 包括IDS、IPS和反恶意软件系统。 【CISSP学习笔记】6. 安全开发【CISSP学习笔记】5. 安全架构和工程【CISSP学习笔记】4. 身份和访问管理【CISSP学习笔记】3.通信与网络安全【CISSP学习笔记】2.资产安全【CISSP学习笔记】1.安全与风险管理【CISSP学习笔记】0.开篇