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

如何编写一个高质量的AI Skill

在AI Agent与智能体技术快速普及的今天,**Skill(技能)**正成为连接业务需求与AI能力的核心单元。不同于传统API或微服务,一个Skill不仅封装了执行逻辑,还融合了语义理解、工具调用、上下文推理与结果生成等智能行为。 一、什么是Skill?为什么需要它? 核心定义 Skill = 智能 + 行动 + 上下文 * 智能:能理解自然语言指令(如"帮我review一下这个React组件的代码") * 行动:能调用外部工具(linter、代码分析工具、测试框架等)完成任务 * 上下文:能结合项目规范、团队编码标准、历史Review意见做出合理判断 典型案例 "Review前端代码"不是一个简单的语法检查,而是一个Skill——它需识别代码类型、应用团队规范、检查安全性(XSS、CSRF)、验证可访问性、评估性能影响,并给出可执行的建议。 技术本质 从技术架构看,

2026年 Trae 收费模式改变 —— AI 编程“免费午餐”终结后的生存法则

2026年 Trae 收费模式改变 —— AI 编程“免费午餐”终结后的生存法则

关键词:Trae, Cursor, AI 编程成本, Token 计费, Agent 模式, 职业转型 大家好,我是飞哥!👋 2026年,AI编辑器Trae 也将收费模式改为按 Token 收费。 有些开发者开始动摇:“AI 编辑器越来越贵,是不是应该放弃使用,回归纯手写代码?” 对于用户来说,这无疑是一次涨价。但在飞哥看来,这次涨价背后释放了两个非常关键的信号: 1. AI 技术已进入稳定成熟期: 厂商不再需要通过“免费/低价补贴”来换取用户数据进行模型迭代。产品已经足够成熟,有底气接受市场真实定价的检验。 2. 倒逼用户进化,优胜劣汰: 涨价是一道筛子。它在要求用户大幅提升自己的 AI 使用水平(如 Prompt 技巧、Context 管理)。 * 低级使用者(只会问“怎么写代码”

2026 GitHub 热门 Python 项目:AI 代理与数据工具精选

2026 GitHub 热门 Python 项目:AI 代理与数据工具精选

2026 年的 Python 生态正在被 AI 代理(AI Agent)和数据工程工具重新定义。本文精选 GitHub 上最具影响力的开源项目,涵盖 AI 代理框架、数据管道工具、向量数据库客户端等关键领域,附带代码示例与架构解析。 一、2026 Python 开源生态全景图 ┌─────────────────────────────────────────────────────────────────────┐ │ 2026 Python 开源热门方向 │ ├──────────────────┬──────────────────┬───────────────────────────────┤ │ AI 代理框架 │ 数据工具链 │ 基础设施与编排 │ ├──────────────────┼──────────────────┼───────────────────────────────┤ │ LangGraph │ Polars │ Dagster │ │ CrewAI │ DuckDB │ Prefect │ │ AutoGen │ ibis-project │