渗透测试导论

embedded/2024/10/19 2:26:21/

渗透测试的定义和目的

渗透测试(Penetration Testing)是一项安全演习,网络安全专家尝试查找和利用计算机系统中的漏洞。

模拟攻击的目的是识别攻击者可以利用的系统防御中的薄弱环节。

这就像银行雇用别人假装盗匪,让他们试图闯入建筑物并进入保管库一样。如果“盗匪”成功,进入了银行或保险库,则银行将了解到他们需要如何加强安全措施的宝贵信息。

人才需求

据ISC2报告统计,在过去的一年(2023)中,全球网络安全产业从业人员经历了显著增长,达到了550万

人,增幅达8.7%,创造了近44万个新岗位。然而数据显示,尽管从业人员队伍壮大,供需差距却随之

持续扩大,从业人员缺口同比增长了12.6%。这种供需不平衡的现象在所有地区均有体现,北美地区尤

其明显,分别在美国和加拿大实现了11.0%和13.4%的增长,而欧洲的增幅为7.2%。

在国际经济不确定性的环境下,网络安全行业同样未能逃脱冲击,ISC2调研显示47%的网络安全

从业人员经历了所在企业架构调整、预算削减及晋升冻结等情况。人员紧缺和技能缺口成为行业的重大

挑战,67%的受访者表示其所在组织缺乏必要的网络安全人员。

伴随国家新基建战略的推行,人工智能、大数据、云计算、物联网、5G 等新兴技术的高速发展,层出不穷的新型黑客攻击手法也随之而来,无数政府单位被定向攻击、企业核心数据被盗、个人敏感信息泄露。网络空间安全建设刻不容缓,已成为国家安全建设的重中之重。

在以前,很多政企单位在进行 IT 部门及岗位划分 时,只有研发和运维部门,安全人员直接归属到基础运维部;而现在,越来越多单位为了满足国家安全法律法规的要求,必须成立独立的网络安全部门,拉拢各方安全人才、组建 SRC(安全响应中心),为自己的产品、应用、数据保卫护航。

岗位分类

安全产品工程师(或者售后工程师)、安全咨询师(售前工程师)、渗透测试工程师、销售、安全开发工程师、安全运维工程师、应急响应工程师、等级保护测评师、安全服务工程师等。

资待遇

证书

优先推荐考这4个:cisp-pte、oscp、osep、cissp

渗透思路

1. 信息收集

信息收集是渗透测试的第一步,目的是获取目标系统的尽可能多的信息。此阶段可以分为两类:

  1. 主动信息收集:
    1. 使用工具和技术(如 Nmap、Wireshark 等)扫描网络,识别开放的端口和运行的服务
    2. 查询 DNS 信息,获取 IP 地址、子域名等。

  1. 被动信息收集:
    1. 通过搜索引擎(如 Google)查询目标公司的信息。
    2. 查看社交媒体、论坛或泄露的数据库以获取用户和组织信息。

2. 漏洞扫描

在获取足够的信息后,渗透测试人员将进行漏洞扫描,以识别潜在的安全漏洞。此阶段通常使用自动化工具,如 Nessus、OpenVAS 等,进行以下操作:

  1. 识别已知漏洞和配置错误。
  2. 评估服务和应用程序的安全性。
  3. 生成扫描报告,列出发现的漏洞及其严重性。

3. 漏洞挖掘

漏洞挖掘是针对扫描结果进行深入分析和手动验证的过程。此阶段通常包括:

  1. 选择已识别的漏洞进行验证(例如,SQL 注入、XSS 等)。
  2. 使用手动测试方法或特定工具(如 Burp Suite、Metasploit)进行进一步分析。
  3. 确认漏洞的存在性及其可利用性。

4. 开始攻击

一旦确定了可利用的漏洞,渗透测试人员将进行实际攻击。这一阶段的目标是获取对目标系统的访问权限。攻击的步骤可能包括:

  1. 利用已识别的漏洞(如使用已知的利用代码)。
  2. 进行社会工程学攻击(如钓鱼邮件)以获取凭证。

5. 权限维持(持久化)

权限维持是指在成功获得访问权限后,确保能够在目标系统上保持持久的访问。这通常包括:

  1. 安装后门或其他持久化工具,以便将来重新访问。
  2. 创建新的用户账户并赋予其管理员权限。

6. 权限提升

如果攻击者获得了低权限的访问权限,他们将尝试提升到更高的权限级别,以便进行更深层次的攻击。常见的权限提升技术包括:

  1. 利用操作系统或应用程序中的已知漏洞。
  2. 使用密码猜解或暴力破解方法获取管理员凭证。

7. 免杀隐藏

渗透测试过程中,攻击者可能会希望隐藏其活动以避免被检测。此阶段包括:

  1. 使用反病毒软件绕过技术。
  2. 隐藏恶意软件或工具,以避免被安全软件检测。

8. 横向移动

横向移动指的是攻击者在获得对一台系统的访问权限后,进一步渗透到同一网络中的其他系统。此阶段的步骤包括:

  1. 识别和利用网络上的其他设备和系统。
  2. 使用已获取的凭证在其他系统上进行认证和访问。

9. 痕迹清理

在完成渗透测试后,攻击者会清除其活动留下的痕迹,以确保不会被检测。此步骤可能包括:

  1. 删除日志文件中与攻击活动相关的记录。
  2. 清除任何安装的后门或恶意软件。

http://www.ppmy.cn/embedded/128619.html

相关文章

录自己一段音频,后续根据文字生成自己音色的音频(java实现)

目前自定义TTS(文字转语音)技术已经比较成熟了,在很多场景都有运用。比较常见的多是一些系统预制好的音色,然后提供文字,即可出来这个音色出来的音频。 随着AI技术的不断发展,以及大家对自定义音色的产品诉…

Spring Security 如何进行权限验证

阅读本文之前,请投票支持这款 全新设计的脚手架 ,让 Java 再次伟大! FilterSecurityInterceptor FilterSecurityInterceptor 是负责权限验证的过滤器。一般来说,权限验证是一系列业务逻辑处理完成以后,最后需要解决的…

VSCode运行QT界面

VSCode用久了,感觉Qt Creator的写起代码来还是不如VSCode得心应手,虽然目前还是存在一些问题,先把目前实现的状况做个记录,后续有机会再进一步优化。 当前方式 通过QtCreator创建一个CMake项目,然后使用CMake的方式在VSCode中进行编译。 claude给出的建议 左上角的名字会…

【Python从入门到进阶】66、Pandas怎样实现groupby每个分组的apply

接上篇《65、Pandas如何批量拆分与合并Excel文件》 上一篇我们学习了Pandas如何批量拆分与合并Excel文件,本篇我们来学习Pandas怎样实现groupby每个分组的apply。 一、Pandas中的groupby方法 1、groupby的基本概念 groupby方法的作用:groupby方法是Pa…

IBM Flex System服务器硬件监控指标解读

随着企业IT架构的日益复杂,服务器的稳定运行对于保障业务连续性至关重要。IBM Flex System作为一款模块化、可扩展的服务器解决方案,广泛应用于各种企业级环境中。为了确保IBM Flex System服务器的稳定运行,监控易作为一款专业的IT基础设施监…

Golang | Leetcode Golang题解之第473题火柴拼正方形

题目&#xff1a; 题解&#xff1a; func makesquare(matchsticks []int) bool {totalLen : 0for _, l : range matchsticks {totalLen l}if totalLen%4 ! 0 {return false}tLen : totalLen / 4dp : make([]int, 1<<len(matchsticks))for i : 1; i < len(dp); i {dp…

SpringCloud-OpenFeign-服务接口调用

是什么 把需要暴露的api使用接口来暴露&#xff0c;客户端需要调用的时候&#xff0c;直接查看这个接口中有没有就可以了 通用步骤 架构说明 common模块 common 引入 openfeign 新建服务接口类 FeignClient(value "cloud-payment-service") // 服务名 public i…

AdmX_new

0x00前言 因为环境问题&#xff0c;此次靶场都放在vm上。都为NAT模式。 靶机地址: https://download.vulnhub.com/admx/AdmX_new.7z 需要找到两个flag文件。 0x01信息搜集 搜集IP 确认目标IP为172.16.8.131&#xff0c;进一步信息搜集 获取端口开放情况&#xff0c;版本信…