Github上把敏感文件或者API秘钥上传公共库并开放为public权限导致秘钥泄露

Github上把敏感文件或者API秘钥上传公共库并开放为public权限导致秘钥泄露

背景

我们在开发项目时,可能会使用到一些加密文件,例如私钥,或者使用到一些云服务商提供的ak(Access Key Id)或者sk(Secret Access Key),使用这些时需要格外注意,不能泄露给别人,否则可能别人会恶意调用你的接口,例如短信,可能会导致短信欠费,但是,如果我们不小心上传到了自己的开源项目上,我们可以通过以下步骤,删除git提交记录,注意,一定要对仓库有所有权,有删除仓库权限,如果是上传到别人的项目,该方法不适用。
提示:一般上传到github仓库的项目,如果被检测到有阿里云或者腾讯云的ak或者sk,云服务商会发送消息通知,如果收到通知消息,需要尽快处理,也可以使用GitGuardian对github仓库进行扫描,也可以发现公开的ak或者sk。

步骤:撤销提交的敏感文件

  1. 首先需要将github上的仓库先设置为私有,防止其他人员可以访问到这个敏感文件,减少泄露程度。

Github上把敏感文件或者API秘钥上传公共库并开放为public权限导致秘钥泄露
  1. 克隆github仓库到本地
  2. 删除远程github仓库

Github上把敏感文件或者API秘钥上传公共库并开放为public权限导致秘钥泄露

Github上把敏感文件或者API秘钥上传公共库并开放为public权限导致秘钥泄露
  1. 下载BFG Repo-Cleaner

    BFG Repo-Cleaner是一款能够快速的清除错误的git历史记录的工具。

  2. 使用BFG Repo-Cleaner重写git提交历史

    下面举例:假如目前错误提交了application.yml文件,该文件包含了一些敏感信息的配置,例如短信的配置, 需要删掉application.yml相关的提交记录

  3. 拷贝下载后的BFG Repo-Cleaner到和你项目平级的文件夹中
  4. 在项目中删除application.yml,并且commit,可以备注 “clean commit”

    这一步可以不用做,但是我们为了对比前后效果,可以多提交一个移除文件的commit记录。

git commit -m "clean commit"
  1. 执行BFG

    目前测试项目使用的就一个分支,不确定是否会影响仓库中的其他分支,小伙伴们可以自己可以使用单独项目先进行测试,测试是否会影响所有分支

java -jar bfg-1.14.0.jar 项目名/.git --delete-files "application.yml"
  1. 查看日志
git log -p

可以看到相关的git提交记录中的application.yml文件都会被删除
7. 在github上重新创建新的仓库,将修改后的本地仓库和新的远程仓库关联,重新push所有文件和提交记录
8. 检查泄露的相关API、秘钥的使用情况
登录相关服务提供商的后台,查看API 秘钥的使用情况,例如阿里云、腾讯云等,也可以使用GitGuardian扫描Github仓库,查看使用还存在秘钥泄露的情况。

注册GitGuardian

原文链接:https://monkey.blog.xpyvip.top/archives/github-mi-yao-xie-lu

Original: https://www.cnblogs.com/aibianchengya/p/16804705.html
Author: 程序猿的代码
Title: Github上把敏感文件或者API秘钥上传公共库并开放为public权限导致秘钥泄露

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/642924/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 如何编写更棒的代码:11个核心要点

    学习一种新的编程语言是一件很有趣的事情,你将学会用新的很酷的方式解决问题。如果让一个对某种语言很专业的人去学另外一种语言,很多时候会让人心有余而力不足。举个例子,让一个Java开发…

    技术杂谈 2023年5月31日
    078
  • 基础排序算法(附加java实现)

    七种最基本的排序算法:(面试必会!) 冒泡排序: 最基础的排序算法,从数列最前端开始,两两比较,如果前一个数比后一个数大,那么两个数就交换位置,经过一轮遍历之后,最大的数就到了数列…

    技术杂谈 2023年6月21日
    077
  • 跨境电商独立站怎么做

    独立站一般是指商家自己搭建的跨境电商网站。跨境电商独立站拥有独立域名,内容、数据、权益私有,脱离第三方电商平台束缚,不仅可以进行多个渠道、多个方式的网络曝光和推广,并且推广所带来的…

    技术杂谈 2023年5月31日
    0102
  • docker安装

    本文的安装系统环境:centos7.5 1.如果系统默认安装旧版的docker,可以先删除 yum -y remove docker docker-common container…

    技术杂谈 2023年7月10日
    058
  • 原创好文!聊聊数据域和主题域的区别

    大家好,我是大D。 这篇文章跟大家一起聊下数仓中比较容易混淆的两个概念——数据域、主题域。有的公司对二者的界限并不明显,都统一称为数据域或者主题域;也有的公司两者是区分开使用的,那…

    技术杂谈 2023年7月25日
    0113
  • PyQt5 掩码字符

    ################################ PyQt5中文网 – PyQt5全套视频教程 # https://www.PyQt5.cn/ # 主讲: 村长 #…

    技术杂谈 2023年5月31日
    0122
  • 2022.28 技术领导力

    工作越久,越感觉到技术领导力是技术人员最具价值的能力,是技术人员应该持续追求培养的能力。那么,什么是技术领导力,如何培养自己的技术领导力呢?看到下面这篇文章不错,讲出了不同层次技术…

    技术杂谈 2023年5月30日
    0114
  • Optional用法与争议点

    原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 简介 要说Java中什么异常最容易出现,我想NullPointerException一定当仁不让,为…

    技术杂谈 2023年7月25日
    076
  • 图解xenserver的SR,VDI,VBD之间的关系

    今天在xenserver5.6下给一ubuntu VM添加virtual disk时提示不能添加,如下图 查了下文档原来是因为每个VM都有disk数量的限制 The current…

    技术杂谈 2023年5月31日
    0105
  • 【Maven】如何构建maven项目;maven 核心知识

    maven 思维导图: ps:资料出处 — 动力节点资料广场 笔记第一部分: 1、传统开发项目的问题(没有使用maven管理的项目): 1)很多模块之间有关系,手工管理…

    技术杂谈 2023年7月10日
    065
  • ConnectionAbortedError: [WinError 10053] An established connection was aborted by the software in your host machine

    ConnectionAbortedError: [WinError 10053] An established connection was aborted by the soft…

    技术杂谈 2023年5月30日
    083
  • GPS的调试与报文解析

    GPS的调试与报文解析 来源 https://zhuanlan.zhihu.com/p/450203417 1.驱动与软件 直接用串口助手的话,可看到GPS发送的信息。当然串口可以…

    技术杂谈 2023年5月30日
    0102
  • 4个步骤,查询硬盘序列号

    摘自:https://m.hqew.com/tech/news_2064115 diskpart list disk select disk 0 detail disk Origi…

    技术杂谈 2023年5月31日
    093
  • PPT产品的重要性

    客户需求:减轻现场工作量,不能因为上了运维管理系统以后,工作量反而增加了,因此流程需要简化,除了需要符合国家安全规定的,其余流程都简化。 项目背景:当前算是处于POC阶段,给客户的…

    技术杂谈 2023年5月31日
    094
  • YAML注释

    既然对YAML的语法和基础知识感到满意,那么进一步了解它的细节。在本章中,将了解如何在YAML中使用注释。 YAML支持单行注释。 下面借助一个例子来解释其结构 – Y…

    技术杂谈 2023年5月31日
    085
  • 使用 jackson 解析 json 演示样例

    Streaming (“jackson-core”) defines low-level streaming API, and includes JSON-…

    技术杂谈 2023年5月31日
    095
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球