渗透测试导论

news2024/10/19 3:56:13

渗透测试的定义和目的

渗透测试(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.coloradmin.cn/o/2218209.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

day-68 使二进制数组全部等于 1 的最少操作次数 I

思路 关键:对同一个i至多操作一次,就可以做到最少的操作次数,且操作的顺序不重要,那么即可从左到右操作,结果一样的,遇到1不操作,遇到0则操作,用一个变量记录操作次数,最…

Go程序的一生——Go如何跑起来的?

​​​​​​​ 引入 我们从一个 Hello World 的例子开始: package mainimport "fmt"func main() {fmt.Println("hello world") }当我用我那价值 1800 元的 cherry 键盘潇洒地敲完上面的 hello world 代码时,保存在硬盘上的 hell…

青少年编程能力等级测评CPA C++一级试卷(1)

青少年编程能力等级测评CPA C一级试卷(1) 一、单项选择题(共20题,每题3.5分,共70分) CP1_1_1.在C中,下列变量名正确的是( )。 A.$123 B&#…

无人机之定高算法篇

一、无人机高度测量原理 无人机的高度测量通常依赖于多种传感器,其中主要包括: 气压计:通过测量大气压力的变化来确定高度。在大气中,随着高度的增加,气压会逐渐降低。无人机搭载的气压计会感知大气的压力变化&#…

当我们修复测试用例时,到底是修复的什么?

当我们运行了测试用例,发现其中一些测试用例未能通过。ok,这下要修复测试用例了!但是,到底需要修复哪些内容呢? 其实从用例被加载到最终执行的过程中,有很多因素可能导致测试失败: 在测试构建过…

C语言中的文件操作:从基础到深入底层原理

文件操作是几乎所有应用程序的重要组成部分,特别是在系统级编程中。C语言因其高效、灵活以及接近硬件的特点,成为了文件操作的理想选择。本文将全面深入地探讨C语言中的文件操作,从文件系统的概念到具体的文件操作函数,再到底层的…

生成器和迭代器

迭代器 定义 迭代器是一个实现了选代协议的对象,它可以让我们遍历一个容器中的所有元素,而不需要知道容器的内部结构,迭代器可以被用于遍历列表、元组、字典、集合等容器类型。 工作原理 __iter__():方法返回迭代器对象本身,有…

《15分钟轻松学Go》教程目录

在AI快速发展的时代,学习Go语言依然很有用。Go语言擅长处理高并发任务,也就是说可以同时处理很多请求,这对于需要快速响应的AI服务非常重要。另外,Go适合用来处理和传输大量数据,非常适合机器学习模型的数据预处理。 …

leetcode动态规划(一)-理论基础

本节主要参考:代码随想录 题目分类 动态规划释义 动态规划,英文:Dynamic Programming,简称DP,如果某一问题有很多重叠子问题,使用动态规划是最有效的。 动态规划中每一个状态一定是由上一个状态推导出来…

WinX86内核02-驱动程序

把昨天的程序改用 c++ 编译,改成 .cpp ,发现编译报错 原因是名称粉碎,因此可以直接 extern “C”声明一下这个函数 或者用 头文件(推荐) 因为 在头文件中 可以把 头文件一起包含进去 #pragma once extern "C" { #include <Ntddk.h> ​ /*驱动入口函…

一文搞懂模型倍率怎么计算的,以及模型分组倍率原理!

&#x1f4cd; 已知&#xff1a; ① 输入token&#xff1a;又名 提示、Input token 数 ② 输出token&#xff1a;又名 补全、Output token 数 &#x1f4cd; 基准价格【最初 gpt3.5 的价格&#xff0c;所以倍率越大&#xff0c;越聪明越贵&#xff0c;倍率越小越省钱越笨】 on…

秋招面试题记录

嵌入式软件开发 网上搜集的题目 1.Static关键词的作用&#xff1f; static 关键字有三个主要作用&#xff1a; 局部变量&#xff1a;在函数内部&#xff0c;static 局部变量只初始化一次&#xff0c;且在函数调用结束后仍然保留其值。全局变量/函数&#xff1a;在文件内部&a…

产品自问:前台和中后台

产品自问&#xff1a;前台和中后台 叮嘟&#xff01;这里是小啊呜的学习课程资料整理。好记性不如烂笔头&#xff0c;今天也是努力进步的一天。一起加油进阶吧&#xff01; 前台和中后台通常根据以下几个方面进行区分&#xff1a; 一、功能定位 前台&#xff1a;主要面向外部…

redo文件误删除后通过逻辑备份进行恢复

问题描述 开发同事让在一个服务器上查找下先前库的备份文件是否存在&#xff0c;如果存在进行下恢复。翻了服务器发现备份文件存在&#xff0c;多愁了一眼竟翻到了该备份文件于2024.6.17日恢复过的日志&#xff0c;赶紧和开发沟通说2024.6.17号已经恢复过了为啥还要恢复&#x…

【Linux】Anaconda下载安装配置Pytorch安装配置(保姆级)

目录 Anaconda下载 Anaconda安装 conda init conda --v Conda 配置 conda 环境创建 conda info --envs conda list Pytorch安装配置 检验安装情况 检验是否可以使用GPU Anaconda下载 可以通过两种途径完成Anaconda安装包的下载 途径一&#xff1a;本地windows下…

了解静态存储方式和动态存储方式的区别(超详细讲解)快来看

本篇通过一个代码题来考察静态变量和动态变量的区别&#xff0c;主要考察静态变量的值。 在前2章我们讲了变量可以分为全局变量和局部变量&#xff0c;而我们的变量&#xff0c;它的存储又有两种不同的方式:静态存储方式与动态存储方式。 自动局部变量:auto 静态局部变量:stati…

emwin的异常显示和父子坐标问题(瞎写的,别看 -- 2)

文章目录 4&#xff0c;想显示成 最后的demo 仿真器中 1&#xff0c;格子状显示 把下面这句注释掉&#xff0c;就可能会这么显示 WM_SetCreateFlags(WM_CF_MEMDEV);2&#xff0c;显示一副灰度图 很有可能你是这么写的 也就是 hMemDev GUI_MEMDEV_CreateFixed(0, 0, 200, …

Redis-02 单线程与高性能

Redis是单线程吗&#xff1f; Redis不是只有一个线程&#xff0c;通常所说Redis 的单线程主要是指 Redis 的网络 IO 和键值对读写是由一个线程来完成的&#xff0c;这也是 Redis 对外提供键值存储服务的主要流程。但 Redis 的其他功能&#xff0c;比如持久化、异步删除、集群数…

BGP(边界网关协议)

1、网络AS&#xff08;自治系统&#xff09; 边界网关协议BGP&#xff08;Border Gateway Protocol&#xff09;是一种实现自治系统AS&#xff08;Autonomous System&#xff09;之间的路由可达&#xff0c;并选择最佳路由的距离矢量路由协议。 AS是指在一个实体管辖下的拥有…

【c++并发编程】线程池实现

参考https://shanhai.huawei.com/#/page-forum/post-details?postId43796 完整代码 #include <iostream> #include <vector> #include <queue> #include <thread> #include <mutex> #include <condition_variable> #include <functi…