zoukankan      html  css  js  c++  java
  • [护网杯 2018]easy_tornado 模板注入

    1.  题目为三个文件夹的目录

    2.  逐一点进去浏览

    /flag.txt提示flag在/fllllllllllllag文件中

    /welcome.txt提示看不懂

    /hints.txt提示了一串利用md5的加密方法

    3.  留意到每个点进的文件夹url形式

    ?filename=/hints.txt&filehash=baa1923771de460f9de0551719341aa3

    filename填写文件名,filehash填写一串加密后的字符串,推测为hints.txt中提示的加密方法。

    4.  尝试将自己的cookie值带入进cookie_secret中进行加密,失败。

    5.  多番尝试无果,看wp,发现是第一次接触到的模板注入。

      模板注入涉及的是服务端Web应用使用模板引擎渲染用户请求的过程,和常见Web注入的成因一样,也是服务端接收了用户的输入,将其作为 Web 应用模板内容的一部分,在进行目标编译渲染的过程中,执行了用户插入的恶意内容,因而可能导致了敏感信息泄露、代码执行、GetShell 等问题。其影响范围主要取决于模版引擎的复杂性。

    观摩了大佬们的wp之后发现以下几点要点

      1. Error界面的url格式为/error?msg=Error,大佬看到注意到这一点之后便判断存在模板注入攻击。尝试构造/error?msg={{datetime}}
      2. 题目名字叫tornado,这是一个前段模板,大佬去查阅了该模板的官方文档。发现cookie_secret在Application对象settings属性中,还发现self.application.settings有一个别名
      3. handler指向的处理当前这个页面的RequestHandler对象,
        RequestHandler.settings指向self.application.settings,
        因此handler.settings指向RequestHandler.application.settings。
        构造payload获取cookie_secret
        /error?msg={{handler.settings}}

      4. 构造完payload后题目给出了cookie_secret。然后根据hint提示构造加密后的字符串,提交得到flag

    模板注入涉及到的知识点比较多,以后有机会一定会了解的更透彻,做完这题其实只是涉及了一下模板注入和了解了这种漏洞形式。

    https://blog.csdn.net/weixin_44677409/article/details/94410580

    https://www.freebuf.com/vuls/83999.html

  • 相关阅读:
    Web For Pentester 学习笔记
    Vulhub Docker环境部署
    XSS 渗透思路笔记
    文件上传Upload 漏洞挖掘思路
    文件上传Upload 学习笔记
    XCTF-WEB-高手进阶区-upload1-笔记
    XCTF-WEB-高手进阶区-PHP2-笔记
    XCTF-WEB-高手进阶区-NaNNaNaNNaN-Batman-笔记
    XCTF-WEB-高手进阶区-Web_python_template_injection-笔记
    用JavaScript制作简单的计算器
  • 原文地址:https://www.cnblogs.com/cmredkulaa/p/14534883.html
Copyright © 2011-2022 走看看