【问题标题】:How to bypass jQuery Validations如何绕过 jQuery 验证
【发布时间】:2017-10-24 05:29:47
【问题描述】:
var FormFileUpload = function() {
  return {
    init: function() {
      $('#fileupload').fileupload({
        disableImageResize: false,
        autoUpload: false,
        disableImageResize: /Android(?!.*Chrome)|Opera/.test(window.navigator.userAgent),
        maxFileSize: 5000000,
        acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i,
        {
          withCredentials: true
        },
      });
      $('#fileupload').fileupload('option', 'redirect', window.location.href.replace(/\/[^\/]*$/, '/cors/result.html?%s'));
      if ($.support.cors) {
        $.ajax({
          type: 'HEAD'
        }).fail(function() {
          $('<div class="alert alert-danger"/>')
            .text('Upload server currently unavailable - ' + new Date())
            .appendTo('#fileupload');
        });
      }

      $('#fileupload').addClass('fileupload-processing');
      $.ajax({
          withCredentials: true
        },
        url: $('#fileupload').attr("action"),
        dataType: 'json',
        context: $('#fileupload')[0]
      }).always(function() {
      $(this).removeClass('fileupload-processing');
    }).done(function(result) {
      $(this).fileupload('option', 'done')
        .call(this, $.Event('done'), {
          result: result
        });
    });
  }

};

}();

jQuery(document).ready(function() {
  FormFileUpload.init();
});
  • 我需要绕过文件上传规则,
  • 像这个脚本只允许gif,jpeg,png,
  • 我需要上传一些其他格式可以吗
  • 如 php、text 等。
  • 有没有办法绕过它们。我打算在我的网站上添加这个脚本。所以任何人都可以绕过它们,这对我的网站是强制性的。

【问题讨论】:

  • Java 不是 JavaScript。与 Java 无关的问题请不要使用java 标签。
  • @Kuru 请不要建议删除验证。这将是非常危险的,并且会留下恶意脚本的漏洞
  • @Tushar 理解..绕过意味着不需要验证...这就是为什么我只是作为建议发表评论..

标签: javascript jquery validation rules


【解决方案1】:

你只需要在acceptFileTypes验证正则表达式中添加你想要的扩展名,比如如果你想添加.php和.txt,像下面这样更改正则表达式

acceptFileTypes: /(\.|\/)(gif|jpe?g|png|txt|php)$/i, 

所以无论您需要添加什么文件扩展名,只需使用| 符号添加即可。此管道符号用于正则表达式中的OR 符号


请注意:不要允许所有文件类型,因为这将是安全漏洞,并可能成为攻击者的漏洞。也有人可以上传恶意脚本,所以这里需要非常小心。

【讨论】:

    【解决方案2】:

    您可以添加文件类型 -

    init: function () {
        $('#fileupload').fileupload({
            .......
            acceptFileTypes: /(\.|\/)(gif|jpe?g|png|php|txt)$/i,  
    

    或者可以选择所有字母字符**(不推荐)

    init: function () {
            $('#fileupload').fileupload({
                .......
                acceptFileTypes: /(\.|\/)([A-z]+)$/i,
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-08
      • 2013-11-17
      • 1970-01-01
      • 2011-10-04
      • 1970-01-01
      相关资源
      最近更新 更多