攻防世界web新手练习区(2)
弱认证:http://111.198.29.45:43769/
打开是这个页面:
用户名输入1,密码输入2,试试看。会提示你用户名为admin。接下来用burp对密码进行爆破,发现弱口令0123456可跑出来,得到flag
disabled_button:http://111.198.29.45:50438
disabled 属性规定禁用按钮。
被禁用的按钮既不可用,也不可点击。去掉disabled后,则可获取flag
simple.php: http://111.198.29.45:31079
对其代码进行审计:
发现需要以get的方式传入两个参数a和b。
a参数的要求 a必须等于0且a为真
b参数的要求 b不能为数字且b大于1234
这道题的核心问题是理解PHP语言的弱类型
对代码进行分析,用 get 方式获得两个参数 a、b。a 要满足等于 0 并且它不能等于 0,可以 想到弱类型,让 a=0a(0 后加字符串即可)。b 要满足 is_numeric()函数,is_numeric() 函 数用于检测变量是否为数字或数字字符串。利用弱类型,故只要 b 数字部分大于 1234 再加 个字符串即可。
PHP是一种弱类型的语言,对于数字0和空字符串在进行布尔运算的时候都会转换为 false ; == 会自动转换类型然后进行比较,比如字符串 '0' 和数字 0 比较的时候会返回true; 而对于 === 则会同时比较类型和变量值,若类型不相同也不会返回true; is_numeric() 函数用于检测类型是否为数字或数字字符串 所以当a为0且不会转换为false的就是字符串a
通过阅读代码发现需要同时满足 a==0 且 if a 为真,b 不是数字且 b>1234 才会返回 flag 检索 php 的== == 是 不严格 的 比较, 会 先 进 行 类 型 转 换 再 比 较 , 查 看 php 类 型 比 较 表 https://www.php.net/manual/zh/types.comparisons.php 发现“0”为 true,所以可以把参数 a 构造为’0’或者‘alph’这种转换后为 0 但本身不为 False 的 形式 数字和字符混合的字符串转换为整数后只保留数字 B 可以构造为 12345s,类型转换后为 12345,大于 1234 http://111.198.29.45:36234/index.php?a=’0’&b=12345s 得到 flag
get_post: http://111.198.29.45:34567
利用hackbar解决:
攻防世界web新手练习区(2)的更多相关文章
- 攻防世界——web新手练习区解题记录<1>(1-4题)
web新手练习区一至四题 第一题view_source: 题目说右键不管用了,我们先获取在线场景来看一看,我们看到这样一个网页,并且右键确实点了没什么反应,而用到右键一般就是查看网页源码 用快捷键(F ...
- 攻防世界--web新手练习区(1)
1. 题目描述:X老师想让小明同学查看一个网页的源代码,但小明却发现鼠标右键不管用了. http://111.198.29.45:53629 通过阅读题目描述分析,我们需要查看源码,但是鼠标右键 ...
- 攻防世界——web新手练习区解题总结<3>(9-12题)
第九题simple_php: 看题目说是php代码,那必定要用到php的知识,让我们先获取在线场景,得到如下网页 仔细看这个代码,意思大概是: 1.当a==0且a为真时输出flag1 2.当b为数字退 ...
- 攻防世界——web新手练习区解题总结<2>(5-8题)
第五题cookie: 所需工具:burpsuite(需自行下载) 老规矩看完题,先获取在线场景,得到如下网页 那么什么是cookie呢?大体上就是网站为了识别用户身份而储存在用户本地终端上的数据,类型 ...
- 攻防世界Web新手练习区(1-6)
第一题 view_source 获取在线场景查看网页 打开页面之后首先考虑查看源代码,发现不能右击 根据题目的提示考虑使用view-source查看源代码,发现flag 第二题 get_post 获取 ...
- 攻防世界web新手区
攻防世界web新手区 第一题view_source 第二题get_post 第三题robots 第四题Backup 第五题cookie 第六题disabled_button 第七题simple_js ...
- 攻防世界 Misc 新手练习区 stegano CONFidence-DS-CTF-Teaser Writeup
攻防世界 Misc 新手练习区 stegano CONFidence-DS-CTF-Teaser Writeup 题目介绍 题目考点 隐写术 摩斯密码 Writeup 下载附件是PDF文件打开,研究一 ...
- 攻防世界 Misc 新手练习区 ext3 bugku Writeup
攻防世界 Misc 新手练习区 ext3 bugku Writeup 题目介绍 题目考点 WinHex工具的使用 linux磁盘挂载mount命令 Writeup 下载附件拖进winhex分析一下,查 ...
- 攻防世界 Misc 新手练习区 gif Writeup
攻防世界 Misc 新手练习区 gif Writeup 题目介绍 题目考点 仔细联想 字符转换 Writeup 下载附件并打开 104张黑白图 发现是一堆黑色和白色的图片,按某种规律排列,猜想flag ...
随机推荐
- redhat 7.6 安装 git
1.下载git包 下载网址:https://mirrors.edge.kernel.org/pub/software/scm/git/ //自己下载想要的版本 或者直接在Linux 直接使用wge ...
- Mybatis学习day2
Mybatis初探 之前已经用利用mybatis实现链接数据库查询所有用户的信息(用的是在resources下建立和Dao层一样目录的xml实现的).这次再来看一下增删改查等其它的操作. 利用Myba ...
- springMVC读取本地图片显示到前端页面
@RequestMapping("/getImage") @ResponseBody public void getImagesId(HttpServletResponse rp) ...
- 循环语句(for语句的用法)
for语句是最常用的循环语句,出现频率极高,多用于各种循环计算.具体的形式如下:for(表达式1;表达式2;表达式3) { 语句;}表达式1:用于初始化变量,变量既可以是全局也可以是局部变量, ...
- static关键字的作用是什么?
static的作用:常用来修饰变量. 全局变量被static修饰后,就称之为静态全局变量:局部变量被static修饰后,就称之为静态局部变量.统称为静态变量. 如果需要进一步解释下面的现象,可以了解i ...
- DVWA靶机--简单的文件上传漏洞
简单的文件上传漏洞(靶机安全级别:low) 事先准备好一句话木马,密码为pass 上传一句话木马,显示上传路径(一般网站是不会显示路径的,这里靶机为了方便你测试漏洞,直接显示出了路径: ../../h ...
- 计算机网络历史与基本概念&分层与参考模型(TCP/IP与OSI)&通信过程
Definition: 计算机网络:使用单一技术相互连接的自主计算机的互联集合. 单台计算机独立自主(不受制于其他计算机),连接介质可以使光纤.铜线也可以是微波.红外.卫星. 互联网络(Interne ...
- (任意进制转换)将 r 进制数转成 k 进制数
我们知道任意进制转换为十进制,都是乘以基数的多少次方,然后相加: 十进制转换为任意进制,都是除以基数,然后倒着取余数: 所以这里是用十进制数中转,实现任意进制数的转换 #include<iost ...
- Spark教程——(7)编写spark-sql程序读取HBase定时生成报表
plugin划红线报错: maven-scala-plugin maven-shade-plugin 查找Maven仓库,发现一个没有jar包,一个jar包无法解压缩打开,删除Maven中坏的jar包 ...
- 外部IC寄存器的位定义
宏定义法:直接就是常量操作 方法1:用#define来定义,方便省事,缺点:系统不做检查 方法2:用enum来定义,可以像#define一样定义常量,同时系统做检查.既可以定义某个位也可以定义几个位的 ...