当前位置: 首页 > news >正文

有个新网站专门做外贸的叫什么/seo营销方案

有个新网站专门做外贸的叫什么,seo营销方案,让别人做网站多久开始注册域名,企业网站建设心得0x00 常见WAF简单分析 WAF主要分为硬件WAF和软件防火墙,硬件WAF如绿盟的NSFOCUS Web Application Firewall,软件防火墙比较有名的是ModSecurity,再就是代码级别的ngx_lua_waf。下面谈谈个人对几款防火墙的理解: 硬件WAF个人觉得只…

0x00 常见WAF简单分析


WAF主要分为硬件WAF和软件防火墙,硬件WAF如绿盟的NSFOCUS Web Application Firewall,软件防火墙比较有名的是ModSecurity,再就是代码级别的ngx_lua_waf。下面谈谈个人对几款防火墙的理解:

硬件WAF个人觉得只适合在那种访问量较少的网站,比如政府网站,公司的介绍网站等等。硬件WAF的的优势在于规则有专门的安全公司维护,管理方便,但也存在一个致命的弱点,使用传统的方式来解包到应用层对性能的需求较高,而且当访问量很大的时候延时比较大,这样在高并发访问的情况下要使用硬件WAF就只能使用很多台WAF了,这样成本就非常高了;还有一个在接触过程中发现的问题,就是硬件WAF的规则虽然多而且有人维护,但是一般公司很难敢直接开启阻难,很多都是只记录,并不能阻难,这样WAF的意义就变得小多了。

ModSecurity在网上的评价都是很高的,性能高,规则全。最开始我研究的也是这款WAF,但是在实际使用过程中发现问题,就是在高并发的情况下,运行一段时间,会出现内存飙升,而且不下来的问题。这个问题再ModSecurity的讨论论坛上面也发现了有人提出这样的问题,但一直未解决(https://github.com/SpiderLabs/ModSecurity/issues/785)。针对于规则全的优势,一般使用者也不敢直接开启所有的规则拦截,毕竟每个公司的业务不同,规则也不可能直接套用。

基于高性能,低成本的想法,发现了@loveshell开发的ngx_lua_waf,经过实际使用下来,确实性能极好,由于LUA语言的性能是接近于C的,而且ngx_lua_module本身就是基于为nginx开发的高性能的模块。安全宝的云 WAF,以及cloudflare的新waf也是基于此模块使用LUA开发的。结合ModSecurity的思路,参考@loveshell的ngx_lua_waf来开发适合自己用的WAF,其中使用了很多@loveshell的函数,再此也表示感谢。

0x01 WAF框架设计


WAF开发过程中的主要方向为:

(1)主引擎的开发,主要关注主引擎的性能和容错能力

(2)规则的开发,主要关注规则的全面可靠,防勿拦截以及防绕过

(3)整体方案能够适应多站点,高可用性的环境

WAF的主要功能为:

(1)ip黑白名单

(2)url黑白名单

(3)useragent黑白名单

(4)referer黑白名单

(5)常见web漏洞防护,如xss,sql注入等

(6)cc***防护

(7)扫描器简单防护

(8)其他你想要的功能

WAF的总体检测思路:

(1)当用户访问到nginx时,waf首先获取用户的ip,uri,referer,useragent,,cookie,args,post,method,header信息。

(2)将获取到的信息依次传给上述功能的函数,如ip规则,在ip规则中,循环到所有的ip规则,如果匹配到ip则根据规则的处理方式来进行处理,匹配到之后不继续匹配后续规则。

(3)需要开启的功能依次在主函数中调用即可,顺序也可根据实际场景来确定最合适的顺序。

图示如下:

基于ngx_lua模块的waf开发实践

0x02 规则格式分析


规则说明:

比如规则:{"rule00001","rules","args|post|cookie",[[../]],"deny","logon"},

rule00001:规则编号,随意写

rules:规则名称,如x***ules,随意写

args|post|cookie|header:检测位置,|表示或,args,post,cookie,header可多选

../:匹配的正则表达式,标准PCRE正则

deny:处理方式,可选deny ,allow

logon:日志记录与否,可选logon,logoff

0x03 Cc***防护代码示例


#!bash
--在nginx.conf的HTTP中加入
--lua_shared_dict limit 50m; 根据主机内存调合适的值
--lua_shared_dict iplimit 20m;
--lua_shared_dict blockiplimit 5m;
-------------------------------------------------------------
CCDeny="on"   --cc***开关
CCrate="60/60"--基于url的计数 次/秒
ipCCrate="600/60"--基于ip的计数 次/秒
-------------------------------------------------
ccdenyrules={"ccdeny1","ccdeny","","","","logon"}
function gethost()host = ngx.var.hostif host == nil or type(host) ~= "string" thenmath.randomseed(os.time())host = "nohost"..math.random()endreturn host
endfunction denycc(clientdata)if CCDeny=="on" thenlocal uri=clientdata[2]local host = gethost()CCcount=tonumber(string.match(CCrate,'(.*)/'))CCseconds=tonumber(string.match(CCrate,'/(.*)'))ipCCcount=tonumber(string.match(ipCCrate,'(.*)/'))ipCCseconds=tonumber(string.match(ipCCrate,'/(.*)'))local token = clientdata[1]..host..urilocal clientip = clientdata[1]..hostlocal limit = ngx.shared.limitlocal iplimit = ngx.shared.iplimitlocal blockiplimit = ngx.shared.blockiplimitlocal req,_=limit:get(token)local ipreq,_=iplimit:get(clientip)local blockipreq,_=blockiplimit:get(clientip)if blockipreq or ipreq thenif blockipreq or req thenif blockipreq or req >= CCcount or ipreq >= ipCCcount  thenlog(ccdenyrules,clientdata)blockiplimit:set(clientip,1,300)ngx.exit(403)return trueelselimit:incr(token,1)iplimit:incr(clientip,1)endelselimit:set(token,1,CCseconds)endelseiplimit:set(clientip,1,ipCCseconds)endendreturn false
end

0x04 优势举例


可以很灵活的实现复杂的控制

比如我在我的个人网站上面就使用了这样一个功能,后台页面需要特定useragent才能访问。

代码如下:

#!bash
--特定页面容许特定useragent可访问
function houtai(clientdata)if stringmatch(clientdata[2],"wp-admin") thenif stringmatch(clientdata[4],"hahahaha") thenreturnelsengx.exit(403)returnendelsereturnend
end

可以测试http://www.zhangsan.me/wp-admin/

只有在特定的useragent才可以访问此页面,否则报403错误。

0x05 ×××及使用


×××地址为:http://pan.baidu.com/s/18QQya

环境搭建就参考:http://wiki.nginx.org/HttpLuaModule#Installation

waf使用主要就是配置config.lua

SecRuleEngine = "on" attacklog = "on" logpath = "/home/waflog/"

分别为引擎是否开启 是否记录日志 日志的存储路径 日志的存储路径需要给予nginx运行用户的读写权限

0x06 后续研究方向


  • 1.根据ModSecurity规则提取一份较适应自己用的规则
  • 2.根据最新出现的漏洞维护规则
  • 3.在多个站点的情况下,如果在站点变动,规则变动的时候,不影响其他站点,实现高可用性。

写的很简单,大牛勿喷,希望大家多提建议。

0x07 参考资料


1. https://github.com/loveshell/ngx_lua_waf
2.
http://wiki.nginx.org/HttpLuaModule
3.
http://www.freebuf.com/tools/54221.html
……
基于ngx_lua模块的waf开发实践原文地址:

转载于:https://blog.51cto.com/zhangyc/2343796

http://www.lbrq.cn/news/1059607.html

相关文章:

  • php网站模板修改/广告牌
  • 专业集团门户网站建设费用/搜索引擎优化seo怎么做
  • 临清设计网站/做网上营销怎样推广
  • 网站发帖功能怎么做/查排名的网站
  • 网站禁止右键/seo营销工具
  • 动漫人物做羞羞事的网站/上海网络推广优化公司
  • 天津市做网站的公司/预测2025年网络营销的发展
  • 中国国际贸易网官网/前端seo是什么
  • 莱芜做网站优化/百度联盟广告
  • 网站建设需要多少钱知乎/谷歌代运营
  • 可信赖的丹阳网站建设/googleseo服务公司
  • 微网站风格/搜索引擎排名国内
  • 做婚姻网站流程/网络营销推广方案步骤
  • 高大上的企业网站欣赏/媒体宣传推广方案
  • 网站怎么做收费/海外推广营销 平台
  • 用dreamware制作网页/seo引擎优化外包公司
  • 怎么做多语言网站/曼联vs恩波利比分
  • wordpress网站加壳/天猫代运营
  • 企业收录网站/域名是什么意思呢
  • 网站维护及更新方案/百度seo按天计费
  • 河北提供网站建设公司电话/seo的优化技巧和方法
  • 哪些网站可以做图片链接/什么是网络推广
  • 动态网站建设第3章在线测试/长沙有实力的关键词优化价格
  • 周年庆网站要怎么做6/青岛百度竞价
  • 西红门网站建设/网站外包
  • 深圳域名服务器地址/文明seo
  • 成都网站关键词优化/关键字
  • 还有哪些网站可以做H5/信阳网络推广公司
  • 衡阳网站seo/常熟网站建设
  • 网上接单做效果图哪个网站好/网站搭建需要多少钱?
  • VUE+SPRINGBOOT从0-1打造前后端-前后台系统-邮箱重置密码
  • Linux的NFS与Autofs配置指南
  • 永磁同步电机的矢量控制
  • RSA 解密逻辑
  • 腾讯人脸识别
  • 本地环境vue与springboot联调