攻防世界-web-easyphp

2023-09-20 19:30:00

1. 题目描述

打开链接,可以看到如下代码
在这里插入图片描述

2. 思路分析

代码都给出来了,接下来就是理解代码的含义了,从代码中不难发现,总共传入三个参数a,b,c,分别需要满足以下条件:
2.1 a的长度小于等于3,但是转换成int后需要大于6000000
2.2 对b计算md5值,md5的一部分为’8b184b’
2.3 c是一个json对象,其中c[‘m’] 不是数值类型且大于2022,c[‘n’]是一个数组,长度为2,c[‘n’]中第一个元素是一个数组类型,且需要满足array_search能够查找到"DGGJ"这个字符串,但是又不能等于"DGGJ"这个字符串。
(参考https://blog.csdn.net/weixin_46906325/article/details/127154789)
第一个条件科学计数法即可满足,a=1e9
第二个条件除了爆破没啥好办法,这里感觉条件不够友好,应该有个提示限制必须是整数,那么就容易爆破,结果应该是b=53724
第三个条件比较复杂了,主要考察了php中的字符串和整数的比较(比如1a和一个整数进行比较,会转换成1;a1和整数进行比较,由于第一个位置是a,非整数,php规定其值为0),根据这个比较规则,c[‘m’]可以等于2023a,至于c[‘n’],array_search本身也是一个比较操作,查找"DGGJ"时相当于和0进行比较,因此c[‘n’][1] = 0, c[‘n’][0]随便一个数组就行

3. 解题过程

a,b,c分别设置为以下的值,然后作为参数放入到请求中
a=1e9
b=53724
c={“m”:“2023a”,“n”:[[“xx”], 0]}
在这里插入图片描述
最终的flag为cyberpeace{68b6cb01e9ff453586488f24d9706293}

4. 总结
本题综合性比较强,三个条件考察三个知识点,一个是科学计数法,一个是md5爆破,一个是php比较绕过,都是常见的知识点,非常值得练习

更多推荐

Hadoop生态圈中的数据同步工具SQOOP

Hadoop生态圈中的数据同步工具SQOOP一、sqoop的概念二、sqoop的核心功能1、数据导入import2、数据导出export三、sqoop的底层实现四、sqoop的安装和部署五、sqoop的基本操作1、sqoop查看RDBMS中有哪些数据库2、sqoop查看某一个数据库下有哪些数据表3、通过sqoop执行s

Oracle,高斯创建自增序列

某些时候,需要获取到一个自增值然后点击左下Apply也可以通过SQL语句执行dual在Oracle中是张虚拟表,通常用于执行这样的查询Oracle中查询语句:select序列名.nextvalfromdual在高斯数据库中:查询是selectmy_sequence.nextval不需要加formxxx例如:Oracle

JVM 第一章:Java运行时数据区

目录一.了解JVM1.1什么是JVM1.2JRE/JDK/JVM1.3JVM的整体结构二.Java运行时数据区2.1程序计数器(PC寄存器)2.2Java虚拟机栈(JavaVirtualMachineStacks)2.2.1栈帧的组成2.2.2问题辨析2.2.3逃逸分析①栈上分配②标量分析③同步消除2.2.4内存溢出2

IP代理与加速器:理解它们的区别与共同点

目录一、IP代理的基本概念与作用1、IP代理的定义2、IP代理的作用二、加速器的基本概念与作用1、加速器的定义2、加速器的作用三、IP代理与加速器的异同点1、相同点2、不同点四、都有什么优缺点五、各自在什么场合下使用六、该怎么选择总结在互联网的汪洋大海中,我们有时会遇到各种网络问题,如地区限制、网络延迟、封锁等。这时,

网页订货系统的诸多优势|企业APP订单管理软件

1.订单信息,发货信息,账目信息一目了然生产企业(总代理)和分销商之间可以清楚直观的了解到商品和货款的实时状态,以便高效的订货,发货,进行货款催收以及商品的物流跟踪。2.建立稳固的客户关系,避免客户被竞争对手挖墙脚有了网上订货系统,企业(总代理)和分销商之间的联系更加紧密,账目更加清晰,客户信任度和忠诚度大大提升,有效

单片机操作系统,按键与FIFO

前言1.之前做按键,在中断判断并进入回调函数,但是经常会导致其他任务来不及处理,或者是按键触发了但没有执行回调,即用户操作时感觉按键失灵。2.这里更新了一下代码,思路是这样的:中断进入按键扫描,有消抖,不阻塞,如果按键事件触发时即入列,然后操作系统每隔10ms进行一次轮询,若队列不为空,则出列并执行按键回调。有纰漏请指

AI AIgents时代-(四.)应用上手

HuggingGPT&MetaGPT.🟢HuggingGPTHuggingGPT是一个多模型调用的Agent框架,利用ChatGPT作为任务规划器,根据每个模型的描述来选择HuggingFace平台上可用的模型,最后根据模型的执行结果生成总结性的响应。这个项目目前已在Github上开源,并且有一个非常酷的名字叫做JA

python经典百题之统计字符数

题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。方法一:str_input=input("请输入一行字符:")count_letter,count_space,count_digits,count_other=0,0,0,0forcharinstr_input:ifchar.isalpha():

文举论金:黄金原油全面走势分析策略指导。

市场没有绝对,涨跌没有定势,所以,对市场行情的涨跌平衡判断就是你的制胜法宝。欲望!有句意大利谚语:让金钱成为我们忠心耿耿的仆人,否则,它就会成为一个专横跋扈的主人。空头,多头都能赚钱,唯有贪心不能赚。是你掌控欲望还是欲望掌控你?古人云:不积硅步无以至千里,不积小流无以成江海。希望这句话成为我们之间的共勉。自知!人贵自知

乐观锁与悲观锁

概述悲观锁总会假设最坏的情况,乐观锁总会假设最好的情况。悲观锁和乐观锁最终都是为了保证线程的安全,避免在并发场景下的资源竞争问题,但是,相对于乐观锁,悲观锁对性能的影响更大!悲观锁共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其他线程。高并发的场景下,激烈的锁竞争会造成线程阻塞,大量阻塞线程会导致系统

Python从入门到放弃系列教程01

Python从入门到放弃系列教程01第一章01初识PythonPython的起源1989年,为了打发圣诞节假期,吉多·范罗苏姆(龟叔)决定开发一个新的解释程序(Python雏形),1991年,第一个Python解释器诞生;之所以选中单词Python(意为大蟒蛇)作为该编程语言的名字,是因为英国20世纪70年代首播的电视

热文推荐