知识点:PHP弱类型

.git文件泄露

玩攻防世界 遇到一个题lottery  进去看看  分析玩法

我们发现 进入登陆用户都是初始值 金钱是20  彩票号码必须输入7位 然后看你输入的彩票号码有多少个重复。

然后我们还发现 flag是可以购买的只要你金钱够。。。 这时间我们猜想可能他让我彩票赢钱来获取flag  一时思路是 暴力…

习惯拿到网站  先上AWVS 扫描 我们扫描出了.git

我们可以利用这个.git漏洞

首先我们来了解下.Git这个东西

Git信息泄露的危害很大,渗透测试人员、攻击者,可直接从源码获取敏感配置信息(如:邮箱,数据库),也可以进一步审计代码,挖掘文件上传、SQL注射等安全漏洞

需要的工具就是GitHack

获取工具代码:https://github.com/lijiejie/GitHack

GitHack是一个.git泄露利用脚本,通过泄露的.git文件夹下的文件,重建还原工程源代码。

渗透测试人员、攻击者,可以进一步审计代码,挖掘:文件上传,SQL注射等web安全漏洞。

## 工作原理 ##

* 解析.git/index文件,找到工程中所有的: ( 文件名,文件sha1 )

* 去.git/objects/ 文件夹下下载对应的文件

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



## 用法示例 ##

    GitHack.py http://www.openssl.org/.git/

我们打开软件直接可以获取他的目录结构源代码

通过分析

通过这一段代码分析我们注意89行 他有有个判断 判断我们输入的值有多少个相等
有一个$same_count++一次。

我们再看下面代码  如果有$same_count=2 则就给prize=5 prize就是我们的金钱
 也就是说你两个数值对上才给你奖励5 我们看到最后要是7个都对上就奖励5000000这样我们就可以购买flag了

先看点PHP弱类型小知识

PHP有两种比较符号==与===

=== 在进行比较的时候,会先判断两种字符串的类型是否相等,再比较

== 在进行比较的时候,会先将字符串类型转化成相同,再比较

上述php弱类型基础引用 https://www.cnblogs.com/Mrsm1th/p/6745532.html

我们再回到上面的代码分析  只要相等 那就是为真
这里是一个PHP弱类型比较 那么我们是不是可以构造这样的语法 都为true  也就是7个true, true, true, true, true, true, true

开启抓包修改值

修改后

{"action":"buy","numbers":[true,true,true,true,true,true,true]}

Forward

我们要多重复几次这样我们才能赚够钱买

OJBK 直接购买flag

OK 完成

CTF-lottery[git文件泄露利用+PHP弱类型]的更多相关文章

  1. 记一次对ctf试题中对git文件泄露的漏洞的挖掘

    拿到题,先f12查看代码 发现情况直接进行访问 最后试了发现flag.js可以访问  服务器返回了如下图所示的乱码 很显然有可能是git泄露  话不多说,直接利用https://github.com/ ...

  2. [原题复现]百度杯CTF比赛 十月场 WEB EXEC(PHP弱类型)

    简介  原题复现:  考察知识点:PHP弱类型.  线上平台:https://www.ichunqiu.com/battalion(i春秋 CTF平台) 过程 看源码发现这个 vim泄露  下方都试了 ...

  3. .git泄露及利用php弱类型松散比较构造json的payload

    一道ctf题,文章搬运到了自己的网站上: http://101.132.137.140:202/archives/2019-11-16

  4. SVN/GIT源代码泄露

    造成SVN源代码漏洞的主要原因是管理员操作不规范.在使用SVN管理本地代码过程中,会自动生成一个名为.svn的隐藏文件夹,其中包含重要的源代码信息.但一些网站管理员在发布代码时,不愿意使用‘导出’功能 ...

  5. 攻防世界-Web-lottery(.git泄露、php源码审计、弱类型利用)

    扫描目录,发现.git泄露: 提取.git泄露的源码,得到许多文件: 网站这里: 这就要审计一下代码,找找漏洞了. 经过一番审计,猜数字对应的函数在api.php中: 我们要绕过这个$win_numb ...

  6. ctf/web源码泄露及利用办法

    和上一篇文章差不多,也算是对web源码泄露的一个总结,但是这篇文章更侧重于CTF 参考文章: https://blog.csdn.net/wy_97/article/details/78165051? ...

  7. ctf常见源码泄露

    前言 在ctf中发现很多源码泄露的题,总结一下,对于网站的搭建要注意删除备份文件,和一些工具的使用如git,svn等等的规范使用,避免备份文件出现在公网 SVN源码泄露 原理 SVN(subversi ...

  8. 从云AK泄露利用看企业特权管理

    从云AK泄露利用看企业特权管理 目录 - 缘起 - 当前主流AK泄露检测方式 - 防止AK滥用的关键要素? - 哪些算特权账号管理? - 如何做特权账号管理? - 特权管理与堡垒机.IAM.零信任的关 ...

  9. Git中如何利用生成SSH个人公钥访问git仓库

    Git中如何利用生成SSH个人公钥访问git仓库方法(这里以coding平台为例): 1. 获取 SSH 协议地址 在项目的代码页面点击 SSH 切换到 SSH 协议, 获得访问地址, 请使用这个地址 ...

随机推荐

  1. Python列表的增删改查

    列表的增: li = ['libai','sushi','dufu','sushi',"白居易"] 第一种: append():向列表末尾追加元素 li.append('diaoc ...

  2. Linux运维学习第二周记

    1 梨花淡白柳深青, 2 柳絮飞时花满城. 3 惆怅东栏一株雪, 4 人生看得几清明. 老牛望春满地绿! 第二周直接要起飞了! 仍然是最基础最基础的东西,但也是特别多,的别重要! 第二周学记 1.Li ...

  3. 【总结】sqlserver

    1 基础 1.1 简介 sqlserver是闭源的,必须运行在windows平台上的数据库.默认事务隔离级别是读已提交(commit read).全称Microsoft SQL Server,说以也被 ...

  4. Android Choreographer 源码分析

    Choreographer 的作用主要是配合 Vsync ,给上层 App 的渲染提供一个稳定的 Message 处理的时机,也就是 Vsync 到来的时候 ,系统通过对 Vsync 信号周期的调整, ...

  5. JWT安装配置

    1.1 安装JWT pip install djangorestframework-jwt==1.11.0 1.2 syl/settings.py 配置jwt载荷中的有效期设置 import date ...

  6. 探索G1垃圾回收器

    前言 最近王子因为个人原因有些忙碌,导致文章更新比较慢,希望大家理解,之后也会持续和小伙伴们一起共同分享技术干货. 上篇JVM的文章中我们对ParNew和CMS垃圾回收器已经有了一个比较透彻的认识,感 ...

  7. 仅用六种字符来完成Hello World,你能做到吗?

    Hello World 对于每一个开发者来说都不陌生,因为在我们学习任何一个语言或框架的时候,都会有一个Hello World的案例来帮助我们快速入门. 如果我们使用JavaScript来输出Hell ...

  8. 【kata Daily 190905】What's a Perfect Power anyway?(完美幂)

    原题: A perfect power is a classification of positive integers: In mathematics, a perfect power is a p ...

  9. H5--自动刷新

    每30秒中刷新当前html页面: <meta http-equiv="refresh" content="30">

  10. 剑指29:最小的k个数

    题目描述 输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4. class Solution {public:    vector& ...