实验室:在沙盒环境中注入服务器端模板
专家
该实验室使用FreeMarker模板引擎。它很容易受到伤害服务器端模板注入由于其实现的沙箱。要解决实验室,请突破沙箱以读取文件my_password.txt
来自卡洛斯的主目录。然后提交文件的内容。
您可以使用以下凭据登录到自己的帐户:
内容管理器:C0NT3NTM4N4G3R
解决方案
- 登录并编辑产品描述模板之一。请注意,您可以访问
产品
目的。
- 加载Javadoc
目的
类以找到应在所有对象上可用的方法。确认您可以执行$ {object.getClass()}
使用产品
目的。
探索文档以找到一系列方法调用序列,该序列使用静态方法授予对类的访问,该方法使您可以读取文件,例如:
$ {product.getClass()。getProtectiondomain()。getCodesource()。getLocation()。touri()。desolve('/home/home/carlos/my_password.txt')。tourl().pentream()。加入(” ”)}
- 在其中一个模板中输入此有效载荷并保存。输出将包含文件的内容作为小数ASCII代码点。
- 将返回字节转换为ASCII。
- 单击“提交解决方案”按钮并提交此字符串以求解实验室。