Git泄露(CTFHUB的git泄露)

news2024/11/18 13:51:20

log

当dirsearch 扫描一下,命令:

python dirsearch.py -u  url/.git   发现存在了git泄露

借助kali里面,打开GitHack所在的目录,然后

输入:

python2 GitHack.py -u url/.git/

必须要用Python2

tree 命令  可以看到完整目录

接下来,输入

git diff HEAD^


 Stash

同样步骤后

输入 git stash list

输入 git stash pop

最后cat一下


index

跟上面的步骤差不多


知识点:

      1.什么叫做git泄露?

     git泄露指的是开发人员在开发过程中遗忘删除 .git 文件夹,导致攻击者可以通过 .git 文件夹中的信息获取开发人员提交过的所有源码。从而导致服务器被攻击沦陷。

      2.git泄露原理

    通过泄露的.git文件夹下的文件,还原重建工程源代码

    解析.git/index (index 这个文件就是我们后面提到的暂存区(stage),是一个二进制文件)文件,找到工程中的所有

      去 .git/objects/(objects 所有的Git对象都会存放在这个目录中,对象的SHA1哈希值的前两位是文件夹名称,后38位作为对象文件名)  文件夹下下载 对应的文件

  zlib解压文件,按原始的目录结构写入源代码    

    在git中,这些对象存储文件都是通过zlib进行压缩的,所以我们可以使用zlib将其解压出来,来看看这个文件里面存储的内容是什么:

解压代码如下:

import zlib
import requests
urla = "解压文件地址"
re = requests.get(urla)
ss = re.content
word = zlib.decompress(ss)
print(word)


 

3.   ./git

   使用git init初始化git仓库的时候,会生成一个.git的隐藏目录,git会将所有的文件,目录,提交等转化为git对象,压缩存储在这个文件夹当中。

利用  dirsearch鉴别git泄露就是利用这个原理

 4.git的基本命令和git库工作原理

git init

新建一个文件夹,初始化一个空的git仓库

git add

将工作目录中对文件的修改或新增添加到暂存区(stage)。git被通知要追踪文件的修改

git commit

将暂存区的文件提交到版本库中,永久保存

git status

查看git库中文件的状态。已经被修改的文件,暂存的文件,未被跟踪的文件

tree

以树状图的形式列出目录的所有内容

创建一个文件,并用git add追踪它,再用git commit提交

git log

查看所有的提交数据

git ls-files -u

显示冲突的文件,-s是显示标记为冲突已解决的文件

git diff

对比工作区和stage文件的差异

git diff -cached

对比stage和branch之间的差异

git ls-files -stage

检查保存在stage的文件

git reset -hard HEAD

放弃工作区和index的改动,HEAD指针(这个文件包含了一个档期分支(branch)的引用,通过这个文件Git可以得到下一次commit的parent)仍然指向当前的commit

git checkout 

恢复被修改的文件

git reflog
查看回滚之前的版本

git stash

保存当前工作目录的临时状态

git stash save  “message”

将保存到当前工作目录状态到一个新的stash,并添加一条可选的消息来描述stash的内容

git stash list

查看当前保存的stash列表

git stash show

查看最新的stash

git stash apply

将某个stash的变更应用到当前工作目录

git stash  pop

与git stash apply相似,但是应用完后删除

git stash --all

保存所有修改

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

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

相关文章

Paddle 基于ANN(全连接神经网络)的GAN(生成对抗网络)实现

什么是GAN GAN是生成对抗网络,将会根据一个随机向量,实现数据的生成(如生成手写数字、生成文本等)。 GAN的训练过程中,需要有一个生成器G和一个鉴别器D. 生成器用于生成数据,鉴定器用于鉴定数据的准确性&…

2-6 任务 猜数小游戏(单次版)

本任务要求编写一个猜数小游戏(单次版),游戏规则是计算机产生一个0到100之间的随机整数,用户通过输入猜测的数字进行猜测,根据猜测情况给出提示,直到猜对为止。编程思路是利用while循环和多分支结构实现永真…

Linux 第二十四章

🐶博主主页:ᰔᩚ. 一怀明月ꦿ ❤️‍🔥专栏系列:线性代数,C初学者入门训练,题解C,C的使用文章,「初学」C,linux 🔥座右铭:“不要等到什么都没有了…

python面向函数

组织好的,可重复利用的,用来实现单一,或相关联功能的代码段,避免重复造轮子,增加程序复用性。 定义方法为def 函数名 (参数) 参数可动态传参,即使用*args代表元组形式**kwargs代表字典形式,代替…

探索智能编程新境界:我与Baidu Comate的独特体验之旅

文章目录 一、认识Baidu Comate二、VS Code安装Baidu Comate教程三、Baidu Comate功能体验功能概览具体功能1.根据注释自动生成代码2.函数注释3.行间注释4.代码解释5.生成单元测试6.代码优化7.答疑解惑 四、交互体验五、总结 一、认识Baidu Comate ✨Baidu Comate插件是一款基…

如何在PPT中插入网页?这样操作,免费还高效!

融合课、跨学科课,已经是近两年来教育界的热门词。 在公开课、微课比赛中,不添融合一些较为先进的信息技术,都不好意思拿出手了。 最近,由不坑老师开发制作的Office插件——不坑盒子,实现了在PPT中插入网页&#xff…

鸿蒙开发接口Ability框架:【(StaticSubscriberExtensionAbility)】

StaticSubscriberExtensionAbility StaticSubscriberExtensionAbility模块提供静态订阅者扩展能力的类别的能力。 说明: 本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 本模块接口仅可在Stage模型下…

987: 输出用先序遍历创建的二叉树是否为完全二叉树的判定结果

解法: 一棵二叉树是完全二叉树的条件是: 对于任意一个结点,如果它有右子树而没有左子树,则这棵树不是完全二叉树。 如果一个结点有左子树但是没有右子树,则这个结点之后的所有结点都必须是叶子结点。 如果满足以上条…

ADOP带你了解:温度如何影响您的室外以太网电缆?

温度:室外以太网电缆的隐形敌人 在构建和维护室外以太网网络时,我们通常会考虑到许多物理因素,如电缆的长度、宽带容量和连接质量。然而,有一个不那么显眼但同样重要的因素常常被忽视,那就是温度。温度的波动不仅影响…

物联网实战--平台篇之(四)账户后台交互

目录 一、交互逻辑 二、请求验证码 三、帐号注册 四、帐号/验证码登录 五、重置密码 本项目的交流QQ群:701889554 物联网实战--入门篇https://blog.csdn.net/ypp240124016/category_12609773.html 物联网实战--驱动篇https://blog.csdn.net/ypp240124016/category_12631…

《21天学通C++》(第二十章)STL映射类(map和multimap)

为什么需要map和multimap: 1.查找高效: 映射类允许通过键快速查找对应的值,这对于需要频繁查找特定元素的场景非常适合。 2.自动排序: 会自动根据键的顺序对元素进行排序 3.多级映射: 映射类可以嵌套使用,创…

java.net.SocketInputStream.socketRead0 卡死导致 tomcat 线程池打满的问题

0 TL;DR; 问题与原因:某些特定条件下 java.net.SocketInputStream.socketRead0 方法会卡死,导致运行线程一直被占用导致泄露采用的方案:使用监控线程异步监控卡死事件,如果发生直接关闭网络连接释放链接以及对应的线程 1. 问题 …

贪心算法--将数组和减半的最小操作数

本题是力扣2208---点击跳转题目 思路: 要尽快的把数组和减小,那么每次挑出数组中最大的元素减半即可,由于每次都是找出最值元素,可以用优先队列来存储这些数组元素 每次取出最值,减半后再放入优先队列中,操…

最新:Lodash 严重安全漏洞背后你不得不知道的 JavaScript 知识

可能有信息敏感的同学已经了解到:Lodash 库爆出严重安全漏洞,波及 400万 项目。这个漏洞使得 lodash “连夜”发版以解决潜在问题,并强烈建议开发者升级版本。 我们在忙着“看热闹”或者“”升级版本”的同时,静下心来想&#xf…

如何通过代理IP实现搜索引擎优化

目录 前言 一、代理IP的基本概念 二、通过代理IP访问其他地区的搜索引擎 三、对比不同地区搜索结果 结论 前言 搜索引擎优化(Search Engine Optimization,SEO)是指通过优化网站的结构、内容和关键词等因素,提高网站在搜索引…

ubuntu挂载固态硬盘

ubuntu挂载固态硬盘 两种情况 包装盒拆出来的新硬盘用过的需要后处理的硬盘 新硬盘 一、确认硬盘设备 插上主机后输入 lsblk检查是否识别到你插入的硬盘 可以看到上图的nvme0n1是我挂载的硬盘(目前已经挂载完成并映射到 ~/ssd目录),nvm…

如果你这样使用电路仿真软件,你就无敌了!

在电子设计领域,电路仿真软件如同一把锋利的宝剑,掌握它,你就能在复杂的电子世界中游刃有余。今天,就让我们一起探讨如何高效利用电路仿真软件,让你在电子设计领域所向披靡! 一、熟悉软件界面与基础操作 …

点击短信链接唤起Android App实战

一.概述 在很多业务场景中,需要点击短信链接跳转到App的指定页面。在Android系统中,想要实现这个功能,可以通过DeepLink或AppLink实现。二.方案 2.1 DeepLink 2.1.1 方案效果 DeepLink是Android系统最基础、最普遍、最广泛的外部唤起App的方式,不受系统版本限制。当用户…

基于Vue3与ElementUI Plus的酷企秀场景可视化DIY设计器:前端技术引领下的数字化展示新篇章

一、引言 在当今信息化高速发展的时代,企业对于展示自身形象、提升用户体验以及增强品牌知名度的需求日益迫切。针对这一市场需求,我们推出了基于Vue3与ElementUI Plus的酷企秀场景可视化DIY设计器。该产品不仅具备电子画册、VR全景、地图秀三大核心功能…

2024年自动驾驶、车辆工程与智能交通国际会议(ICADVEIT2024)

2024年自动驾驶、车辆工程与智能交通国际会议(ICADVEIT2024) 会议简介 2024年自动驾驶、车辆工程和智能交通国际会议(ICADVEIT 2024)将在中国深圳举行。会议主要聚焦自动驾驶、车辆工程和智能交通等研究领域,旨在为从…