信息泄露总结

news2024/11/16 9:57:09

文章目录

  • 一、备份文件下载
    • 1.1 网站源码
    • 1.2 bak文件泄露
    • 1.3 vim缓存
    • 1.4 .DS_Store
  • 二、Git泄露
    • 2.1 git知识点
    • 2.1 log
    • 2.2 stash
  • 三、SVN泄露
    • 3.1 SVN简介
    • 3.2 SVN的文件
    • 3.3 SVN利用
  • 四、Hg泄露

一、备份文件下载

1.1 网站源码

  常见的网站源码备份文件后缀:

  • tar
  • tar.gz
  • zip
  • rar
      常见的网站源码备份文件名:
  • web
  • website
  • backup
  • back
  • www
  • wwwroot
  • temp

1.2 bak文件泄露

  有些时候网站管理员可能为了方便,会在修改某个文件的时候先复制一份,将其命名为xxx.bak。而大部分Web Server对bak文件并不做任何处理,导致可以直接下载,从而获取到网站某个文件的源代码。
  方法:将例如index.php.bar文件重命名index.php,再打开。
在这里插入图片描述

1.3 vim缓存

  当vim异常退出时,都会生成一个用于备份缓冲区内容的swp临时文件,来记录了用户在非正常关闭vim编辑器之前未能及时保存的修改,用于文件恢复。假如原文件名为index.php

  • 第一次产生的交换文件名为 .index.php.swp
  • 第二次产生的交换文件名为 .index.php.swo
  • 第三次产生的交换文件名为 .index.php.swn

方法:同上,改文件名为index.php再打开。

1.4 .DS_Store

  .DS_Store是 Mac OS 保存文件夹的自定义属性的隐藏文件,通过.DS_Store可以知道这个目录里面所有文件的清单。直接访问xxx/.DS_Store可以下载该文件,但是无法读取,要想读取该文件,需要用到ds_store_exp.py,用法:python ds_store_exp.py <url>/.DS_Store
在这里插入图片描述
再访问该脚本扫描到的文件/文件夹。

二、Git泄露

2.1 git知识点

  • .git目录:使用git init初始化git仓库的时候,生成的隐藏目录,git会将所有的文件,目录,提交等转化为git对象,压缩存储在这个文件夹当中。
  • .git/config:Git仓库的配置文件
  • .git/config:这个文件包含了一个档期分支(branch)的引用,通过这个文件Git可以得到下一次commit的paren

    除了上述文件,还有其他文件。

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

  判断是否存在git泄露
使用curl访问目标网址下的xxx/.gitxxx/.git/config或者xxx/.git/HEAD,看是否有内容返回。
在这里插入图片描述
说明存在git信息泄露,再使用githacker。使用githacker的目的是去github上下载网站源码。

2.1 log

下载网站源码:python2 Githack.py http://challenge-b600332c47be484d.sandbox.ctfhub.com:10800/.git
在这里插入图片描述

进入相应的目录,直接使用git log查看日志
在这里插入图片描述

当前所处的版本为remove flag,flag 在add flag 这次提交中

  • 方法一:直接与 add flag (dc33) 这次提交进行比对,命令如下:git diff dc33(add flag)
    在这里插入图片描述

  • 方法二:直接切换到add flag (dc22) 这个版本。命令如下:git reset --hard dc33(add flag)
    在这里插入图片描述

2.2 stash

  知识点:git 泄露 .git/refs/stashstash用于保存 git 工作状态到 git 栈,在需要的时候再恢复。使用stash命令可以恢复文件。

下载网站源码:python2 Githack.py http://challenge-ccc966c169231c6b.sandbox.ctfhub.com:10800//.git
在这里插入图片描述

进入到相应文件夹,执行 git stash list 查看是否有stash:
在这里插入图片描述

此处存在stash

git stash pop弹出git栈中的文件。
在这里插入图片描述
flag就在txt文件中。
> 可以将stash栈理解为一个放被删除的文件的栈,就相当于一个回收站。

三、SVN泄露

3.1 SVN简介

  SVN(subversion)是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就用用于多个人共同开发同一个项目,实现的共享资源,实现最终集中式的管理。在使用 SVN 管理本地代码过程中,使用svn checkout功能来更新代码时,项目目录下会自动生成隐藏的.svn文件夹,其中包含重要的源代码信息;
造成SVN源代码漏洞的主要原因是管理员操作不规范,在发布代码时未使用导出功能,而是直接复制代码文件夹到WEB服务器上,导致.svn被暴露于外网环境,黑客对此可进一步利用:

  • 利用其中包含的用于版本信息追踪的.svn/entries文件,获取到服务器源码、svn服务器账号密码等信息;
  • 利用.svn/wc.db数据库文件获取到一些数据库信息;
  • 利用SVN产生的.svn目录下还包含了以.svn-base结尾的源代码文件副本(低版本SVN具体路径为text-base目录,高版本SVN为pristine目录),如果服务器没有对此类后缀做解析,则可以直接获得文件源代码。

3.2 SVN的文件

  • entriesformat文件,数据只有个数字12。
  • wc.db-journal空文件
  • tmp空目录
  • pristine里是一些00~ff的名称的文件夹,每个文件夹里有若干哈希过的.svn-base备份文件
  • wc.db文件用SQLiteStudio软件打开 wc.db文件,在 NODES 表中,遍历这个表里的每一行,就可以下载到整个项目里的代码了,而且还能得到对应的真实文件名。

3.3 SVN利用

  1. 判断是否存在SVN泄露
    在这里插入图片描述

    说明存在svn泄露

  2. 使用dvcs-ripper下载.svn文件夹,命令如下:rip-svn.pl -u <url>/.svn。注意要安装perl环境。
    在这里插入图片描述
  3. pristine文件夹中找备份文件。
    在这里插入图片描述

四、Hg泄露

  当开发人员使用 Mercurial(hg) 进行版本控制,对站点自动部署。在初始化项目时,HG会在当前文件夹下创建一个.hg 隐藏文件夹,其中包含代码和分支修改记录等信息。
可以先使用curl <url>/.hg测试一下:
在这里插入图片描述

之前.svn也是301,说不定存在hg泄露。

使用dvcs-ripper下载网站源码,命令如下:rip-hg.pl -v -u <url>/.hg/
在这里插入图片描述
使用tree .hg查看文件夹结构:
在这里插入图片描述
递归查找子文件目录下的关键词flag:grep -r flag
在这里插入图片描述
进入cd .hg/store/fncache,这里应该是保存网站源码缓存的地方,可以看到有index.html50x.html
在这里插入图片描述
故访问http://challenge-e04eb8044f3c9d3e.sandbox.ctfhub.com:10800/flag_1807820070.txt.
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1339287.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

中国首个车路云一体化研究中心成立,将如何改变自动驾驶?

图片&#xff5c;electronicsmedia.info ©⾃象限原创 作者丨钱诚 编辑丨程心 自动驾驶正在迎来一场新的变局。 只是这一次&#xff0c;搅动整个产业的&#xff0c;是各种政策的密集落地。 2023年10月&#xff0c;工信部提出要开展城市级“车路云一体化”示范&#x…

【机器学习】西瓜书第6章支持向量机课后习题6.1参考答案

【机器学习】西瓜书学习心得及课后习题参考答案—第6章支持向量机 1.试证明样本空间中任意点x到超平面(w,b)的距离为式(6.2)。 首先&#xff0c;直观解释二维空间内点到直线的距离&#xff1a; 由平面向量的有关知识&#xff0c;可得&#xff1a; 超平面的法向量为 w w w&am…

uniapp的分包使用记录

UniApp的分包是一种将应用代码划分为多个包的技术。分包的核心思想是将不同部分的代码划分为不同的包&#xff0c;按需加载&#xff0c;从而提高应用性能。使用UniApp的条件编译功能&#xff0c;开发人员可以根据需要将代码划分为多个包。每个包都包含一组页面和组件&#xff0…

SQL delete不走索引

由于业务变迁,合规要求,我们需要删除大量非本公司的数据,涉及到上百张表,几个T的数据清洗。我们的做法是先从基础数据出发,将要删除的数据id收集到一张表,然后再由上往下删除子表,多线程并发处理。 我们使用的是阿里的polardb,完全兼容mysql协议,5.7版本,RC隔离级别。…

透过许战海矩阵洞察安记食品增长战略

引言&#xff1a;安记食品如果想实施增长战略&#xff0c;建议深耕招牌产品,走向全国市场,目前招牌产品咖哩和复合调味粉市场空间没有被全面释放出来,需要科学的产品战略作为支撑。安记食品选择功能性产品方向是正确的,但“功能性”需要一个大品类作为载体,牛奶,饮料是最大的载…

解密负载均衡:如何平衡系统负载(上)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

2023边缘计算年度领航企业丨突破边界,重塑数字未来

边缘计算作为一种新兴的计算模式&#xff0c;正在改变着数字世界的格局。近日&#xff0c;备受瞩目的第八届全球边缘计算大会在上海拉开帷幕&#xff0c;为业界呈现了一场技术与创新的盛宴。本次大会&#xff0c;我们隆重推出了“边缘计算年度盛典”&#xff0c;旨在表彰那些为…

【C语言】自定义类型:结构体深入解析(三)结构体实现位段最终篇

文章目录 &#x1f4dd;前言&#x1f320;什么是位段&#xff1f;&#x1f309; 位段的内存分配&#x1f309;VS怎么开辟位段空间呢&#xff1f;&#x1f309;位段的跨平台问题&#x1f320; 位段的应⽤&#x1f320;位段使⽤的注意事项&#x1f6a9;总结 &#x1f4dd;前言 本…

Hadoop安装笔记_单机/伪分布式配置_Hadoop3.1.3——备赛笔记——2024全国职业院校技能大赛“大数据应用开发”赛项——任务2:离线数据处理

将下发的ds_db01.sql数据库文件放置mysql中 12、编写Scala代码&#xff0c;使用Spark将MySQL的ds_db01库中表user_info的全量数据抽取到Hive的ods库中表user_info。字段名称、类型不变&#xff0c;同时添加静态分区&#xff0c;分区字段为etl_date&#xff0c;类型为String&am…

WPF项目创建HTTP WEB服务,不使用IIS业务 WPF桌面程序WebApi WPF 集成WebApi C# 创建HTTP Web API服务

在C# WPF应用程序中直接创建HTTP服务或WebAPI服务有以下优点&#xff1a; 自托管服务&#xff1a; 简化部署&#xff1a;无需依赖外部服务器或IIS&#xff08;Internet Information Services&#xff09;&#xff0c;可以直接在应用程序内部启动和运行Web服务。 集成紧密&…

elasticsearch操作索引库

目录 一、创建索引库 二、查询索引库 三、删除索引库 四、修改索引库 一、创建索引库 ES中通过Restful请求操作索引库、文档。请求内容用DSL语句来表示。 创建索引库和mapping的DSL语法及示例如下&#xff1a; 二、查询索引库 查看索引库语法 GET /索引库名 三、…

vue3+elementPlus:el-drawer新增修改弹窗复用

在el-drawer的属性里设置:title属性&#xff0c;和重置函数 //html<!-- 弹窗 --><el-drawerv-model"drawer":title"title":size"505":direction"direction":before-close"handleClose"><el-formlabel-posit…

ios环境搭建_xcode安装及运行源码

目录 1 xcode 介绍 2 xcode 下载 3 xocde 运行ios源码 1 xcode 介绍 Xcode 是运行在操作系统Mac OS X上的集成开发工具&#xff08;IDE&#xff09;&#xff0c;由Apple Inc开发。Xcode是开发 macOS 和 iOS 应用程序的最快捷的方式。Xcode 具有统一的用户界面设计&#xff0…

Apache Flink连载(十八):Flink On Yarn运行原理及环境准备

🏡 个人主页:IT贫道_大数据OLAP体系技术栈,Apache Doris,Clickhouse 技术-CSDN博客 🚩 私聊博主:加入大数据技术讨论群聊,获取更多大数据资料。 🔔 博主个人B栈地址:豹哥教你大数据的个人空间-豹哥教你大数据个人主页-哔哩哔哩视频 目录 1. Flink On Yarn运行原理…

迅为RK3588开发板RTMP推流之视频监控之搭建 RTMP 媒流体服务器

1.安装 nginxrtmp 运行所要用到的库和依赖环境 apt-get update apt-get install build-essential libpcre3 libpcre3-dev libssl-dev zlib1g-dev openssl 2. 下 载 nginx-1.20.2 源 码 ( 下 载 地 址 &#xff1a; http://nginx.org/download/nginx-1.20.2.tar.gz) 和nginx-…

在Spring Cloud中使用Ribbon完成一个简单的负载均衡demo

Spring Cloud系列断更了有一段时间了&#xff0c;这段时间最近都在忙着项目上的事&#xff0c;天天修复bug以及调整需求&#xff0c;反正各种操劳&#xff0c;了解业务需求&#xff0c;然后开发相关功能&#xff0c;很久都没碰Spring Cloud系列的相关文章了&#xff0c;最近回头…

数据结构第0章 初识

名人说&#xff1a;莫听穿林打叶声&#xff0c;何妨吟啸且徐行。—— 苏轼《定风波莫听穿林打叶声》 本篇笔记整理&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 目录 0、思维导图1、数据结构1&#xff09;数据结构是什么&am…

如何取消ChatGPT Plus 订阅服务,不取消订阅有什么影响?取消了又如何再次订阅

一、前言 很多小伙伴给我反馈说自己不会取消chatgpt的plus订阅&#xff0c;今天就来给大家分享一下如何取消ChatGPTPlus订阅 ChatGPTplus快速订阅升级方法 二、不取消订阅有什么影响&#xff1f; 1、账号被风控&#xff08;有些可以使用3.5但是不能在升级4.0&#xff09; …

【Java】云HIS云计算医院信息平台源码

云HIS系统可实现“云部署”&#xff0c;即可实现在云计算下的多种部署模式。系统采用SaaS服务模式的新驱动&#xff0c;功能设计充分合理&#xff0c;界面布局合理美观&#xff0c;每个用户可具有个性化工作台。 一、系统特色 使用简易化 即开即用&#xff0c;快速复制&#…

前端实现websocket类封装

随着Web应用程序的发展&#xff0c;越来越多的人开始利用Websocket技术来构建实时应用程序。Websocket是一种在客户端和服务器之间建立持久连接的协议。这种协议可以在一个单独的连接上实现双向通信。与HTTP请求-响应模型不同&#xff0c;Websocket允许服务器自主地向客户端发送…