当前位置: 首页 > news >正文

CTF:信息泄露.(CTFHub靶场环境)

CTF:信息泄露.(CTFHub靶场环境)

“ 信息泄露 ” 是指网站无意间向用户泄露敏感信息,泄露了有关于其他用户的数据,例如:另一个用户名的财务信息,敏感的商业 或 商业数据 ,还有一些有关网站及其基础架构的技术细节 等泄露信息。泄露敏感的用户或业务数据的危险相当明显,但是泄露技术信息有时可能同样严重,尽管某些信息用途有限,但它可能是暴露其他攻击面的起点,其中可能包含其他的漏洞。

目录:

CTF:信息泄露.(CTFHub靶场环境)

CTF:信息泄露:

(1)目录遍历:

(2)PHPINFO:

(3)备份文件下载:

                1.网站源码:

                2.bak文件

                3.vim 缓存

                4..DS_Store

(4)git 泄露:

                1.Log

                2.Stash

                3.lndex

(5)SVN 泄露

(6)HG 泄露


CTF:信息泄露:

(1)目录遍历:

目录遍历是 Web 漏洞,该漏洞可以遍历服务器上的任意文件,可能包含用户数据、程序代码等敏感信息的泄露。漏洞原理是因为没有过滤用户输入的 ../ 相关的目录跳转符,使得攻击者通过目录跳转符来遍历服务器中的任意文件。


① 点击进入环境.


② 这里有提示信息,如果页面没有直接信息提示,我们按 F12 查看前端代码里面有没有信息提示.


③ 寻找 flag 文件 (我们知道这个是 目录遍历 漏洞,所以挨着点一个一个看就可了.)


(2)PHPINFO:

PHPInfo 函数信息泄露漏洞常发生一些默认的安装包,比如 phpstudy 等,默认安装完成后,没有及时删除这些提供环境测试的文件,比较常见的为 phpinfo.php、1.php 和 test.php,然后通过phpinfo 获取的 php 环境以及变量等信息,但这些信息的泄露配合一些其它漏洞将有可能导致系统被渗透和提权.


① 点击进入环境.


② 这里有提示信息,如果页面没有直接信息提示,我们按 F12 查看前端代码里面有没有信息提示.


③ 寻找 flag 文件.(查看了一下也没有其他可以操作的地方,所以直接查找页面 关键字 看看)

“ ctrl+f是查找的快捷键,一般是在大量笔墨网页或文档内快捷找到位置.” 


(3)备份文件下载:

1.网站源码:

当开发人员在线上环境中对源代码进行了备份操作,并且将备份文件放在了 web 目录下,就会引起网站源码泄露.


① 点击进入环境.


② 这里有提示信息,如果页面没有直接信息提示,我们按 F12 查看前端代码里面有没有信息提示.


③ 寻找 flag 文件.

方法:
(1)题目给的提示,然后每个都去试一遍.(2)使用 dirsearch 进行扫描. 


2.bak文件

当开发人员在线上环境中对源代码进行了备份操作,并且将备份文件放在了 web 目录下,就会引起网站源码泄露.


① 点击进入环境.


② 利用提示信息.


③ 寻找 flag 文件.(由于是 bak 文件的泄露,所以要在后面添加 .bak )


3.vim 缓存

当开发人员在线上环境中使用 vim 编辑器,在使用过程中会留下 vim 编辑器缓存,当vim异常退出时,缓存会一直留在服务器上,引起网站源码泄露。在编辑时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容.


① 点击进入环境.


② 利用提示信息.


③ 寻找 flag 文件.(由于是 vim 缓存 泄露,所以在要在后面添加 .swp 

后缀添加的 文件名 可能发生变化:第一次文件名可能为 .index.php.swp第二次文件名可能为 .index.php.swo 第三次文件名可能为 .index.php.swn从上到下每一个文明名都试一遍.

因为这是缓存文件,所以需要我们还原出原本的内容,使用 linux 系统:vim -r "index.php.swp"vim -r "文件名"


4..DS_Store

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


① 点击进入环境.


② 利用提示信息.(然后直接在后面添加 .DS_Store )


③ 寻找 flag 文件.

乱码,然后直接使用 linux 系统:(把文件放在 linux 系统中)cat DS_Store        // 打开文件


(4)git 泄露:

 git 是一个主流的分布式版本控制系统,开发人员在开发过程中经常会遗忘.git文件夹导致攻击者可以通过.git文件夹中的信息获取开发人员提交过的所有源码,进而可能导致服务器被攻击而沦陷。当前大量开发人员使用 git 进行版本控制,对站点自动部署。如果配置不当,可能会将.git文件夹直接部署到线上环境,这就引起了git泄露漏洞。


1.Log

由于 git log 命令用不了,后面找到方法,则完善.
(★★★致命错误:您的当前分支 'master' 尚无任何提交)

2.Stash


3.lndex


(5)SVN 泄露

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


准备工作(适合在 Linux 环境中使用):

(1)需要下载 dvcs-ripper 工具,这样方便 漏洞的利用.

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

(2)再安装工具所需依赖库:

sudo apt-get install perl libio-socket-ssl-perl libdbd-sqlite3-perl libclass-dbi-perl libio-all-lwp-perl


① 点击进入环境.


② 利用提示信息.(这里提示说是 SVN 泄露漏洞 


③ 寻找 flag 文件.(利用上面下载的工具)

先用扫描目录的工具,扫描到 .svn 的文件(dirb)

找到目录,再利用下载的工具 dvcs-ripper 工具将泄露的文件下载到本地目录中

切换到 下载的工具目录中: ./rip-svn.pl -u  泄露的 .svn 文件路径

下载下来后,查看有没有成功.ls -al

切换到 下载下来的目录中,查看文件去找这些目录中有没有 flag 文件的信息:cd .svncat wc.db             // 查找的过程中发现这个目录有 flag 信息

然后利用这个信息去访问一下,发现是 404 没有信息,可能已经被删除了.

但是网页提示说 flag 在服务端旧版本的源代码中,所以检查一下 pristine 文件是否存放 flag cd pristinels -al

切换到 38 这个文件,然后进行查看,发现 flag 信息.

 


(6)HG 泄露

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


 准备工作(适合在 Linux 环境中使用):

(1)需要下载 dvcs-ripper 工具,这样方便 漏洞的利用.

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

(2)再安装工具所需依赖库:

sudo apt-get install perl libio-socket-ssl-perl libdbd-sqlite3-perl libclass-dbi-perl libio-all-lwp-perl


① 点击进入环境.


② 利用提示信息.


③ 寻找 flag 文件.(利用上面下载的工具)

先用扫描目录的工具,扫描到 .hg 的文件.

找到目录,再利用下载的工具 dvcs-ripper 工具将泄露的文件下载到本地目录中

切换到 下载的工具目录中: ./rip-svn.pl -u  泄露的 .hg 文件路径

下载下来后,查看有没有成功.ls -al

切换到 下载下来的目录中,查看文件去找这些目录中有没有 flag 文件的信息:

cd .hg                // 切换到 .hg 文件ls                    // 查看 所以文件信息grep -r flag *        // 在这个目录的所以文件中 查找 flag 有关的信息

利用 找到的信息进行访问.(发现 flag 信息)

    

   

    

参考文章:ctfhub技能树 信息泄露 目录遍历 PHPINFO 备份文件下载_谨溪的博客-CSDN博客

相关文章:

CTF:信息泄露.(CTFHub靶场环境)

CTF:信息泄露.(CTFHub靶场环境) “ 信息泄露 ” 是指网站无意间向用户泄露敏感信息,泄露了有关于其他用户的数据,例如:另一个用户名的财务信息,敏感的商业 或 商业数据 ,还有一些有…...

Redis学习总结

Redis学习总结 文章目录 Redis学习总结Radis基本介绍docker的安装基本数据结构通用命令字符型key的层次结构Hash类型Listset sortedset集合redis的java客户端jedis的使用jedis连接池的配置 SpringDataRedis自定义redistemplate的序列化与反序列化方式stringtemplate的使用 redi…...

云原生全栈体系(二)

Kubernetes实战入门 第一章 Kubernetes基础概念 一、是什么 我们急需一个大规模容器编排系统kubernetes具有以下特性: 服务发现和负载均衡 Kubernetes 可以使用 DNS 名称或自己的 IP 地址公开容器,如果进入容器的流量很大,Kubernetes 可以负…...

C++设计模式之建造者设计模式

C建造者设计模式 什么是建造者设计模式 建造者设计模式是一种创建型设计模式,它是一种将复杂对象的分解为多个独立部分的模式,以便于构建对象的过程可以被抽象出来并独立变化。 该模式有什么优缺点 优点 灵活性:建造者设计模式允许对象的…...

HDFS Erasure coding-纠删码介绍和原理

HDFS Erasure coding-纠删码介绍和原理 三副本策略弊端Erasure Coding(EC)简介Reed- Solomon(RS)码 EC架构 三副本策略弊端 为了提供容错能力,hdfs回根据replication factor(复制因子)在不同的…...

STM32 DHT11

DHT11 DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。 使用单总线通信 该传感器包括一个电容式感湿元件和一个NTC测温元件,并于一个高性能8位单片机相连(模数转换)。 DHT11引脚说明 开漏模式下没有输出高电平的能…...

词法分析器

词法分析器 在早期编译1.0时代,我们的目标是完成程序语言到机器语言的翻译,所以重点在编译器前端,于是我们花费大量时间研究词法分析、语法分析、语义分析等内容。如今的本科编译原理课程,基本上也就到这一层面吧。 在编译2.0时…...

【Spring】Spring之启动过程源码解析

概述 我们说的Spring启动,就是构造ApplicationContext对象以及调用refresh()方法的过程。 Spring启动过程主要做了这么几件事情: 构造一个BeanFactory对象解析配置类,得到BeanDefinition,并注册到BeanFactory中 解析ComponentS…...

状态模式(State)

状态模式是一种行为设计模式,允许一个对象在其内部状态改变时改变它的行为,使其看起来修改了自身所属的类。其别名为状态对象(Objects for States)。 State is a behavior design pattern that allows an object to change its behavior when its inter…...

【uniapp】样式合集

1、修改uni-data-checkbox多选框的样式为单选框的样式 我原先是用的单选&#xff0c;但是单选并不支持选中后&#xff0c;再次点击取消选中&#xff1b;所以我改成了多选&#xff0c;然后改变多选样式&#xff0c;让他看起来像单选 在所在使用的页面上修改样式即可 <uni-d…...

【Spring框架】SpringBoot统一功能处理

目录 用户登录权限校验用户登录拦截器排除所有静态资源练习&#xff1a;登录拦截器拦截器实现原理 统一异常处理统一数据返回格式为什么需要统⼀数据返回格式&#xff1f;统⼀数据返回格式的实现 用户登录权限校验 用户登录拦截器 1.自定义拦截器 package com.example.demo.…...

51单片机学习--按键控制流水灯模式定时器时钟

TMOD负责确定T0和T1的工作模式&#xff0c;TCON控制T0和T1的启动或停止计数&#xff0c;同时包含定时器状态 TF1&#xff1a;定时器1溢出标志 TF0&#xff1a;定时器0溢出标志 0~65535 每隔1微秒计数器1&#xff0c;总时间65535微秒&#xff0c;赋上初值64535&#xff0c;则只…...

Django教程_编程入门自学教程_菜鸟教程-免费教程分享

教程简介 Django是一个开放源代码的Web应用框架&#xff0c;由Python写成。采用了MTV的框架模式&#xff0c;即模型M&#xff0c;视图V和模版T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的&#xff0c;即是CMS&#xff08;内容管理系统&#xf…...

VGG卷积神经网络-笔记

VGG卷积神经网络-笔记 VGG是当前最流行的CNN模型之一&#xff0c; 2014年由Simonyan和Zisserman提出&#xff0c; 其命名来源于论文作者所在的实验室Visual Geometry Group。 测试结果为&#xff1a; 通过运行结果可以发现&#xff0c;在眼疾筛查数据集iChallenge-PM上使用VGG…...

Python爬虫如何实现IP代理池搭建

大家好&#xff0c;作为一名IP代理产品供应商&#xff0c;我知道很多人在使用Python爬虫时遇到了一些麻烦。有时候&#xff0c;我们的爬虫在爬取过程中会被目标网站识别并封禁IP&#xff0c;导致我们的爬取任务受阻。今天我要分享的就是如何搭建一个高效稳定的IP代理池&#xf…...

单例模式:保证一个类只有一个实例

单例模式&#xff1a;保证一个类只有一个实例 什么是单例模式&#xff1f; 在软件开发中&#xff0c;有些类只需要一个实例&#xff0c;比如数据库连接池、线程池等。单例模式就是一种设计模式&#xff0c;用于确保一个类只有一个实例&#xff0c;并提供一个全局访问点。 实…...

【新版系统架构补充】-七层模型

网络功能和分类 计算网络的功能 &#xff1a;数据通信、资源共享、管理集中化、实现分布式处理、负载均衡 网络性能指标&#xff1a;速率、带宽&#xff08;频带宽度或传送线路速率&#xff09;、吞吐量、时延、往返时间、利用率 网络非性能指标&#xff1a;费用、质量、标准化…...

第2章 C语言概述

本章介绍以下内容&#xff1a; 运算符&#xff1a; 函数&#xff1a;main()、printf() 编写一个简单的C程序 创建整型变量&#xff0c;为其赋值并在屏幕上显示其值 换行字符 如何在程序中写注释&#xff0c;创建包含多个函数的程序&#xff0c;发现程序的错误 什么是关键字 C程…...

vscode vue3开发常用插件(附Prettier格式化配置)

必不可少插件(名称可能不全)&#xff1a; 1、Chinese (Simplified) (简体中文) Language 2、Prettier - Code formatter 3、Vue 3 Snippets 4、Vue Language Features (Volar) 可选插件&#xff1a; 5、Auto Close Tag 6、Vue Theme Prettier格式化配置&#xff1a; 按ctr…...

【微信小程序】van-uploader实现文件上传

使用van-uploader和wx.uploadFile实现文件上传&#xff0c;后端使用ThinkPHP。 1、前端代码 json&#xff1a;引入van-uploader {"usingComponents": {"van-uploader": "vant/weapp/uploader/index"} }wxml&#xff1a;deletedFile是删除文件函…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

【位运算】消失的两个数字(hard)

消失的两个数字&#xff08;hard&#xff09; 题⽬描述&#xff1a;解法&#xff08;位运算&#xff09;&#xff1a;Java 算法代码&#xff1a;更简便代码 题⽬链接&#xff1a;⾯试题 17.19. 消失的两个数字 题⽬描述&#xff1a; 给定⼀个数组&#xff0c;包含从 1 到 N 所有…...

相机从app启动流程

一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

C++中string流知识详解和示例

一、概览与类体系 C 提供三种基于内存字符串的流&#xff0c;定义在 <sstream> 中&#xff1a; std::istringstream&#xff1a;输入流&#xff0c;从已有字符串中读取并解析。std::ostringstream&#xff1a;输出流&#xff0c;向内部缓冲区写入内容&#xff0c;最终取…...

C++八股 —— 单例模式

文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全&#xff08;Thread Safety&#xff09; 线程安全是指在多线程环境下&#xff0c;某个函数、类或代码片段能够被多个线程同时调用时&#xff0c;仍能保证数据的一致性和逻辑的正确性&#xf…...

企业如何增强终端安全?

在数字化转型加速的今天&#xff0c;企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机&#xff0c;到工厂里的物联网设备、智能传感器&#xff0c;这些终端构成了企业与外部世界连接的 “神经末梢”。然而&#xff0c;随着远程办公的常态化和设备接入的爆炸式…...

基于matlab策略迭代和值迭代法的动态规划

经典的基于策略迭代和值迭代法的动态规划matlab代码&#xff0c;实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

Yolov8 目标检测蒸馏学习记录

yolov8系列模型蒸馏基本流程&#xff0c;代码下载&#xff1a;这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中&#xff0c;**知识蒸馏&#xff08;Knowledge Distillation&#xff09;**被广泛应用&#xff0c;作为提升模型…...

【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制

使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下&#xff0c;限制某个 IP 的访问频率是非常重要的&#xff0c;可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案&#xff0c;使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...