Polar CTF Web 简单(1)

Polar CTF Web 简单(1)

作为自己的副向也要认真学习刷题,但是现在哪一个方向都要认真学习刷题实践

swp:

这第一题就是要给我来个下马威?试试访问到/.index.php.swp,可以用御剑扫目录扫出来

F12查看代码

分析一下,POST传参,要求参数xdmtql字符串中必须包含"sys nb",就会返回flag,该参数不能是数组,故不可以进行数组绕过;要求这个参数又匹配/sys.*nb/is,又要求这个参数含有sys nb,产生矛盾

那么就传入足够长的数据使preg_match函数失效(利用PCRE回溯次数限制绕过)

import requests url = 'http://6798cfa0-6424-4490-af65-7ee1c5b6153e.www.polarctf.com:8090/' #自己的网址 data = { 'xdmtql': 'sys nb'+'very' * 250000 } r = requests.post(url=url, data=data).text print(r)

运行即可

简单rce:

是一段php代码

问一下ai这一段php代码

需要满足两个条件,eval才能执行:GET参数sys必须存在;POST参数yyds必须存在

对于no函数,通过正则匹配,禁止了一些读取命令如cat等、空格以及多个命令执行函数

那么就需要绕过空格过滤和未禁用的文件读取方法,用include直接包含/flag

/?sys=include"/flag";

POST传参yyds=666即可

蜜雪冰城吉警店:

总共8个,让点第9个隐藏款奶茶的单子,这真是神人

查看源代码

直接把id = 8改成id = 9,再点最后一个就行

召唤神龙:

是一个游戏界面,不知道咋玩成功

看源代码,发现在main.js有一段不知道什么加密的文本

问一下ai

是JSFuck,在线解即可

seek flag:

先访问robots.txt有flag3

看源代码没啥思路,用bp抓包,找了半天终于在响应这二找到了flag2

咋拿到flag1呢,看一下别人的博客,是要将cookie的id改为1,再发送请求即可

拼到一块 flag{7ac5b3ca8737a70f029dc0ad71dadd11}   (web类flag是动态的)

jwt:

登录界面

在源代码网络里发现一串base64加密字符串

解一下,但是看不出来啥

问一下ai就是个图标。也没看出来啥,看一下别人的博客

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

JWT是一种用于在网络上安全传递信息的轻量级令牌格式,基于 JSON 格式,常用于身份验证和信息交换。更多的在AI上可以了解一下

要先注册一个普通用户,查看源码,看到JWT以及值

在网站里解一下

jwt-cracker爆破出密钥为SYSA

jwt伪造,用户名改为admin

Yakit构造即可

login:

按F12会有登录提示

但是输入只是显示登陆成功

用bp抓包试试,也没啥结果。看一下别人的思路。

尝试去攻击,且学号不断向后递增就会发现从2开始每个学号对应的请求会有flag的一部分


拼起来即可 flag{dlcg}

iphone:

打开后有个界面,enter没啥信息

看一下代码

提示改UA,用bp改UA为iphone

还可以用HackBar改User Agent

浮生日记:

F12看代码,看title让弹个窗

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

发现如果写入<script>alert(1)</script>,输入就会变成空的

那就先闭合value值,再双写绕过

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

点击即可获得flag

$$:

得到php代码

重点是变量覆盖和正则绕过,用GET传参c给变量(符号为$)a,正则绕过下面的符号

先尝试FLAG,输出是NULL;那么要用到超全局变量GLOBALS,构造

?c=GLOBALS就可以看到了

爆破:

一段php代码

重点看if语句,检查经过 MD5 加密后的字符串的特定位置的字符是否相同。具体来说,它检查字符串的第2、15和18 个字符是否相同。如果这三个位置的字符相同,则继续执行内部代码块

继续看里面if,这段代码对特定位置的字符进行处理,并将它们转换为整数进行计算。具体地,它计算字符串的第 2、15 和 18 个字符的整数值相加,然后除以第 2 个字符的整数值,并检查结果是否等于字符串的第 32 个字符的整数值。如果相等,则执行内部代码块

根据分析和题目,可以先访问/?pass=text,再bp爆破

根据长度找到可疑之处,得到flag

还可以直接访问flag.php即可

XFF:

提示

那就直接XFF构造

发送给重放器,看响应

rce1:

由php代码

get传入ip参数,通过正则表达式过滤空格,没有空格才会继续执行执行 ping -c 4 {$ip}命令

用管道符,输入命令127.0.0.1|ls,返回一个fllllaaag.php

直接查看,右键查看源码即可

GET-POST:

根据代码

先GET传参,再POST传参即可

被黑掉的站:

扫目录

访问index.php.bak,给了一堆字典

访问shell.php

OK,字典爆破

签到题:

好家伙,有点贴脸开大,bp抓包,发现cookie初始值为no

改为yes,发包,发现一串base64加密字符串

在线解

直接访问

分析代码,GET传参file,过滤把../替换为空,拼接.php后缀,包含文件

php伪协议结合双写绕过,用伪协议以base64编码进行内容读取

base64解密即可

签到:

提交无法点击,F12查看源代码,在元素里将disabled删去

随便输一个数可以给提示

那这不就简单了嘛,可是发现复制不全

把maxlength调大一点就行

提交获得flag

session文件包含:

随便输没啥信息

查看源码,发现是php伪协议

用命令把php代码编码后的输出

base64解码

当通过 POST 传入 name 参数时,PHP会把Session数据写入服务器本地的 Session 文件;如果在 name 里传入恶意 PHP 代码(比如 <?php system('ls');?>),这段代码会被写入 Session 文件;再利用 include($_GET['file']) 的 LFI 漏洞,包含这个 Session 文件,PHP 就会执行里面的恶意代码。那么就用session恶意文件上传

先抓包,看到一个PHPSESSID,先将php语句包含到sess_ctf文件中,发送,再传入一句话木马

发现了flaggggg文件,继续查看发送即可,可能需要多次发送

Don't touch me:

F12查看源代码,发现有2.php,访问

发现click,不能点击。继续查看源代码,有个disabled,删掉即可

click,查看源代码,发现有fla.php,访问即可

robots:

根据题目提示,访问robots.txt

继续访问即可

php very nice:

一段php代码,是php反序列化

分析一下:对 $_GET['a'] 进行了 unserialize 反序列化操作,且类中存在 __destruct 魔术方法调用了危险的 eval() 函数执行代码

构造一个 Example 类的对象,把 $sys 属性改成我们想执行的 PHP 代码,再将对象序列化成字符串,通过 ?a= 传入

直接构造代码

<?php class Example { public $sys = 'system("ls");'; // 这里替换成你想执行的代码,比如执行命令、读文件等 } // 序列化对象,生成可传入的字符串 $a = new Example(); echo urlencode(serialize($a)); // urlencode 避免特殊字符被转义 ?>

可以直接在线运行

https://www.jyshare.com/compile/1/

运行,GET传参

发现有flag.php,但是直接访问不行,需要通过代码,将ls换成查看flag.php,我这不能直接cat,需要tac,要直接将flag当作文本输出,而不是执行文件而导致没有输出

<?php class Example { public $sys="system('tac cat flag.php');"; } $a = new Example(); var_dump(serialize($a)); ?>

运行,GET传参即可

ezupload:

随便上传一个,发现要上传GIF文件

那就上传一句话木马,把文件后缀改成gif,上传并抓包,将1.gif换成1.php发包

蚁剑连接即可

找到flag

cookie欺骗:

根据网页提示,只有admin用户才能获得flag

先看源代码,尝试修改,发现改不了;抓包修改即可

upload:

上传图片,尝试上传图片没有回应,查看源码发现信息

 

 

访问,有代码

分析一下代码,利用str_ireplace函数过滤了php,那就双写pphphp

蚁剑连接

找到flag

 

Read more

一步到位!VSCode Copilot 终极魔改:智谱 GLM-4.6 接入 + 任意大模型适配

VSCode Copilot 接入 GLM-4.6 方法 安装 vscode-zhipuai 插件后,在 VSCode 设置中添加以下配置: { "zhipuai.apiKey": "你的API_KEY", "zhipuai.model": "GLM-4" } 通过 Ctrl+Shift+P 调出命令面板,执行 ZhipuAI: Toggle Chat 即可激活对话窗口。该插件支持代码补全、对话和文档生成功能。 任意大模型适配方案 修改 VSCode 的 settings.json 实现通用 API 对接: { "ai.

比迪丽AI绘画模型Python爬虫实战:自动化采集艺术素材

比迪丽AI绘画模型Python爬虫实战:自动化采集艺术素材 艺术创作需要灵感,也需要素材。但手动收集图片素材耗时耗力,如何高效获取优质艺术素材并快速进行风格转换?本文将展示如何用Python爬虫结合比迪丽AI绘画模型,搭建一套自动化艺术素材采集与处理流水线。 1. 项目背景与价值 艺术创作过程中,寻找合适的参考素材往往需要花费大量时间。无论是插画师、设计师还是艺术爱好者,都需要不断收集各类图像素材来激发灵感。传统的手动搜索和保存方式效率低下,且难以系统化管理。 比迪丽AI绘画模型的出现为艺术创作带来了新可能,但如何为其提供高质量、多样化的输入素材仍是一个实际问题。通过Python爬虫技术,我们可以自动化地从多个来源采集艺术素材,再结合比迪丽的风格转换能力,快速生成符合需求的艺术图像。 这套方案特别适合需要大量素材的内容创作者、设计团队和教育机构,能够将素材收集时间从几小时缩短到几分钟,让创作者更专注于创作本身而非素材准备。 2. 整体方案设计 我们的自动化艺术素材采集系统包含三个核心模块:爬虫采集模块、数据处理模块和AI风格转换模块。 爬虫模块负责从目标网站获取原始

端到端AI解决方案:llama-recipes项目架构设计解析

端到端AI解决方案:llama-recipes项目架构设计解析 【免费下载链接】llama-recipesExamples and recipes for Llama 2 model 项目地址: https://gitcode.com/gh_mirrors/ll/llama-recipes 想要快速上手Llama模型开发?llama-recipes项目为您提供了完整的端到端AI解决方案架构!这个开源项目汇集了Llama模型在各种应用场景下的最佳实践,从基础推理到复杂的企业级部署,应有尽有 🚀 项目架构设计概览 llama-recipes项目采用模块化架构设计,将复杂的AI应用开发拆解为可复用的组件。整个项目分为四大核心模块: 第三方集成层 位于3p-integrations/目录,包含AWS、Azure、Google Cloud等主流云平台的完整接入方案,以及LangChain、LlamaIndex等流行框架的深度集成。 端到端应用层 在end-to-end-use-cases/目录中,您会发现: * 智能客服系统 - 基于RAG架构的对话机器人 * 研究

【Copilot配置】—— copilot-instructions.md vs AGENTS.md vs .instructions.md三种指令文件解析与配置

【Copilot配置】—— copilot-instructions.md vs AGENTS.md vs .instructions.md三种指令文件解析与配置

Copilot 指令文件全解析:copilot-instructions.md vs AGENTS.md vs .instructions.md 作为常年和 VS Code 打交道的研发,最近在折腾 Copilot Agent 时,我发现很多同学和我一样,被 .github/copilot-instructions.md、AGENTS.md 和 .instructions.md 这三个文件绕晕了。 明明都是给 Copilot 写的 “指令”,为什么要分三个文件?它们的生效范围有啥区别?什么时候该用哪一个? 带着这些疑问,我翻遍了官方文档,又在自己的 AI Agent 项目里反复实测,终于把这三者的关系理得清清楚楚。这篇文章就用最直白的语言,结合实战配置,帮你彻底搞懂 Copilot 指令文件的使用逻辑。 一、先搞懂核心: