[网鼎杯 2020 半决赛]AliceWebsite
2021.2.25
考点
目录穿透
根据 url 类型猜测
做题步骤
/index.php?action=../../../../../flag
得到 flag
[HITCON 2016]Leaking
2021.2.25
考点
nodejs 8.0 之前可以利用 buffer 查看内存
做题步骤
打开网页给到代码
1 | ; |
引用了 vm2 应该是个 nodejs 的沙盒题目
利用沙箱逃逸
1 | # encoding=utf-8 |
[FBCTF2019]Event
2021.3.3
考点
Flask 伪造
SSTI
做题步骤
发现能注册 但是不能注册 admin 账号 可能和 cookie 有关
可能需要伪造
进入后有个留言功能,首先想到的就是看看有没有SSTI
cookie 解密
user cookie 有点奇怪
不知道怎么解密。
这里可能就是需要伪造
这个应该是没我要 伪造的值。
测试我们的传入的参数的位置
存在 3个参数,event_address
event_name
even_important
测试发现 event_important
存在 SSTI 漏洞
event_address=123&event_name=123&event_important=__class__
可以得到 __class__
为 <class 'app.Event'>
这里我们要伪造 cookie, 那么我们就必须要知道 伪造需要的 秘钥是什么
一般 秘钥都存放在 config 里面的
event_important=__class__.__init__.__globals__[app].config
fb+wwn!n1yo+9c(9s6!_3o#nqm&&_ej$tez)$_ik36n8d7o6mr#y
看看能不能利用这个来解密 我们的user cookie
解密是我们的注册账号名字
加密 admin
对应的 cookie
直接利用这个脚本 不能 进行 加密。
自己写脚本加密
1 | from flask import Flask |
替换 user cookie 得到flag
[极客大挑战 2020]Roamphp1-Welcome
2021.3.10
考点
做题步骤
打开网页提示 是 405 抓包看看是什么情况
这样说的 这个方法不被允许我们换成 post 传参
成功返回
传入数组
roam1[]=1&roam2[]=2
返回 phpinfo
然后看到一个重点
访问得到flag
[HarekazeCTF2019]Sqlite Voting
2021.3.3
考点
做题步骤
打开一个 选择网页
然后我们可以查看 vote.php
1 |
|
里面有个 update 操作
1 | $res = $pdo->query("UPDATE vote SET count = count + 1 WHERE id = ${id}"); |
还有个数据库
1 | DROP TABLE IF EXISTS `vote`; |
里面 存在一个 flag 表里面存在flags
我们要做的就是想办法得到 这个 flag
我们会发现,在程序中,没有可以回显的地方。
这里我们只能利用 报错注入,或者盲注。
根据这个题目,我们知道的是这个是一个 sqllite 的数据库。
因为 UPDATE
所以看看有没有办法
[HarekazeCTF2019]Sqlite Voting
2021.3.3
考点
做题步骤
打开一个 选择网页
然后我们可以查看 vote.php
1 |
|
里面有个 update 操作
1 | $res = $pdo->query("UPDATE vote SET count = count + 1 WHERE id = ${id}"); |
还有个数据库
1 | DROP TABLE IF EXISTS `vote`; |
里面 存在一个 flag 表里面存在flags
我们要做的就是想办法得到 这个 flag
我们会发现,在程序中,没有可以回显的地方。
这里我们只能利用 报错注入,或者盲注。
根据这个题目,我们知道的是这个是一个 sqllite 的数据库。
因为 UPDATE
所以看看有没有办法