Web 配置文件信息怎么收集
Web 配置文件通常包含连接数据库、调用第三方服务(API Key)、存储用户凭证加密密钥等高度敏感的信息。收集这些文件的目标路径和名称是信息搜集的重点
1. ASP.NET 网站 (.NET/IIS)
ASP.NET 网站的核心配置文件集中在应用的根目录,文件名固定,便于查找
目标文件 | 常见路径 | 敏感信息 |
---|---|---|
Web.config |
Web 应用根目录 | 数据库连接字符串(SQL Server/MySQL 等)、加密密钥(MachineKey)、会话状态配置、自定义应用设置 |
2. PHP 网站 (LAMP/LEMP)
PHP 网站的配置文件命名较为灵活,通常位于应用的根目录或专门的配置目录中。渗透测试时,需要重点关注包含 db
或 conn
字样的文件
目标文件 | 常见路径 | 敏感信息 |
---|---|---|
config.php |
根目录或 /config 目录 |
数据库连接参数、API Key、配置常量、Redis/Memcached 连接信息 |
db.php |
根目录或 /config 目录 |
数据库主机、端口、用户名、密码 |
conn.php |
根目录或 /config 目录 |
数据库连接函数或代码 |
database.php |
根目录或 /config 目录 |
数据库连接配置 |
3. Java/JSP 网站 (Tomcat/Spring)
Java 应用的配置文件散布在 WEB-INF/classes
目录中,它们通常是属性文件(Properties) 或 YAML/XML 格式。此外,应用服务器本身的配置文件也是重要的目标
目标文件 | 常见路径 | 敏感信息 |
---|---|---|
.properties 文件 |
webapps/[应用名称]/WEB-INF/classes 目录 |
application.properties , jdbc.properties , database.properties , db.properties 等,包含数据库连接、第三方服务配置 |
.yaml 文件 |
webapps/[应用名称]/WEB-INF/classes 目录 |
application.yaml 或 application.yml ,Spring Boot/Cloud 应用的核心配置文件,包含所有敏感配置 |
web.xml |
webapps/[应用名称]/WEB-INF 目录 |
部署描述符,可能包含Servlet/Filter 的初始化参数(如密码) |
tomcat-users.xml |
apache-tomcat/conf 目录 |
Tomcat 管理后台的用户名和密码,一旦获取,可直接控制应用服务器 |