12,攻防世界simple_php

simple_php

题目来源:Cyberpeace-n3k0

题目描述:

小宁听说php是最好的语言,于是她简单学习之后写了几行php代码。

进入靶场

这段PHP代码是一个简单的web应用示例,让我们逐步分析这段代码:

show_source(FILE);:这行代码会显示当前文件的源代码。这通常用于调试目的,但在生产环境中暴露源代码可能会泄露敏感信息。

include("config.php");:这行代码包含了一个名为config.php的文件

a=@_GET['a']; 和 b=@_GET['b'];:这两行代码从URL的查询字符串中获取a和b参数的值,并使用@运算符抑制错误信息的显示。

第一个if语句:if(a==0 and a){...} 检查$a是否既等于0又在某种逻辑上被视为真(truthy)。

第二个if语句:if(is_numeric(b)){...} 检查b是否为数字。如果是,脚本将执行exit();并终止。这意味着,为了使代码继续执行到打印flag2的部分,b必须是非数字的值。

第三个if语句:if(b\>1234){...} 检查b是否大于1234。如果是,将打印flag2。由于前面的is_numeric(b)检查,这个条件只有在$b是非数字但能以某种方式被PHP解释为大于1234的值时才会为真。这通常涉及到字符串到数字的强制转换,例如,字符串"12345abc"会被转换为数字12345,因为它以数字开头。

分析结束

既然知道了一个文件名,就去试着访问一下,发现访问不了

弱类型语言:弱类型语言在进行变量比较时,通常不会严格地要求变量的类型必须一致。这种比较方式允许不同类型的变量之间进行转换和比较,从而提高了编程的灵活性和便利性。

构造的payload中a=a或a==0都可

相关推荐
头发还在的女程序员13 小时前
基于JAVA语言的短剧小程序-抖音短剧小程序
java·开发语言·小程序
JHC00000013 小时前
Python PDF 相关操作
开发语言·python·pdf
温轻舟14 小时前
Python自动办公工具01-Excel文件编辑器
开发语言·python·编辑器·excel·温轻舟
纵有疾風起15 小时前
C++——多态
开发语言·c++·经验分享·面试·开源
氵文大师16 小时前
A机通过 python -m http.server 下载B机的文件
linux·开发语言·python·http
封奚泽优16 小时前
下降算法(Python实现)
开发语言·python·算法
笃行客从不躺平17 小时前
遇到大SQL怎么处理
java·开发语言·数据库·sql
郝学胜-神的一滴17 小时前
Python中常见的内置类型
开发语言·python·程序人生·个人开发
g***B73817 小时前
Kotlin协程在Android中的使用
android·开发语言·kotlin
火白学安全17 小时前
《Python红队攻防零基础脚本编写:进阶篇(一)》
开发语言·python·安全·web安全·网络安全·系统安全