三、git信息泄露
一、git信息泄露
解释:Git信息泄露是指通过公开或错误地配置版本控制系统Git,导致敏感数据(例如API密钥、数据库密码、个人信息等)被泄露到公共代码仓库或其他未授权的访问者手中。通俗来说,在公网暴露类似http://127.0.0.1/.git/
(将.git目录直接被人访问)将会导致源码被人下载查看到
二、git敏感操作
- 下载对方git:
wget -r http://114.67.175.224:15402/.git/
(先进入下载到文件的目录然后ls -al才能看到目录下面多了个.git目录) - 查看提交历史记录:
git reflog
- 查看某次提交的细节信息:
git show d256328
(d256328就是git reflog第一列的内容)
三、直接下载源代码
解释:利用github上面提供的代码,执行后即可下载上源文件
- 下载:
git clone https://github.com/lijiejie/GitHack.git
- 找到GitHack.py使用下载命令:
python GitHack.py http://127.0.0.1/.git/
四、git基本操作
1.初始
- 初始化:
git init
- 添加到暂存区:
git add . #'.'表示所有
- 提交到历史区:
git commit -m 'first' #-m:message
- 添加与删除远程仓库地址
git remote add 自定义名字 地址
git remote rm 自定义名字
- 提交到远端仓库:
git push -u 自定义添加过的远程仓库名 分支名字 #跟上面添加内容有关
2.维护
2.1 暂存区维护
- 查询添加到暂存区的内容:
git status
- 删除添加到暂存区的文件:
git rm --cached 文件名
2.2 工作区维护
- 查询工作区提交记录:
git log --oneline #可来查看唯一版本号;
- 查询历史提交记录(包括回滚的都可以恢复):
git reflog
- 撤回到版本号:
git reset
3.1 --hardgit reset --hard 版本号 #使得暂存区和工作区都恢复到目标版本
3.2 --mixedgit reset --mixed 版本号 #使得暂存区恢复到目标版本
3.3 --softgit reset --soft 版本号 #只删除commit历史,不改变暂存区和工作区
- 切换版本号:
git check HEAD^ #此为上一个版本,可自行复制版本号,此可切换到临时分支
4.1 保存到分支:git branch 新分支 临时分支名 #这样是因为临时分支不会被记住,不能保存
3.分支操作
- 创建:
git branch 名字(创建但没有切换过去)
- 切换分支:
git checkout 分支名字
- 合并分支:
git merge 分支名字
- 删除分支:
git branch -d 分支名字
4.下载操作
代码:git clone 地址
5.设置与删除代理
- 全局:
git config --global http.proxy http://127.0.0.1:10809
- 指定:
git config --global http.https://gitee.com.proxy http://127.0.0.1:1081#指定对码云这个网站(全局)
- 删除:
git config --global --unset 内容(用git config -l查看,找到代理等号前面的内容)
6.辅助信息
- 查看分支:
git branch
- 查看提交到历史区的详细:
git log
- 查看目录与暂存区的区别:
git status
- 显示已写入缓存与已修改但尚未写入缓存的改动的区别:
git diff
- 列出添加的远端仓库名字:
git remote -v