网安入门1-渗透测试

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

本文将记录从头开始记录网安入门,从渗透测试开始描述


一、渗透测试 - 概述

渗透测试(Penetration Testing),就是一种通过模拟恶意工具者的技术与芳芳,挫败目标系统安全控制措施,取得访问控制权,并发现具备业务影响后果安全隐患的一种安全测试与评估方法。

简单来说,渗透测试是通过各种手段对目标进行一次渗透(攻击),通过渗透测试来测试目标的安全防护能力和安全防护意识。

比如:电视剧《我是特种兵》里面的演习,特种部队(进攻方)渗透到蓝军(防守方)的指挥部进行斩首,如果斩首成功,那么就可以知道蓝方的防守能力不够好,需要改进,反之就是特种部队的特征作战能力不足,需要提升。那么渗透测试⼯程师就相当于特种部队⾥⾯的特战队员,我们需要对我们的⽬标做一次渗透,以测试⽬标的防护能力。渗透测试工程师就相当于矛,目标就相当于盾。

渗透测试最主要的底层基础是目标系统中存在安全漏洞(指信息系统中存在的缺陷或不适当的配置,他们可使攻击者在未授权情况下访问或破坏系统,导致信息系统面临安全风险)。
利用安全漏洞来造成入侵或破坏效果的程序被称为渗透代码(Exploit),或者漏洞利用代码。

二、渗透测试分类

- 黑盒测试/外部测试
- 白盒测试/内部测试
- 灰盒测试/组合测试

1. 黑盒测试

黑盒测试(Black-box Testing)也称为为外部测试(External Testing)。采用这种方式时,渗透测试者将从一个远程网络位置来评估目标网络基础设施,并没有任何目标网络内部拓扑等相关信息。他们完全模拟真实网络环境中的外部攻击者,采用流行的攻击技术与工具,有组织、有步骤地对目标组织进行逐步渗透和入侵,揭示目标网络中一些已知或未知的安全漏洞,并评估这些漏洞能否被利用,以获取控制权或者操作业务造成资产损失等。

黑盒测试的缺点是测试较为费时和费力,同时需要渗透测试者具备较高的
技术能力。

优点在于,这种类型的测试更有利于挖掘出系统潜在的漏洞,以及脆弱环
节和薄弱点等

2. 白盒测试

白盒测试(White-box Testing)也称为内部测试(Internal Testing)。进行白盒测试的渗透测试者可以了解到关于目标环境的所有内部和底层信息。这可以让渗透测试人员以最小的代价发现和验证系统中最严重的漏洞。白盒测试的实施流程与黑盒测试类似,不同之处在于无须进行目标定位和情报收集。渗透测试人员可以通过正常渠道从被测试机构取得各种资料,如网络拓扑、员工资料甚至网站程序的代码片段等,也可以和单位其他员工进行面对面沟通。白盒测试的缺点是无法有效地测试客户组织的应急响应程序,也无法判断出他们的安全防护计划对特定攻击的检测效率。这种测试的优点是发现和解决安全漏洞所花费的时间和代价要比黑盒测试少很多。

3.灰盒测试

灰盒测试(Grey-box Testing)是白盒测试和黑盒测试基本类型的组合,它可以提供对目标系统更加深入和全面的安全审查。组合之后的好处就是能够同时发挥这两种渗透测试方法的优势。在采用灰盒测试方法的外部渗透攻击场景中,渗透测试者也类似地需要从外部逐步渗透进目标网络,但他所拥有的目标网络底层拓扑与架构将有助于更好地选择攻击途径与方法,从而达到更好的渗透测试效果。

三、渗透测试 - 目标分类

1、主机操作系统渗透:对Windows、Solaris、AIX、Linux、SCO、SGI等操作系统本身进行渗透测试。
2、数据库系统渗透:对MS-SQL、Oracle、MySQL、Informix、Sybase、DB2、Access等数据库应用系统进行渗透测试。
3、应用系统渗透:对渗透目标提供的各种应用,如ASP、CGI、JSP、PHP等组成的WWW应用进行渗透测试。
4、网络设备渗透:对各种防火墙、入侵检测系统、网络设备进行渗透测试。

四、渗透测试 - 过程环节

  1. 前期交互阶段(Pre-Engagement Interaction)
  2. 情报搜集阶段(Information Gathering)
  3. 威胁建模阶段(Threat Modeling)
  4. 漏洞分析阶段(Vulnerability Analysis)
  5. 渗透攻击阶段(Exploitation) 
  6. 后渗透攻击阶段(Post Exploitation)(清除痕迹)
  7. 报告阶段(Reporting)

1.前期交互阶段(商务)

在前期交互(Pre-Engagement Interaction)阶段,渗透测试团队与客户组织进行交互讨论,最重要的是确定渗透测试的范围、目标、限制条件以及服务合同细节。

该阶段通常涉及收集客户需求、准备测试计划、定义测试范围与边界、定义业务目标、项目管理与规划等活动。

2.情报搜集阶段(非常关键)

在目标范围确定之后、将进入情报搜集(Information Gathering)阶段,渗透测试集团可以利用各种信息来源与搜集技术方法,尝试获取更多关于目标组织网络拓扑、系统配置与安全防御措施的信息。

渗透测试者可以使用的情报搜集方法包括公开来源信息查询、Google Hacking、社会工程学、网络踩点、扫描探测、被动监听、服务查点等。而对目标系统的情报探查能力是渗透测试者一项非常重要的技能,情报搜集是否充分在很大程度上决定了渗透测试的成败,因为如果你遗漏关键的情报信息,你将可能在后面的阶段里一无所获。

3.威胁建模阶段(打点)

在搜集到充分的情报信息之后,渗透测试团队的成员们停下敲击键盘,大家聚到一起针对获取的信息进行威胁建模(Threat Modeling)与攻击规划。这是渗透测试过程中非常重要,但很容易被忽视的一个关键点。

通过团队共同的缜密情报分析与攻击思路头脑风暴,可以从大量的信息情报
中理清头绪,确定出最可行的攻击通道。

4.渗透攻击阶段(打点)

在确定出最可行的攻击通道之后,接下来需要考虑该如何取得目标系统的访问控制权,即漏洞分析(Vulnerability Analysis)阶段。

在该阶段,渗透测试者需要综合分析前几个阶段获取并汇总的情报信息,特别是安全漏洞扫描结果、服务查点信息等,通过搜索可获取的渗透代码资源,找出可以实施渗透攻击的攻击点,并在实验环境中进行验证。在该阶段,高水平的渗透测试团队还会针对攻击通道上的一些关键系统与服务进行安全漏洞探测与挖掘,期望找出可被利用的未知安全漏洞,并开发出渗透代码,从而打开攻击通道上的关键路径。

5.漏洞分析阶段(打点)

渗透攻击(Exploitation)是渗透测试过程中最具有魅力的环节。在此环节中,渗透测试团队需要利用他们所找出的目标系统安全漏洞,来真正入侵系统当中,获得访问控制权。

渗透攻击可以利用公开渠道可获取的渗透代码,但一般在实际应用场景中,渗透测试者还需要充分地考虑目标系统特性来定制渗透攻击,并需要挫败目标网络与系统中实施的安全防御措施,才能成功达成渗透目的。在黑盒测试中,渗透测试者还需要考虑对目标系统检测机制的逃逸,从而避免造成目标组织安全响应团队的警觉和发现。

6.后渗透攻击阶段(内网)

后渗透攻击(Post Exploitation)是整个渗透测试过程中最能够体现渗透测试团队创造力与技术能力的环节。前面的环节可以说都是在按部就班地完成非常普遍的目标,而在这个环节中,需要渗透测试团队根据目标组织的业务
经营模式、保护资产形式与安全防御计划的不同特点,自主设计出攻击目标,识别关键基础设施,并寻找客户组织最具价值和尝试安全保护的信息和资产,最终达成能够对客户组织造成最重要业务影响的攻击途径。

在不同的渗透测试场景中,这些攻击目标与途径可能是千变万化的,而设置是否准确并且可行,也取决于团队自身的创新意识、知识范畴、实际经验和技术能力。

7.报告阶段(交付)

渗透测试过程最终向客户组织提交,取得认可并成功获得合同付款的就是一份渗透测试报告(Reporting)。这份报告凝聚了之前所有阶段之中渗透测试团队所获取的关键情报信息、探测和发掘出的系统安全漏洞、成功渗透攻击的过程,以及造成业务影响后果的攻击途径,同时还要站在防御者的角度上,帮助他们分析安全防御体系中的薄弱环节、存在的问题,以及修补与升级技术方案。


渗透测试的意义

渗透测试是站在第三者的角度来思考企业系统的安全性的,通过渗透测试可以发觉企业潜在却未纰漏的安全性问题。企业可以根据测试的结果对内部系统中的不足以及安全脆弱点进行加固以及改善,从而使企业系统变得更加安全,减低企业的风险。

  • 22
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值