✅一、了解渗透测试什么是渗透测试渗透测试是一种安全性测试通过发起模拟网络攻击的方式查找计算机系统中的漏洞。渗透测试人员是拥有高超道德黑客技术的安全专业人员道德黑客是指运用黑客工具和黑客技术来修复安全薄弱环节而不是造成伤害。许多企业会雇用渗透测试人员来对其应用程序、网络和其他资产发起模拟攻击。通过发起虚假攻击渗透测试人员可以帮助安全团队发现严重安全漏洞改善整体安全状况。术语“道德黑客”和“渗透测试”有时可以互换使用但存在差异。道德黑客是一个更广泛的网络安全领域包括任何运用黑客技能来改善网络安全的行为。渗透测试只是道德黑客运用的多种方法之一。道德黑客可能还会提供恶意软件分析、风险评估和其他服务。渗透分类黑盒测试是指测试人员在不清楚被测单位内部技术架构的情况下从外部对网络设施的安全性进行测试的过程。黑盒测试借助于真实世界的黑客方法、黑客工具有组织有步骤的对目标系统进行逐步的渗透和入侵揭示目标系统中一些已知的和未知的安全漏洞并评估这些漏洞是否可以被不法分子利用并造成业务和资产损失。白盒测试测试人员可以获取被测单位的网络结构和各种底层技术. 在此基础上使用针对性的测试方法和工具可以以较小的代价发现和验证系统最严重的安全漏洞 。 两者各有利弊需结合进行。灰盒测试渗透测试人员可以根据对目标系统获取的有限的知识和信息选择渗透测试的最佳路径渗透测试者也需要从外部逐渐的渗透进入内部网络同时他们所拥有的目标网络底层拓扑结构有助于他更好的选择攻击途径和方法从而达到更好的渗透测试效果。渗透基本概念肉鸡所谓“肉鸡”是一种很形象的比喻比喻那些可以被攻击者控制的电脑、手机、服务器或者其他摄像头、路由器等智能设备用于发动网络攻击。木马就是那些表面上伪装成了正常的程序但是当这些程序运行时就会获取系统的整个控制权限。有很多黑客就是热衷使用木马程序来控制别人的电脑比如灰鸽子。后门这是一种形象的比喻入侵者在利用某些方法成功的控制了目标主机后可以在对方的系统中植入特定的程序或者是修改某些设置用于访问、查看或者控制这台主机弱口令指那些强度不够容易被猜解的类似 123abc 这样的口令0day 漏洞在网络攻防的语境下0day 漏洞指那些已经被攻击者发现掌握并开始利用但还没有被包括受影响软件厂商在内的公众所知的漏洞1day 漏洞指漏洞信息已公开但仍未发布补丁的漏洞。此类漏洞的危害仍然较高但往往官方会公布部分缓解措施如关闭部分端口或者服务等。Nday 漏洞指已经发布官方补丁的漏洞。通常情况下此类漏洞的防护只需更新补丁即可但由于多种原因导致往往存在大量设备漏洞补丁更新不及时且漏洞利用方式已经在互联网公开往往此类漏洞是黑客最常使用的漏洞。免杀 3阶段杀指的是电脑中的安全防护软件会对我们电脑下载的或者储存的文件进行扫描如果发现危险会自行删除就是通过加壳、加密、修改特征码、加花指令等等技术来修改程序使其逃过杀毒软件的查杀。社工一种无需依托任何黑客软件更注重研究人性弱点的黑客手法正在兴起这就是社会工程学黑客技术。 通俗而言是指利用人的社会学弱点实施网络攻击的一整套方法论其攻击手法往往出乎人意料。提权 3阶段指得到你本没得到的权限比如说电脑中非系统管理员就无法访问一些 C 盘的东西而系统管理员就可以通过一定的手段让普通用户提升成为管理员让其拥有管理员的权限这就叫提权。网络靶场主要是指通过虚拟环境与真实设备相结合模拟仿真出真实赛博网络空间攻防作战环 境能够支撑攻防演练、安全教育、网络空间作战能力研究和网络武器装备验证试验平台。渗透核心概念POC 全称 ’ Proof of Concept 中文 ’ 概念验证 ’ 常指一段漏洞证明的代码EXP 全称 ’ Exploit 中文 ’ 利用 指利用系统漏洞进行攻击的动作Payload 中文 ’ 有效载荷 指成功 exploit 之后真正在目标系统执行的代码或指令Shellcode 简单翻译 ’ shell 代码 是 Payload 的一种由于其建立正向/反向 shell 而得名✅二、渗透分析流程1、前期准备制定渗透计划目标确定测试范围明确哪些系统、网络、应用或特定IP/域名将接受测试。测试账户如果测试需要特定的访问权限应事先准备或申请这些账户。测试规则和需求定义测试的具体目标如查找web应用的SQL注入漏洞、业务逻辑漏洞等。工具与资源工具选择适合的渗透测试工具如漏洞扫描器、端口扫描器、社会工程学技巧和密码爆破工具等。重点电脑、服务器、数据库、程序等是渗透测试的主要对象需要根据测试目标详细规划。SRC平台挖洞以下提到的SRC平台如补天、安恒SRC是安全漏洞响应中心SRC平台为白帽子提供了一个合法的渠道来发现和报告漏洞同时也为企业提供了一个高效的漏洞修复机制。企业可通过这些平台公开征集安全漏洞的发现和修复。虽然这不是渗透测试的直接步骤但了解这些平台有助于理解漏洞披露的正规渠道。补天https://www.butian.net/Reward/plan/2安恒https://www.anquanke.com/src/2、信息收集渗透测试的信息收集是一个全面而细致的过程需要收集各种类型的信息来全面了解目标并发现潜在的安全漏洞。这些信息将作为后续渗透测试的基础和依据。收集方式主动扫描 主动发送数据包到目标系统以探测目标系统的安全漏洞、开放端口、服务状态等信息。需要与目标系统建立直接的通信连接并发送特定的数据包来触发目标系统的响应。开放搜索 利用公开信息或开放资源进行搜索和发现安全漏洞的方法。这种方法可能包括使用搜索引擎、开放数据库、社交媒体等渠道来收集目标系统的相关信息。一、核心基础信息IP 地址目标主机的 IP 地址是渗透测试的基石信息。它是网络中标识主机的唯一数字标识是与目标进行网络通信和后续测试操作的起点。网段了解目标主机所在的网段能够帮助我们掌握目标网络的整体规模和结构布局。网段划定了一个特定的网络范围在这个范围内的主机通常具有相似的网络配置和安全策略有助于我们从宏观层面规划渗透测试的范围和策略。域名目标网站的域名是用户访问网站的常用 URL 地址也是信息收集的关键切入点。通过域名我们可以进一步挖掘与之相关的各种信息如子域名、网站架构等。子域名收集子域名能够显著扩大攻击范围。同一主域名下的二级域名通常属于相同的资产范畴彼此之间往往存在一定的关联。通过收集子域名可以发现更多处于渗透测试范围内的域名和子域名从而大大增加发现漏洞的概率。以下是一些可以用于收集vivo.com 子域名的在线工具查域名 https://chaziyu.com/vivo.com.cn/IP138 子域名查询 https://site.ip138.com/vivo.com.cn/domain.htm站长工具子域名查询 https://tool.chinaz.com/subdomain/vivo.com.cn二端口信息端口的重要性端口作为服务器与客户端进行交互的关键接口其作用举足轻重。不同的端口对应着不同的网络服务通过对目标主机开放端口的扫描我们可以了解主机上运行的各类程序和中间件进而发现潜在的服务漏洞。三操作系统信息收集识别操作系统的方法与意义通过向目标主机发送特定的探测包然后仔细分析响应包中的相关信息我们能够推测出目标主机所使用的操作系统类型及其版本。准确识别操作系统对于后续制定漏洞利用方案和攻击策略起着至关重要的作用因为不同的操作系统可能存在不同的安全漏洞和防护机制。四中间件信息收集中间件概述中间件是位于应用程序和操作系统之间的软件常见的有 Web 服务器如 Apache、Nginx 等以及应用服务器如 Tomcat、JBoss 等。收集的重要性收集中间件信息有助于我们全面了解目标网站的技术架构。基于对中间件的了解我们可以进一步发现可能存在的中间件漏洞为后续的渗透测试提供方向。五脚本语言信息识别识别脚本语言的途径通过深入分析网页源代码、HTTP 响应头等信息我们可以识别出目标网站所使用的脚本语言例如 JavaScript、PHP、ASP.NET 等。识别的作用了解网站使用的脚本语言有助于我们知晓网站的功能实现方式。同时不同的脚本语言可能存在各自特有的安全漏洞识别脚本语言能够帮助我们有针对性地进行安全漏洞排查。六数据库信息收集收集内容主要是了解目标网站所使用的数据库类型如 MySQL、SQL Server、Oracle 等以及对应的版本信息。收集的意义掌握数据库类型和版本信息后我们可以更有针对性地进行数据库漏洞扫描和渗透测试因为不同类型和版本的数据库存在的安全风险可能不同。3、靶场安装4、漏洞探测基于收集到的信息使用自动化或手动的方式对目标进行漏洞扫描查找可能的安全漏洞。工具扫描使用漏洞扫描工具如OpenVAS、Nessus、Acunetix等结合漏洞库如www.exploit-db.com 对目标系统进行全面的漏洞扫描。自己挖掘通过手动分析和测试目标系统以发现那些自动化扫描工具可能无法识别或漏报的潜在安全漏洞。这个过程需要深厚的网络安全知识和实践经验以及对各种攻击技术和漏洞原理的深入理解。以下为常见的漏洞类型及其挖掘方式弱口令定义弱口令是指容易被猜测或破解的密码如“123456”、“password”等常用密码。挖掘方式通过暴力破解、字典攻击等方式尝试登录目标系统的账号以发现是否存在弱口令问题。REC远程命令执行漏洞和远程代码执行漏洞定义REC漏洞包括远程命令执行RCE和远程代码执行RCE尽管这里可能有些重复但通常指不同层面它们允许攻击者远程执行系统命令或代码。挖掘方式通过输入特定格式的参数或利用应用程序的漏洞尝试执行系统命令或代码观察是否成功执行。SQL 注入定义SQL注入是一种通过向Web应用程序的输入字段中插入恶意SQL代码从而欺骗应用程序执行未授权的数据库操作的安全漏洞。挖掘方式在应用程序的输入字段中输入特殊字符如单引号、双引号、注释符号等尝试构造恶意的SQL查询观察是否成功获取数据库信息或执行未授权操作。XSS 跨站脚本攻击定义XSS是一种通过向网站注入恶意脚本代码从而窃取用户敏感信息或对用户进行欺骗、木马攻击等的网络安全漏洞。挖掘方式在网站的输入框、URL参数等位置输入恶意脚本代码观察是否能够在用户浏览器中成功执行。CSRF(跨站请求伪造)定义CSRF是一种网络攻击方式攻击者利用受害者的身份在受害者不知情的情况下执行未授权操作。挖掘方式分析目标网站的敏感操作如转账、修改密码等尝试构造恶意请求诱导受害者执行。SSRF(服务的请求伪造)定义SSRF是一种由攻击者构造的、由服务端发起请求的安全漏洞攻击者可以通过该漏洞对服务器所在的内网、本地服务器等进行攻击。挖掘方式通过向目标服务器发送包含内网IP地址或本地服务器资源的请求观察服务器是否发起了相应的请求。文件上传、下载漏洞定义文件上传、下载漏洞允许攻击者上传或下载恶意文件从而对服务器或用户造成危害。挖掘方式尝试上传或下载文件观察服务器是否对文件类型、大小等进行了有效的限制和验证。XXE(XML 外部实体注入)定义XXE是一种安全漏洞它允许攻击者利用XML解析器的漏洞读取服务器上的文件、执行系统命令或进行其他恶意操作。挖掘方式在XML数据输入点输入包含外部实体的XML数据观察服务器是否解析并执行了这些外部实体。5、漏洞验证对扫描出的漏洞进行验证确保漏洞的真实性和可利用性。验证方法包括自动化验证和手工验证有时还需要搭建模拟环境进行试验验证。自动化验证使用自动化工具对漏洞进行初步验证确认漏洞的真实性和可利用性。手工验证根据公开资源进行手工验证如exploit-db、wooyun等。尝试构建攻击场景模拟黑客攻击过程。实验验证在模拟环境中搭建目标系统的复制品进行漏洞利用实验。验证漏洞利用的成功率和效果。总结最后希望你编程学习上不急不躁,按照计划有条不紊推进,把任何一件事做到极致,都是不容易的,加油,努力相信自己文末福利最后这里免费分享给大家一份Python全套学习资料希望能帮到那些不满现状想提升自己却又没有方向的朋友也可以和我一起来学习交流呀。包含编程资料、学习路线图、源代码、软件安装包等① Python所有方向的学习路线图清楚各个方向要学什么东西② 100多节Python课程视频涵盖必备基础、爬虫和数据分析③ 100多个Python实战案例学习不再是只会理论④ 华为出品独家Python漫画教程手机也能学习✅可以扫描下方二维码领取【保证100%免费】