picoCTF2023
本文最后更新于:2023年6月5日 下午
[TOC]
picoCTF2023
web
findme
看一下题目描述,username:test
,password:test!
注意后面有一个感叹号
我们在登录时抓包:
将
1 |
|
重定向之后,再将id进行base64解码:
1 |
|
得到flag
MatchTheRegex
正则匹配一个字符串,匹配上了给flag
我们登录进去看一下源代码:
这里提示: ^p...F!?
,结合比赛名称,我们只需要输入picoCTF!
即可得到flag
SOAP
根据提示:XML外部实体注入
我们点击details
时进行抓包
如图:
确实是xml类型的信息
我们只需要构造,引用一个外部实体即可:
1 |
|
More SQLi
根据提示:SQLiLite
查阅资料: SQLite
也是一个数据库
SQLite
与mysql
类似,但是没有information_schema
数据库
并且SQLite
有一个不同点,注释不能使用#
,需要使用--
此题的注入点为:password
非预期解
直接使用单引号’闭合,然后使用联合查询union,再使用--
闭合掉后面
1 |
|
预期解
首先我们已经知道了字段数为1,所以我们需要查询表名:
以下三种方式都可以,主要是注释不同
SQLite
:
- 每一个
SQLite
数据库都有一个叫sqlite_master
的表,该表会自动创建。sqlite_master
是一个特殊表, 存储数据库的元信息, 如表(table), 索引(index), 视图(view), 触发器(trigger), 可通过select查询相关信息。
我们通过如下方式查询sql建表语句
1 |
|
(题目好像改了)
Forensics
hideme
foremost
分离一下,得到压缩包,压缩包中有flag
PcapPoisoning
得到一个流量包文件,使用wireshark打开:
进行长度排序,最长的那个藏了flag
who is it
这个是通过ip查询 whois
,
什么是 whois
?
所以我们根据提示,可以使用ip来查询到域名相关者的姓名信息,
我们可以通过网站:查询
如图:
名字就是flag
picoCTF2023
https://leekosss.github.io/2023/08/24/picoCTF2023/