Web应用程序的敏感信息-隐藏目录和文件

本文探讨了Web应用程序中隐藏的敏感信息,如Git和SVN的版本控制文件、IDE(如JetBrains和NetBeans)的项目配置、特定技术的配置文件(如NodeJS和Ruby on Rails)。这些文件可能包含数据库连接信息、源代码管理细节以及项目设置,揭示了应用程序的架构和潜在的安全风险。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Web应用程序的敏感信息-隐藏目录和文件

0x1、场景

Web应用程序根文件夹中可能存在大量隐藏信息:源代码版本系统文件夹和文件(.git,.gitignore,.svn),项目配置文件(.npmrc,package.json,.htaccess),自定义配置文件使用config.json,config.yml,config.xml等常见扩展以及许多其他扩展。

资源可以分为几个常见类别:

  • 源代码版本控制系统
  • IDE(集成开发环境)配置文件
  • 项目和/或技术特定的配置和设置文件

1.1、GIT

Git是“(...)一个免费的开源分布式版本控制系统,新创建的Git存储库包含一些默认文件夹和文件,其中存储了所有信息。新创建的Git存储库包含一些默认文件夹和文件,其中存储了所有信息。

549050-20190414011954322-1353856598.png

.git文件夹的基本结构

对象可以是以下三种类型之一:committreeblob

Commit是有关提交的信息,具有当前树(文件夹和文件结构)对象哈希。

tree包含有关文件夹和文件结构的信息 - 每个文件夹或文件都有自己的对象哈希存储在树对象中。

Blob是Git对象类型,保存文件内容。知道特定文件的对象哈希,则可以使用 git cat-file命令读取此文件的内容。

1.2、Subversion (SVN)

Subversion(或SVN)是由Apache Software Foundation创建的源代码版本控制系统,SVN文件夹和文件的示例结构如下所示:

549050-20190414012040481-1414685109.png
.svn文件夹的基本结构

关键性的信息是SQLite数据库wc.db文件和pristine /目录的内容。在wc.db中存有pristine/*里相关文件名的哈希值。

http://server/path_to_vulnerable_site/.svn/wc.db

使用SQLite控制台客户端(或任何其他工具来管理SQLite数据库),阅读wc.db的内容

$ sqlite3 wc.db 
SQLite版本3.8.10.2 2015-05-20 18:17:19 
输入“.help”作为使用提示。
sqlite> .databases 
seq名称文件                                                       
--- --------------- ------------------------- --------------------------------- 
0 main /Users/bl4de/hacking/playground/wc.db                      
sqlite>。 dump 
PRAGMA foreign_keys = OFF; 
开始交易; 
CREATE TABLE REPOSITORY(id INTEGER PRIMARY KEY AUTOINCREMENT,root TEXT UNIQUE NOT NULL,uuid TEXT NOT NULL); 
插入“存储”值(1,'svn + ssh://192.168.1.4/var/svn-repos/project_wombat','88dcec91-39c3-4b86-8627-702dd82cfa09'); 

(......)

INSERT INTO“NODES”VALU
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值