CTF
文章平均质量分 72
CTF题
follycat
一个学习web的菜狗
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2022DASCTF MAY 挑战赛-fxygo
ssti+jwt伪造。原创 2025-01-23 10:23:42 · 468 阅读 · 0 评论 -
春秋杯-WEB
从而找到DownUnderCTF2022的题目。通过返回包,可以看到PHP版本为8.1.31。可以看到主页那里有个登录测试之后为ssti。fenjing梭哈即可得到payload。通过github脚本进行读取flag。看到题目名字为file_copy,当输入路径时会返回目标文件的大小,id改为1admin改成true。一个为上传位置,另一个为解压位置。先随便创建一个账号,然后登录。通过代码审计可以得出链接位置。拼接得到软链接的路径。原创 2025-01-17 19:28:56 · 811 阅读 · 0 评论 -
楚慧杯-Web
仔细阅读代码后发现要得到Flag很简单:先传参wq让其等于"二仙桥",而后利用extract函数覆盖变量pubcky让其不等于"二仙桥"即可执行反序列化代码。序列化代码中,__wakeup()函数是在对象被实例化后立即调用的,只要让其中的yuki(即where_you_go)等于molly的值(也就是"dont_tell_you")就可以得到Flag了,那怎么让where_you_go等于我们想要的值呢?可以看到p0pmart.php这个文件存在反序列化漏洞,绕过后即可读到Flag。原创 2024-12-20 20:49:23 · 773 阅读 · 0 评论 -
ciscn2024
但是,突然想到2023CISCN-gosession中go语言的ssti更改了python的app.py,所以app.py是可以更改的,而这个题中app.py可以直接被读取到,所以直接读取到app.py里面去就行了。自己本地搭建一个,并修改下代码,让他变成可以看到回显的ssti,先绕过黑名单再说。然后准备写文件,试了1.txt这些也不太行,其实这时候已经没有啥思路了,本来想提权的,但是到处翻,在/run/log找到flag,就不提权了。进行解密,一个个排出来,就可以得到密码了。然后就得到flag了。原创 2024-12-20 20:46:08 · 714 阅读 · 0 评论 -
[SCTF2019]Flag Shop
使用robots.txt,看到/static/secretkey.txt,但是源码在filebak中,不知道为什么语法为Ruby的语法所以思路为Ruby模版注入。发现secret的输出方式,其中ruby预定义变量里,在$'后会最后一次匹配字符串,所以进入代码后is working不被ruby代码解析,然后使用ERB模版进行注入。所以传入/work?SECRET=&name=is working得到:构造后,将jwt解码得到flag原创 2024-12-11 20:22:24 · 1214 阅读 · 0 评论 -
SQL注入整理,不太全
在CTF比赛中,攻击者通常需要通过分析目标应用程序的代码和网络流量来确定注入点,并尝试不同的注入方法来绕过验证和获取敏感信息。基于错误的注入利用应用程序在处理SQL查询时产生的错误信息来获取敏感数据。CTF中的SQL注入是一种常见的攻击技术,攻击者通过构造恶意的输入来绕过应用程序对用户输入的验证和过滤,从而执行未经授权的数据库操作。始终返回 true,因此查询将返回所有用户记录,而不是仅与提供的用户名和密码匹配的记录。基于堆叠查询的注入是一种高级的注入技巧,它可以使攻击者在单个请求中执行多个SQL查询。原创 2024-11-20 23:07:18 · 897 阅读 · 0 评论 -
[安洵杯 2019]iamthinking-parse_url绕过thinkphp6.0反序列化
首先,序列化以*__destruct()*开始,我们可以搜索这个函数,最后,我们找到位于vendor/tothink/think-orm/src/Model.php中的这个函数。所以往下走,看到getChangedDate()函数,这个函数也没啥,后面那个if当data不为空时就已经触发不了了,所以我们跟进checkAllowFields函数。前面那个if可以不要管,默认就是不能触发的,然后就是checkData()函数,这个函数如果我们跟进去其实可以发现就是个void。原创 2024-11-19 23:18:19 · 1136 阅读 · 0 评论 -
SQL注入注入方式(大纲)
PHP在处理提交数据前就会进行一次url解码,然后urldecode()函数又进行了一次解码。若mysql_real_escape_string()在urldecode()之前,则不会过滤urldecode()产生的单引号。例如:构造id=1%2527(%25=%),解码一次后会变成1%27,再进行解码变成id=1‘,单引号引起注入。如果存在Base64_decode()函数,并且没在后面有过滤直接拼接到SQL语句中,则导致了SQL注入。在进行GBK编码时,将%df%5c看成一个宽字符,得到。原创 2024-11-17 22:32:27 · 1325 阅读 · 0 评论 -
羊城杯2024,python反序列化
然后直接传入即可反弹shell,本来以为是第二个反序列化点进行触发的,再加上没有读取到密匙,所以卡了挺久,而真正的触发点在get_cookie中的cookie_decode函数那个反序列化点,进行反弹。只要绕过就行,使用opcode语句进行手搓payloud,反弹shell,然后附上加密脚本。这个是secret_code 这个卡了好久,就是没看到这个东西。审代码可以发现他的解密逻辑和构造逻辑。同样读取app.py。原创 2024-11-16 20:15:50 · 285 阅读 · 0 评论 -
ISCTF2024
先审源码,纯js题这段代码实现了一个基本的用户认证系统,包括用户注册、登录、和受保护的页面(/index),所有这些功能都使用express和一些其他中间件来处理 HTTP 请求和 Cookie 管理。原创 2024-11-16 20:13:38 · 1163 阅读 · 0 评论 -
羊城杯2020Easyphp
我们可以进行尝试绕过,只要绕过单引号就行,然后使用&字符进行同时执行。当然我们现在还不知道要传啥Cookie,我们到robots.txt里面看看。将木马传入2.php中配合蚁剑进行查看env得到flag。看到可以返回最后一个文件,所以我们可以注入一句话木马。尝试过后可以发现,题目绕过了read后面的编码。我们可以尝试双重urlencode进行绕过。发现Cookie要为GWHT,其实可以猜到。看到url,可以想到伪协议读取。同样,我们也可以伪协议进行读取。由我们的代码可以知道有绕过。然后我们可以看到搜索框,原创 2024-11-12 21:13:26 · 714 阅读 · 0 评论 -
2024年NSSCTF秋季招新赛-WEB
The future Revenge这个题是一个cve,之前basectf的fin出了这个题CVE-2024-2961原创 2024-10-28 16:37:01 · 2328 阅读 · 1 评论 -
Litctf-web
取反绕过,自增应该也行试了下没过。${_}=""输出上一次执行结果。$_++也为1也可以应该。原创 2024-10-28 11:40:15 · 538 阅读 · 0 评论 -
python-flask框架不出网反序列化解法(新版内存马)
当网页请求进入Flask时, 会实例化一个Request Context. 在Python中分出了两种上下文: 请求上下文(request context)、应用上下文(session context). 一个请求上下文中封装了请求的信息, 而上下文的结构是运用了一个Stack的栈结构, 也就是说它拥有一个栈所拥有的全部特性. request context实例化后会被push到栈_request_ctx_stack中, 基于此特性便可以通过获取栈顶元素的方法来获取当前的请求.()或.pop()替换.原创 2024-10-25 16:17:08 · 1469 阅读 · 0 评论 -
NSSRound16
审核代码,简单的md5绕过。原创 2024-10-22 17:30:01 · 853 阅读 · 0 评论 -
NSSRound#17 Basic web
一个登录界面看到页面名字Robots?转到robots.txt看到加密。原创 2024-10-22 17:31:08 · 402 阅读 · 0 评论
分享