【小白教程】CTF从入门到入门-05
2023-6-13 00:1:15 Author: 利刃信安攻防实验室(查看原文) 阅读量:7 收藏

21.滑稽

https://ctf.bugku.com/challenges/detail/id/68.html

http://114.67.175.224:15724/

F12查看源码


22.计算器

https://ctf.bugku.com/challenges/detail/id/69.html

http://114.67.175.224:11149/

23.GET

https://ctf.bugku.com/challenges/detail/id/70.html

$what=$_GET['what'];echo $what;if($what=='flag')echo 'flag{****}';
http://114.67.175.224:17918/?what=flag

24.POST

https://ctf.bugku.com/challenges/detail/id/71.html

$what=$_POST['what'];echo $what;if($what=='flag')echo 'flag{****}';

25.矛盾

https://ctf.bugku.com/challenges/detail/id/72.html

$num=$_GET['num'];if(!is_numeric($num)){echo $num;if($num==1)echo 'flag{**********}';}

考察php弱类型

PHP 弱类型是一种特性,它允许在比较和操作不同数据类型时进行隐式的类型转换。在 CTF(Capture The Flag)比赛中,常常会利用 PHP 弱类型特性来实施一些攻击或绕过验证的技巧。以下是一些常见的 PHP 弱类型 CTF 题目和解题思路:
1. 字符串比较:
- 题目:给定一个字符串比较,判断是否相等,例如 `$str == "admin"`
- 解题思路:由于 PHP 弱类型,它在比较字符串时会进行隐式类型转换。可以尝试通过构造不同的数据类型来绕过比较,如将 `$str` 设置为数字、布尔值、数组等,利用类型转换进行绕过。
2. 类型转换:
- 题目:给定一个判断条件,例如 `if ($str == 0)`
- 解题思路:PHP 弱类型会将字符串转换为数字进行比较。可以尝试构造字符串,使其在转换为数字时得到期望的结果,例如利用字符串 `"0e123"` 的科学计数法特性,使其在转换为数字时等于零。
3. 隐式类型转换:
- 题目:给定一个数学运算,例如 `$result = $num1 + $num2`
- 解题思路:PHP 弱类型会在数学运算中进行隐式类型转换。可以尝试构造不同类型的输入,如字符串、数组等,来利用类型转换特性进行计算溢出或绕过。
4. 文件包含:
- 题目:给定一个文件包含漏洞,例如 `include $_GET['file']`
- 解题思路:由于 PHP 弱类型,可以构造 `$_GET['file']` 的值为 `php://filter/convert.base64-encode/resource=index.php`,利用伪协议进行文件包含并进行源代码泄露。
http://114.67.175.224:10220/?num=1e


文章来源: http://mp.weixin.qq.com/s?__biz=MzU1Mjk3MDY1OA==&mid=2247504604&idx=2&sn=99093f4aec72fe52e1b7343b7147714c&chksm=fbfb6211cc8ceb07707ccd5b8c4906b070aa1c23d7f285101243b6c262cbd76ad98741e46049#rd
如有侵权请联系:admin#unsafe.sh