一、渗透测试

上一个笔记中的漏洞测试只是探测系统的漏洞。这些测试可以是主动的,与系统进行接触和互动,但它们很少有危险,因为它们通常不会进行攻击。也就是说,实际执行一次攻击是了解系统漏洞的最好方法。渗透测试通过让安全专家扮演攻击者的角色来实现这一目的。在渗透测试中,攻击者通常从收集系统信息开始,然后利用这些信息进行实际攻击。如果攻击者设法渗透到目标系统中,测试就被认为是成功的。其目的是通过试图绕过或击败安全控制来测试安全控制。

在开始渗透测试之前,重要的是要与测试的发起人见面,并明确测试的许可范围。需要知道我们被允许针对哪些系统以及被允许使用的技术。这些参数应该写在一个正式的文件中,称为渗透测试的参与规则,或ROE。渗透测试在开始前提供给测试人员的信息量方面有所不同,分为3类:

  1. 白盒测试中,攻击者对网络环境有充分的了解。这相当于模拟一次内部攻击;
  2. 黑盒测试中,攻击者事先对企业的IT环境没有任何了解,并试图在攻击阶段获得这些知识。这相当于模拟了一次外部攻击;
  3. 灰盒测试则介于两者之间,攻击者对系统有一些了解。这种方法通常被使用,因为它结合了黑盒测试的一些外部视角的好处和白盒测试的省时性。


美国国家标准与技术研究所(NIST)建议,渗透测试在发现阶段和攻击阶段之间来回循环

发现阶段,攻击者对系统进行侦查,并思考可能的利用途径。这个发现阶段可能包括主动和被动的侦察,并可能使用各种工具,包括开放源码情报、足迹,以及使用巡视来发现无线网络。一些渗透测试人员甚至会使用无人机和无人驾驶飞行器进行实地侦查,以搜索有漏洞的无线网络。

当渗透测试人员找到一个潜在的漏洞路径时,他们就会进入攻击阶段,在这个阶段,他们会设法获得对目标系统的访问,将这种访问升级到高级权限,然后浏览网络,寻找他们可以从这个有利位置访问的新系统。这种浏览也被称为横向移动(lateral movement)。他们还可能在被攻击的系统上安装额外的渗透测试工具,以努力获得对网络的更深入的访问。例如,如果渗透测试者利用漏洞获得了对应用服务器的访问权,他们可能会在该应用服务器上安装工具,试图获得支持该应用的数据库服务器的权限。在整个工作过程中,攻击者可能会循环往复,进行额外的发现,以获得新的信息和对目标环境的洞察力。

立足点(Pivot) 是渗透测试人员用来模拟真实攻击者活动的一个重要概念。使用这种技术,测试人员首先在一个安全性较弱的系统上对一个漏洞进行初始利用,但这个系统不是他们真正的目标。他们利用这个系统在网络上获得一个立足点,然后转换或转向攻击同一网络上的其他系统。渗透测试允许攻击者利用他们能找到的任何漏洞,然后利用该漏洞获得对更安全系统的访问。渗透测试人员使用的另一个重要概念是其攻击的持久性。一旦攻击者获得了对一个系统的访问权,他们可能会在该系统上安装一个后门,允许他们在未来重新获得对该系统的访问权。这些后门独立于攻击者用来获得系统初始访问权的漏洞,并可能允许攻击者谨慎地保留对系统的访问权,甚至在管理员修复了首先允许攻击的漏洞后。在测试结束后,攻击者应与组织合作,清理他们的攻击痕迹,将任何修改过的系统恢复到测试前的状态。

二、Bug赏金计划

Bug赏金计划提供了一个正式的程序,允许组织在一个受控的环境中开放其系统供安全研究人员检查,以鼓励攻击者以负责任的方式报告漏洞。部署Bug赏金计划的组织通常在专门设计、实施和操作这些计划的供应商的协助下进行。

Bug悬赏计划可以将熟练的攻击者的注意力吸引到我们的系统上。攻击者能够发挥他们的技能,但他们会以完全合法和正当的方式从其发现的问题中盈利。而赞助该计划的组织从攻击者的活动中学习,并能够加固他们的系统,这样针对同一漏洞的恶意攻击在未来就不会成功。

Bug赏金计划为技术领导者提供了一个关于其安全控制现状的重要视角。采用Bug赏金计划的组织发现它们在发现以前未知的漏洞方面相当成功。只要企业愿意跟进这些报告并修补通过Bug赏金计划提出的问题,该计划的存在就会增加企业防御态势的稳健性。

三、网络安全练习

一些渗透测试被设定为使用竞赛形式的练习,让一队攻击者与一队防御者对决。这种测试方法有两个目的。首先,它有助于识别组织的系统、网络和应用程序中的漏洞,就像单方面的渗透测试。其次,它为组织中的个人提供了攻击和防守系统的实践经验。这有助于提高技术人员的网络安全技能和意识。在进行演习时,参与者通常会被分成几个小组,这些小组的名字有颜色。红队由攻击者组成,他们将尝试访问测试环境中的系统。蓝队由防御者组成,他们必须确保这些系统不受攻击,并在演习期间对系统进行主动防御技术监控。

在大多数演习中,蓝队在攻击开始前会有一些时间来保护系统。白队是观察员和裁判,他们作为裁判解决规则上的争议,他们观察演习,记录从测试中获得的经验。白队能够观察红队和蓝队的活动,也负责确保演习不会造成生产问题。
在演习结束时,通常会让红队和蓝队一起分享有关战术和经验教训的信息。每个团队都会向对方介绍他们在演习中的角色,帮助大家从演习过程中学习。这种来自红队和蓝队的知识组合通常被称为 “紫队”,因为红队和蓝队结合起来就是紫色。这些演习的一个流行形式叫做夺旗。在这种类型的演习中,红队开始时有既定的目标,如破坏一个网站,从一个安全的系统中窃取一个文件,或造成其他安全故障。演习的评分依据是红队能够实现多少个目标,与蓝队阻止他们执行多少个目标相比。

当然,我们不需要使用生产系统进行演习。组织通常会建立一个专门用于演习的特殊环境。这为测试提供了一个安全的沙盒(sandbox),并将攻击破坏生产系统的概率降到最低。

参考资料来源:
https://www.linkedin.com/learning/paths/become-a-comptia-security-plus-certified-security-professional-sy0-601

Security+ 学习笔记8 渗透测试和安全练习相关推荐

  1. 学习笔记-网络安全渗透测试渗透测试流程

    网络安全渗透测试渗透测试 作为一次玩过安全渗透测试的执行者,首先要明确在整个渗透测试过程中需要进行的工作.当接收到客户的渗透测试任务时,往往对于所要进行的目标知之甚少或者一无所知.而在渗透结束的时候, ...

  2. Kali Linux学习笔记—无线渗透 WPA攻击(PSK破解、AIROLIB、JTR、cowpatty、pyrit)

    Kali linux 学习笔记 无线渗透--WPA攻击(PSK破解.AIROLIB.JTR.cowpatty.pyrit) PSK破解原理 PSK破解过程 实验步骤--使用字典rockyou.txt ...

  3. Kali Linux学习笔记—Web渗透(1)

    Kali Linux学习笔记-WEB渗透 侦察 Httrack 扫描 Nikto vega skipfish w3af Arachni OWASP_ZAP 必须掌握 Burpsuite 必须掌握 实验 ...

  4. 简单学习kali高级渗透测试思路方法

    前言 KaliLinux面向专业的渗透测试和安全审计,集成了大量精心挑选的安全检测工具.Kali Linux高级渗透测试在KaliLinux平台上从一个攻击者的角度来审视网络框架,详细介绍了攻击者&q ...

  5. 中国大学MOOC实用Python程序设计学习笔记和课后测试1-3周(北京大学)

    中国大学MOOC实用Python程序设计学习笔记和课后测试1-3周(北京大学) 第1周 Python初探 为project设置解释器 保留字 第1周课后测试题 第2周 基本运算.条件分支和输出格式控制 ...

  6. Maven 学习笔记 - 跳过测试 skipTests

    Maven 学习笔记 - 跳过测试 方案一 idea中操作 方案二 maven命令 方案三 maven打包插件配置 1. 跳过所有测试 2. 详细指定:包含.排除 参考资料 方案一 idea中操作 打 ...

  7. ROS_RGB-D SLAM学习笔记--室内环境测试

    ROS_RGB-D SLAM学习笔记 RTAB-Map's ros-pkg. RTAB-Map is a RGB-D SLAM approach with real-time constraints. ...

  8. 零基础如何学习Web安全渗透测试?推荐这份史上最详细的自学路线图!

    第 1 阶段 Web 技术入门 1.0 学习导论 此阶段,我们的学习目标是了解网络安全行业的法律法规 / 学习方法 / 求职目标,搭建属于自己的博客 / 论坛 / 网站(成为一名站长).掌握 Web ...

  9. 红队笔记之渗透测试流程以及各环节技术纲要

    相比传统渗透测试,红队则更趋于真实的入侵活动,红队这个词汇最先来源于军方的红蓝对抗活动.每一步入侵操作都有着其特有的战术和技术手段,而这些战术手段在实际过程中都绝不会是完全孤立使用的,需要多个手段相互 ...

  10. go-pitaya学习笔记(3)-小小的测试

    学习笔记: 我家别墅靠大海/pitaya-learn 尝试集成功能:我家别墅靠大海/pitaya-game 如果你正在看此笔记,请你左边放笔记,右边放chatdemo的代码!! 我是按代码的顺序记的笔 ...

最新文章

  1. apache activemq ActiveMQ 修改密码
  2. 程序员编码时都戴耳机?到底在听什么?
  3. CentOS屏幕录制
  4. 王爽汇编语言C硬盘读写,王爽汇编语言学习笔记(范文).doc
  5. MIPI related
  6. Qt Creator分析CPU使用率
  7. Matplotlib 可视化之箭头与标注的高级应用
  8. OScached页面缓存的入门使用
  9. centos 6.6 oracle 10g,centos 6.2 安装 oracle 10g 问题
  10. 路由器局域网设置_路由器基础介绍
  11. SQL Server 数据库文件管理
  12. oracle分区唯一索引,关于分区表与唯一索引的测试记录
  13. wps加载项的官方demo下载运行方式
  14. 如何用一般方式获取C币可用分
  15. 单片机技术及应用:基于proteus仿真的c语言程序设计,单片机的C语言程序设计与应用:基于Proteus仿真(第4版)...
  16. win10配置JDK环境变量
  17. 如何查看一篇论文是否被SCI检索
  18. DrawIO 基于MinIO以及OSS私有云方案
  19. 困难模式60级斗士双持武器(一手一把)技能点加发!--个人意见!
  20. 该换壁纸啦,记录一个用CSS和HTML做的3D立体相册

热门文章

  1. 如何不出国门走进NLP学术前沿
  2. 机器学习—LightGBM的原理、优化以及优缺点
  3. PyTorch学习笔记——PyTorch简介
  4. C# where()筛选方法
  5. 书单丨5本书带你学习Kubernetes,掌控云计算的未来
  6. 后端技术栈学习路线与面试技巧指北
  7. 身份认证设计的基本准则
  8. OPhone的多媒体模块支持的三种不同数据源
  9. 梁肇新《编程高手箴言》书评
  10. matlab rand函数