渗透测试入门到入狱(附思维导图)| 寻找C站宝藏

本文详细介绍了渗透测试的流程,包括信息收集、端口扫描、漏洞扫描、漏洞攻击、提权权限维持和日志清理。重点讨论了 Web 应用、中间件、运维系统、数据库、服务协议等多个领域的常见漏洞和攻击手段,如 Tomcat、Jboss、WebLogic 的弱点,以及 Struts2、Spring 框架的安全问题。还涵盖了数据库如 MySQL、Oracle 的漏洞利用,以及 SMTP、FTP 等服务的攻击方法。最后提到了权限维持、日志清理策略和工具选择,强调了安全检查和防护的重要性。
摘要由CSDN通过智能技术生成

一、渗透流程#

信息收集

漏洞验证 / 漏洞攻击

提权,权限维持

日志清理

信息收集
一般先运行端口扫描和漏洞扫描获取可以利用的漏洞。多利用搜索引擎

端口扫描

有授权的情况下直接使用 nmap、masscan、自己写 py 脚本等端口扫描工具直接获取开放的端口和获取服务端的 banner 信息。

漏洞扫描

使用北极熊扫描器、Nessus、awvs 等漏扫工具直接扫描目标,可以直接看到存活主机和主机的漏洞情况。

 

二、漏洞攻击

如果只是使用端口扫描,只是发现开放的端口,在获取 banner 信息后需要在漏洞库(seebug,ExploitDB )上查找对应 CVE,后面就是验证漏洞是否存在。安全检查一般是尽可能的发现所有漏洞,对漏洞的风险进行评估和修复。入侵的话只关注高危远程代码执行和敏感信息泄露漏洞等可以直接利用的漏洞。漏洞验证可以找对应的 CVE 编号的 POC、EXP,利用代码在 ExploitDB 、seebug 上查看或者在 github 上搜索是否有相关的漏洞验证或利用的工具。

2.1 Web 应用

可以直接寻找注入、上传、代码执行、文件包含、跨站脚本、等漏洞,来进行攻击。一般可以使用 AWVS 直接扫描常见漏洞。

2.1.2 Web 中间件

(1)Tomcat

Tomcat 是 Apache Jakarta 软件组织的一个子项目,Tomcat 是一个 JSP/Servlet 容器,它是在 SUN 公司的 JSWDK(Java Server Web Development Kit)基础上发展起来的一个 JSP 和 Servlet 规范的标准实现,使用 Tomcat 可以体验 JSP 和 Servlet 的最新规范。

端口号:8080

攻击方法:

默认口令、弱口令,tomcat5 默认有两个角色:tomcat 和 role1。其中账号 both、tomcat、role1 的默认密码都是 tomcat。弱口令一般存在 5 以下的版本中。

在管理后台部署 war 后门文件

远程代码执行漏洞

(2) Jboss

是一个运行 EJB 的 J2EE 应用服务器。它是开放源代码的项目,遵循最新的 J2EE 规范。从 JBoss 项目开始至今,它已经从一个 EJB 容器发展成为一个基于的 J2EE 的一个 Web 操作系统(operating system for web),它体现了 J2EE 规范中最新的技术。

端口:8080

攻击方法:

弱口令

管理后台部署 war 后门

反序列化

远程代码执行

(3)WebLogic

WebLogic 是美国 Oracle 公司出品的一个 Application Server,确切的说是一个基于 JAVAEE 架构的中间件,WebLogic 是用于开发、集成、部署和管理大型分布式 Web 应用、网络应用和数据库应用的 Java 应用服务器。将 Java 的动态功能和 Java Enterprise 标准的安全性引入大型网络应用的开发、集成、部署和管理之中。

端口:7001,7002

攻击方法:

弱口令,弱密码一般为 weblogic/Oracle@123 or weblogic

管理后台部署 war 后门

SSRF

反序列化漏洞

weblogic_uac

(4) WebSphere

IBM 公司一套典型的电子商务应用开发工具及运行环境。

端口:默认端口:908*;第一个应用就是 9080,第二个就是 9081,控制台 9090

攻击方法:

控制台登录

很多内网 websphere 的控制台存在弱口令 / 默认口令,可以使用 admin/admin 以及 webshpere/webshpere 这种口令登录。通过该口令登录控制台后,可以部署 war 包,从而获取到 WEBSHELL 。

反序列化

任意文件泄露

(5) Glassfish

GlassFish 是一款强健的商业兼容应用服务器,达到产品级质量,可免费用于开发、部署和重新分发。开发者可以免费获得源代码,还可以对代码进行更改。

端口:4848

可利用漏洞:

任意文件读取

目录遍历

Server 管理控制台远程验证绕过

 

2.1.3 Web 框架


(1) Struts2

Struts2 是一个优雅的,可扩展的框架,用于创建企业准备的 Java Web 应用程序。出现的漏洞也着实的多每爆一个各大漏洞平台上就会被刷屏。

可利用漏洞:

S2-046 CVE-2017-5638 Struts 2.3.5-2.3.31,Struts 2.5-2.5.10

S2-045 CVE-2017-5638 Struts 2.3.5-2.3.31,Struts 2.5-2.5.10

S2-037 CVE-2016-4438 Struts 2.3.20-2.3.28.1

S2-032 CVE-2016-3081 Struts 2.3.18-2.3.28

S2-020 CVE-2014-0094 Struts 2.0.0-2.3.16

S2-019 CVE-2013-4316 Struts 2.0.0-2.3.15.1

S2-016 CVE-2013-2251 Struts 2.0.0-2.3.15

S2-013 CVE-2013-1966 Struts 2.0.0-2.3.14

S2-009 CVE-2011-3923 Struts 2.0.0-2.3.1.1

S2-005 CVE-2010-1870 Struts 2.0.0-2.1.8.1

(2)Spring 框架

Spring Framework 是一个开源的 Java/Java EE 全功能栈(full-stack)的应用程序框架,以 Apache License 2.0 开源许可协议的形式发布,也有.NET 平台上的移植版本。Spring Framework 提供了一个简易的开发方式,这种开发方式,将避免那些可能致使底层代码变得繁杂混乱的大量的属性文件和帮助类。

可利用漏洞:

CVE-2010-1622

CVE-2018-1274

CVE-2018-1270

CVE-2018-1273

反序列化

目录穿越

 

2.1.4 Web 服务器

IIS:Windows 的 WWW 服务器

端口:80

攻击方法:

IIS,开启了 WebDAV,可以直接详服务器 PUT 文件

短文件名枚举漏洞

远程代码执行

提权漏洞

解析漏洞

Apache

端口:80

攻击方法:

解析漏洞

目录遍历

Nginx

端口:80

攻击方法:

解析漏洞

目录遍历

CVE-2016-1247:需要获取主机操作权限,攻击者可通过软链接任意文件来替换日志文件,从而实现提权以获取服务器的 root 权限。

lighttpd

端口:80

攻击方法:

目录遍历


2.2 常见运维系统

一般分自动化部署和运维监控相关的的工具。漏洞可以通过搜索引擎搜索,github 搜索,ExploitDB 搜索,官网上的安全通告获取。内网的通

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值