web学习笔记
内容:
1.学会利用 /.git 文件泄露,/.DS_Store下载地址根据自己配置的环境选择
py2: https://github.com/lijiejie/GitHack
py3: https://github.com/WangYihang/GitHacker
py2:https://github.com/lijiejie/ds_store_exp
py3:https://github.com/gehaxelt/Python-dsstore
2.查看 PHP 官方文档,在前两次对 PHP 学习的基础上,利用代码实现变量覆盖;同时查看预定义变量,重点看一下 $_SERVER $_GET $_POST $_REQUEST (思考一下如果 G E T 和 GET 和 GET和POST 同时对某一变量传参,浏览器最终会选择哪一种方式传的值)
3.学习运算符的相关内容,重点看位运算符、比较运算符和执行运算符
4.熟悉常见的编码方式:hex md5 base32/64 urlencode unicode
git文件泄露
Git是版本控制的一种
管理所有文件和修改历史,实现多人开发。
主要就是分布式版本控制:
所有版本信息仓库都同步到本地每个用户,每个用户都能在本地查看所有版本历史,并可以离线提交,只需要联网的时候放到相应的服务器和其他用户手中。
好处:不会担心因为一个服务器的故障而缺失数据。
弊端:有安全隐患。
当前大量开发人员使用git进行版本控制,对站点自动部署。如果配置不当,可能会将.git文件夹直接部署到线上环境。这就引起了git泄露漏洞。攻击者可以利用该漏洞下载git文件夹里的所有内容。如果文件夹内有敏感信息比如站点源码、数据库账户密码等,攻击者可能直接控制服务器。
信息恢复–GitHack
GitHack会自动恢复
Githack是一个.git泄露利用脚本,通过泄露的.git文件夹下的文件,还原重建工程源代码
脚本工作原理
解析.git/index文件,找到工程中所有的: ( 文件名,文件sha1 )
去.git/objects/ 文件夹下下载对应的文件
使用zlib解压文件,按原始的目录结构写入源代码
它的优点
- 速度快,默认20个工作线程
- 尽量还原所有的源代码,缺失一部分文件不影响脚本工作
- 脚本不需要执行额外的git命令,有python就够了
可能的改进
存在文件被gc打包到git\objects\pack的情况,稍后可测试下看能否直接获取并解压这个文件,还原源代码
版权声明:本文为CSDN博主「kkey0930」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xy_sunny/article/details/107620695
PHP
变量覆盖
变量覆盖指的是可以用我们的传参值替换程序原有的变量值
Eg.设 a = 1 , 利 用 g e t 方 式 传 一 个 a = 6 , 则 有 变 量 覆 盖 的 话 6 就 会 覆 盖 掉 原 来 程 序 有 的 a=1,利用get方式传一个a=6,则有变量覆盖的话6就会覆盖掉原来程序有的 a=1,利用get方式传一个a=6,则有变量覆盖的话6就会覆