信息泄露

信息泄露(Information Disclosure)通常指题目中意外暴露了敏感数据或隐藏信息,这些信息可能直接或间接帮助解题者获取Flag

常见类型如下:

HTTP请求
robots协议
目录扫描:dirsearch/gobuster扫描
源码泄露:git泄露/SVN泄露/HG泄露
文件/源码泄露
目录遍历
域名(DNS)解析

目录遍历

打开环境,是如下界面,查看源码并无有用信息

点击寻找flag

接下来只需要一个一个点击即可,找到此文件,点击即可查找flag

或者使用脚本获取

import requests

url = "http://challenge-915f58a5bc2422c4.sandbox.ctfhub.com:108000/flag_in_here/"

for i in range(5):
for j in range(5):
# URL字符串拼接
url_test =url+"/"+str(i)+"/"+str(j)
# 获取页面响应内容
r = requests.get(url_test)
# 设置编码方式
r.encoding = 'utf-8'
# 查找是否存在 flag.txt
get_file=r.text
if "flag.txt" in get_file:
print(url_test) # 此程序只适用于flag.txt文件形式存在的flag

PHPINFO

打开环境,查看源码,没有任何信息泄露,点击查看

ctrl+f,搜索flag,查找成功

备份文件下载

网站源码

打开环境

dirsearch扫描一下目录,发现www.zip

dirsearch -u http://challenge-b4ebb5050665bf49.sandbox.ctfhub.com:10800/ -e*

访问www.zip,下载该文件

打开压缩包逐一查看,都没有有用信息

在浏览器访问一下,得到flag

bak文件

.bak文件是常见的备份文件扩展名,通常由软件自动生成或用户手动创建,用于在修改或覆盖原始文件前保存副本

根据提示访问之后还是该页面

由题目名字尝试访问 index.php.bat

下载并查看,得到flag

也可以使用curl命令,将源码打印出来

vim缓存

当开发人员在线上环境中使用 vim 编辑器,在使用过程中会留下 vim 编辑器缓存,当vim异常退出时,缓存会一直留在服务器上,引起网站源码泄露。

这里介绍一下产生的结果:

第一次产生的交换文件名为 .index.php.swp
再次意外退出后,将会产生名为 .index.php.swo 的交换文件
第三次产生的交换文件则为 .index.php.swn

可以目录扫描一下该网站

访问一下,下载下来

这里可以直接访问获取

或者在kali里,执行以下命令恢复文件,任何查看即可

vim -r index.php.swp

.DS_Store

.DS_StoreMac OS 保存文件夹的自定义属性的隐藏文件。通过.DS_Store可以知道这个目录里面所有文件的清单。

访问 /.DS_Store并下载

在记事本打开,发现一个txt文件

访问该txt文件,得到flag

Git泄露

Git泄露通常指的是在使用Git进行版本控制时,意外地将敏感信息或代码公开。这可能包括机密数据、API密钥、密码或其他不应该公开的信息。Git泄露可能会导致安全风险,因为这些敏感信息可能被恶意用户利用。

工具下载

git clone https://github.com/BugScanTeam/GitHack.git

使用时候需要切换python2版本

update-alternatives --config python

Log

当前大量开发人员使用git进行版本控制,对站点自动部署。如果配置不当,可能会将.git文件夹直接部署到线上环境。这就引起了git泄露漏洞。请尝试使用BugScanTeam的GitHack完成本题

打开环境,在kali里执行以下命令

python GitHack.py http://challenge-8997207b4373c264.sandbox.ctfhub.com:10800/.git/

会在dist目录下生成一个文件

进入该文件,执行git log,可以看到flag在第二个日志信息里,使用版本回退命令-reset

git reset --hard c60e6bfeac9700e386a61a7169c311df9c4cf3a0

会在该目录下生成flag文件,打开即可

Stash

如此执行之后,打开文档内容是假的

具体方法和之前的相同,不同点在于需要将最新存储的更改(即最近的 stash)应用到你当前的工作分支上。

git stash pop

然后查看文档即可

Index

恢复完成之后在这个文档直接就可以查看

SVN泄露(subversion)

该题需要利用dvcs-ripper工具工具

git clone https://github.com/kost/dvcs-ripper

初始文件

检测该漏洞

访问 url/.svn/

结合提示确定是SVN泄露

执行以下命令

cd dvcs-ripper
perl rip-svn.pl -v -u http://challenge-00ab51d964931f2d.sandbox.ctfhub.com:10800/.svn/

ls -al查看,发现一个隐藏的.svn文件

entries:这是一个 XML 格式的文件,记录了当前目录下的所有条目(包括文件和子目录)的版本控制信息
format:这个文件记录了当前工作区使用的 SVN 格式版本
pristine:这是一个目录,用于存储文件的“原始”(pristine)版本
text-base :这是一个文件,用于存储某个文件的“基准”内容。如果一个文件未被修改,它的 text-base 文件与工作区文件完全一致。
tmp:这是一个临时目录,用于存储 SVN 操作过程中的一些临时文件
wc.db:这是工作区数据库文件(SQLite 格式),用于存储有关当前工作区的元信息
wc.db-journal:数据库的事务日志文件

wc.db是svn的数据库文件,查看

发现一个flag文件

查看 flag_2400911700.txt

根据题目提示在服务器旧版本中,pristine是存放旧版本源码的文件

得到flag

HG泄露(Mercurial)

当开发人员使用 Mercurial 进行版本控制,对站点自动部署。如果配置不当,可能会将.hg 文件夹(存在目录列表)直接部署到线上环境。这就引起了 hg 泄露漏洞。

检测方式

访问 http://目标地址/.hg/,若返回目录列表或非404状态码(如403),可能存在泄露。
访问关键文件(如http://目标地址/.hg/dirstate或http://目标地址/.hg/requires),若存在则确认泄露。
或者dirsearch目录扫描

执行以下命令恢复

cd dvcs-ripper
./rip-hg.pl -v -u http://challenge-bc1d26a96ebd2a34.sandbox.ctfhub.com:10800/.hg/

恢复完成之后查看,可以看到是存在flag的,蓝色的表示是一个目录

进入store目录查看

再看看fncache文件

最后在浏览器访问即可

http://challenge-bc1d26a96ebd2a34.sandbox.ctfhub.com:10800/flag_2857223930.txt

CTFHub技能树-信息泄露wp的更多相关文章

  1. ctfhub技能树—信息泄露—hg泄露

    打开靶机 查看页面信息 使用dvcs-ripper工具进行处理 ./rip-hg.pl -v -u http://challenge-cf630b528f6f25e2.sandbox.ctfhub.c ...

  2. ctfhub技能树—信息泄露—svn泄露

    打开靶机 查看页面信息 使用dvcs-ripper工具进行处理 ./rip-svn.pl -v -u http://challenge-3b6d43d72718eefb.sandbox.ctfhub. ...

  3. ctfhub技能树—信息泄露—git泄露—index

    打开靶机 查看页面信息 使用dirsearch进行扫描 使用githack工具处理git泄露情况 使用git log命令查看历史记录 与 add flag 9b5b58-- 这次提交进行比对 即可拿到 ...

  4. ctfhub技能树—信息泄露—git泄露—Log

    什么是git泄露? 当前大量开发人员使用git进行版本控制,对站点自动部署.如果配置不当,可能会将.git文件夹直接部署到线上环境.这就引起了git泄露漏洞. 打开靶机环境 查看网页内容 使用dirs ...

  5. ctfhub技能树—信息泄露—备份文件下载—vim缓存

    打开靶机 查看页面信息 在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容 以 index.php 为例:第 ...

  6. ctfhub技能树—信息泄露—备份文件下载—bak文件

    打开靶机 查看页面信息 继续使用dirsearch进行扫描 python3 dirsearch.py -u http://challenge-d4234042e1d43e96.sandbox.ctfh ...

  7. ctfhub技能树—信息泄露—git泄露—Stash

    打开靶机环境 查看页面内容 使用dirsearch进行扫描 使用Githack工具处理git泄露情况 进入.git/refs目录 发现stash文件,使用notepad++打开文件 使用git dif ...

  8. ctfhub技能树—信息泄露—备份文件下载—.DS_Store

    打开靶机 查看页面信息 使用dirsearch进行扫描 访问该网页,下载文件 使用Linux系统打开文件 发现一个特殊文件,使用浏览器打开 拿到flag 二.使用Python-dsstore工具查看该 ...

  9. ctfhub技能树—信息泄露—备份文件下载—网站源码

    打开靶机 查看网页内容 使用dirsearch进行扫描 命令如下 python3 dirsearch.py -u http://challenge-91f1f5e6a791ab02.sandbox.c ...

  10. ctfhub技能树—信息泄露—目录遍历

    打开靶机 查看页面 点击后发现几个目录 于是开始查找 在2/1目录下发现flag.txt 成功拿到flag 练习一下最近学习的requests库 附上源码 #! /usr/bin/env python ...

随机推荐

  1. HTML5 新的语义标签

    1.常用的语义标签 意义:语义标签便于阅读代码,也便于搜索引擎解析文档结构与内容 标签 含义 article 定义页面独立的内容区域 aside 定义侧边栏内容 header 定义了文档的头部区域 s ...

  2. Linux查看进程所在目录

    通过ps 或 top 查看进程信息时,只能查到进程的相对路径,查不到进程的详细信息,如绝对路径等,我们可以通过下面的方法进行查询 1. 通过ll /proc/PID 命令查看进程所在的目录位置 lin ...

  3. PLC编程—编程语言

    LAD:图形编程语言(电路图表示法--梯形图). FBD:图形编程语言(电路系统表示法--功能块图). SCL:结构化编程语言之一. STL:文本编程语言. 常用的指令 位.定时.计数.比较.数学.赋 ...

  4. Node开发规范v1.0

    一.空格与格式 (一)缩进 采用2个空格缩进,而不是tab缩进. 空格在编辑器中与字符是等宽的,而tab可能因编辑器的设置不同.2个空格会让代码看起来更紧凑.明快. 变量声明 永远用var声明变量,不 ...

  5. docker安装Nginx并运行vue3前端

    Docker安装Nginx #获取Nginx docker pull nginx #查端口 netstat -ntlp #建本地目录 mkdir -p /home/nginx/www /home/ng ...

  6. 【Amadeus原创】更改docker run启动参数

    经过一整天的摸索,答案: 没法直接修改.只能另外创建. 但是还好不用完全重头来,用docker commit命令可以基于当前修改的内容创建一个新的image. 执行docker 看看帮助先: Comm ...

  7. R数据分析:临床研究样本量计算、结果解读与实操

    很久之前给大家写过一篇文章详细介绍了样本量计算的底层逻辑,不过那篇文章原理是依照卡方比较来写的,可以拓展到均值比较,但视角还是比较小,今天从整个临床研究的角度结合具体的例子谈谈大家遇到的样本量的计算方 ...

  8. 【C#】根据分数求出相应的成绩等级

    设计窗体程序,使用文本框控件输入百分制成绩,实现将学生的百分制成绩转换为对应的等级成绩(优.良.中.及格.不及格). 要求:必须使用异常处理技术,优先使用switch-case的方式 点击查看代码 | ...

  9. linux tc命令进行网络限速、丢包、延迟设置(简单使用)

    linux自带tc命令版本不是很低的linux系统都自带tc如果你的系统不带这个命令,建议使用类似括号中的命令进行安装 (yum -y install iproute) TC 中使用下列的缩写表示相应 ...

  10. Gitlab 实现仓库完全迁移

    方法一:最快 gitlab用url导入注意事项看图 方法二 首先需要在新的服务服务器上新建一个项目 然后用 Git Bash 执行以下命令 git clone --mirror 项目原代码仓库地址 / ...