ezHTTP
1 | 描述:HTTP Protocol Basics |
1 | bp发包即可 |

1 | 页面返回 flag已经给我们了,,, |
很显然是一个JWT算法

Bypass it
1 | 描述:This page requires javascript to be enabled :) |

1 | 就只有登陆注册 功能 尝试一下弱口令 发现没登陆进去 |

1 | 通过提示 使用了javascript |
bp拦截响应包

1 | 发现由于JavaScript会跳转到login.html 尝试更换成register.html |

1 | 给我们跳转到了用户注册页面 随机注册个用户试试 |


1 | 注册成功 登陆即可获得flag |

其实可以根据登陆包直接构造出一个注册包 login改成register即可
Select Courses
1 | 描述:Can you help ma5hr00m select the desired courses? |

1 | 原本一直都不知道考点是什么 但是随便点击 发现就选上了一个 |
1 | import requests |
1 | 运行脚本 是一个随机性的问题 等一会 出现完所有课程id 即 选课完了 |


比赛时候的脚本是简历脚本课程一个个跑 然后换课程
赛后看网上wp整了跑新全课程脚本亦可以bp 攻击模块选课
2048*16
1 | 描述:2048还是太简单了,柏喵喵决定挑战一下2048*16 |
1 | 前端2048游戏 需要我们玩到32768 (显然很难玩到,游戏大神除外) |

1 | 发现了明显特征 game-won 可以猜测密文/表有可能为 |


1 | 经尝试 此处含密文 |

一个换表的base64(个人感受是挺无语的,我翻挺久的…..)
jhat
1 | 描述: |
1 | 附件给了dockerfile.txt |
1 | jhat 有关java安全 只能说自己学的还是少了 只能根据遇到的题目 继续去学习 |
jhat是jdk内置的工具之一。主要是用来分析java堆的命令,可以将堆中的对象以html的形式显示出来,包括对象的数量,大小等等,并支持对象查询语言
OQL是一种类似于SQL的查询语言,主要用于在Java虚拟机(JVM)的堆内存中进行对象的查找和筛选。
参考:OQL(对象查询语言)在产品实现中造成的RCE(Object Injection) - Nebula (wooyun.js.org)在产品实现中造成的RCE(Object Injection).html)
1 | new java.io.BufferedReader(new java.io.InputStreamReader(java.lang.Runtime.getRuntime().exec("cat flag").getInputStream(),"gbk")).readLine() |
第一个获取的RCE不完全 下面官方RCE相对于第一个 获取的shell更完整
1 | new java.util.Scanner(java.lang.Runtime.getRuntime().exec('cat /flag').getInputStream()) |

