diff --git a/plugins/op_waf/index.py b/plugins/op_waf/index.py index d9808314a..7621b2f51 100755 --- a/plugins/op_waf/index.py +++ b/plugins/op_waf/index.py @@ -211,6 +211,23 @@ def setRetry(): def setSiteRetry(): return public.returnJson(True, '设置成功!', []) +def saveScanRule(): + + args = getArgs() + data = checkArgs(args, ['header', 'cookie','args']) + if not data[0]: + return data[1] + + conf = getRuleJsonPath('scan_black') + content = public.readFile(conf) + cobj = json.loads(content) + + cobj['retry'] = args + + cjson = public.getJson(cobj) + public.writeFile(conf, cjson) + + return public.returnJson(True, '设置成功!', []) def setObjOpen(): args = getArgs() @@ -271,6 +288,8 @@ if __name__ == "__main__": print setRetry() elif func == 'set_site_retry': print setSiteRetry() + elif func == 'save_scan_rule': + print saveScanRule() elif func == 'waf_srceen': print getWafSrceen() elif func == 'waf_conf': diff --git a/plugins/op_waf/js/op_waf.js b/plugins/op_waf/js/op_waf.js index ec90a15f4..15f0f15ae 100755 --- a/plugins/op_waf/js/op_waf.js +++ b/plugins/op_waf/js/op_waf.js @@ -382,8 +382,6 @@ function setObjConf(ruleName, type) { }); tableFixed("jc-file-table"); } - var loadT = layer.msg('正在获取配置规则,请稍候..', { icon: 16, time: 0 }); - getRuleByName(ruleName, function(data){ var tmp = $.parseJSON(data.data); @@ -408,6 +406,129 @@ function setObjConf(ruleName, type) { }); } + +//常用扫描器 +function scanRule() { + + getRuleByName('scan_black', function(data){ + var tmp = $.parseJSON(data.data); + var rdata = $.parseJSON(tmp.data); + + create_l = layer.open({ + type: 1, + title: "常用扫描器过滤规则", + area: '650px', + closeBtn: 2, + shadeClose: false, + content: '
\ +
\ + Header\ +
\ +
\ +
\ + Cookie\ +
\ +
\ +
\ + Args\ +
\ +
\ + \ +
\ + \ +
\ +
' + }); + }); +} + +//保存扫描器规则 +function saveScanRule() { + pdata = { + header: $("textarea[name='scan_header']").val(), + cookie: $("textarea[name='scan_cookie']").val(), + args: $("textarea[name='scan_args']").val() + } + owPost('save_scan_rule', pdata,function(data){ + var rdata = $.parseJSON(data.data); + layer.msg(rdata.msg, { icon: rdata.status ? 1 : 2 }); + layer.close(create_l); + wafGloablRefresh(1000); + }); +} + +//IP白名单 +function ipWhite(type) { + if (type == undefined) { + create_l = layer.open({ + type: 1, + title: "管理IP白名单", + area: ['500px', '500px'], + closeBtn: 2, + shadeClose: false, + content: '
\ +
\ + \ + \ + \
\ +
\ +
\ + \ + \ + \ + \ + \ + \ + \ + \ + \ +
超始IP结束IP操作
\ +
\ +
\ +
\ + \ + \ +
\ + \ +
\ +
\ +
', + success:function(index,layero){ + // $('.tab_list .tab_block').click(function(){ + // $(this).addClass('active').siblings().removeClass('active'); + // console.log($(this).index()); + // if($(this).index() === 0){ + // $('.ipv4_list').show().next().hide(); + // }else{ + // $('.ipv4_list').hide().next().show(); + // } + // }); + //
IPv4白名单
IPv6白名单
\ + } + }); + tableFixed("ipWhite"); + } + + getRuleByName('ip_white', function(data){ + var tmp = $.parseJSON(data.data); + var rdata = $.parseJSON(tmp.data); + var tbody = '' + for (var i = 0; i < rdata.length; i++) { + tbody += '\ + '+ rdata[i][0].join('.') + '\ + '+ rdata[i][1].join('.') + '\ + 删除\ + ' + } + $("#ip_white_con").html(tbody); + }); +} + function wafScreen(){ owPost('waf_srceen', {}, function(data){ @@ -516,12 +637,12 @@ function wafGloabl(){ 常见扫描器'+ rdata.scan.ps + '' + rdata.scan.status + '
\ \ \ -
设置\ + 设置\ \ \ IP白名单所有规则对IP白名单无效--\ --\ - 设置\ + 设置\ \ \ IP黑名单禁止访问的IP' + rdata.cc.status + '\