精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

基于ngx_lua模塊的WAF開發實踐

安全 應用安全
WAF主要分為硬件WAF和軟件防火墻,硬件WAF如綠盟的NSFOCUS Web Application Firewall,軟件防火墻比較有名的是ModSecurity,再就是代碼級別的ngx_lua_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開發過程中的主要方向為:

◆主引擎的開發,主要關注主引擎的性能和容錯能力
◆規則的開發,主要關注規則的全面可靠,防勿攔截以及防繞過
◆整體方案能夠適應多站點,高可用性的環境

WAF的主要功能為:

◆ip黑白名單
◆url黑白名單
◆useragent黑白名單
◆referer黑白名單
◆常見web漏洞防護,如xss,sql注入等
◆cc攻擊防護
◆掃描器簡單防護
◆其他你想要的功能

WAF的總體檢測思路:

◆當用戶訪問到nginx時,waf首先獲取用戶的ip,uri,referer,useragent,,cookie,args,post,method,header信息。
◆將獲取到的信息依次傳給上述功能的函數,如ip規則,在ip規則中,循環到所有的ip規則,如果匹配到ip則根據規則的處理方式來進行處理,匹配到之后不繼續匹配后續規則。
◆需要開啟的功能依次在主函數中調用即可,順序也可根據實際場景來確定最合適的順序。

圖示如下:

基于ngx_lua模塊的WAF開發實踐 #p#

0x02 規則格式分析

規則說明:

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

rule00001:規則編號,隨意寫

rules:規則名稱,如xssrules,隨意寫

args|post|cookie|header:檢測位置,|表示或,args,post,cookie,header可多選

../:匹配的正則表達式,標準PCRE正則

deny:處理方式,可選deny ,allow

logon:日志記錄與否,可選logon,logoff

0x03 cc攻擊防護代碼示例

  1. --在nginx.conf的HTTP中加入  
  2. --lua_shared_dict limit 50m; 根據主機內存調合適的值  
  3. --lua_shared_dict iplimit 20m;  
  4. --lua_shared_dict blockiplimit 5m;  
  5. -------------------------------------------------------------  
  6. CCDeny="on"   --cc攻擊開關  
  7. CCrate="60/60"--基于url的計數 次/秒  
  8. ipCCrate="600/60"--基于ip的計數 次/秒  
  9. -------------------------------------------------  
  10. ccdenyrules={"ccdeny1","ccdeny","","","","logon"}  
  11. function gethost()  
  12.     host = ngx.var.host  
  13.     if host == nil or type(host) ~= "string" then  
  14.         math.randomseed(os.time())  
  15.         host = "nohost"..math.random()  
  16.     end  
  17.     return host  
  18. end  
  19.    
  20. function denycc(clientdata)  
  21.     if CCDeny=="on" then  
  22.         local uri=clientdata[2]  
  23.         local host = gethost()  
  24.         CCcount=tonumber(string.match(CCrate,'(.*)/'))  
  25.         CCseconds=tonumber(string.match(CCrate,'/(.*)'))  
  26.         ipCCcount=tonumber(string.match(ipCCrate,'(.*)/'))  
  27.         ipCCseconds=tonumber(string.match(ipCCrate,'/(.*)'))  
  28.         local token = clientdata[1]..host..uri  
  29.         local clientip = clientdata[1]..host  
  30.         local limit = ngx.shared.limit  
  31.         local iplimit = ngx.shared.iplimit  
  32.         local blockiplimit = ngx.shared.blockiplimit  
  33.         local req,_=limit:get(token)  
  34.         local ipreq,_=iplimit:get(clientip)  
  35.         local blockipreq,_=blockiplimit:get(clientip)  
  36.         if blockipreq or ipreq then  
  37.             if blockipreq or req then  
  38.                 if blockipreq or req >= CCcount or ipreq >= ipCCcount  then  
  39.                     log(ccdenyrules,clientdata)  
  40.                     blockiplimit:set(clientip,1,300)  
  41.                     ngx.exit(403)  
  42.                     return true  
  43.                 else  
  44.                     limit:incr(token,1)  
  45.                     iplimit:incr(clientip,1)  
  46.                 end  
  47.             else  
  48.                 limit:set(token,1,CCseconds)  
  49.             end  
  50.         else  
  51.             iplimit:set(clientip,1,ipCCseconds)  
  52.         end  
  53.     end  
  54.     return false  
  55. end 

#p#

0x04 優勢舉例

可以很靈活的實現復雜的控制

比如我在我的個人網站上面就使用了這樣一個功能,后臺頁面需要特定useragent才能訪問。

代碼如下:

  1. --特定頁面容許特定useragent可訪問  
  2. function houtai(clientdata)  
  3.     if stringmatch(clientdata[2],"wp-admin") then  
  4.         if stringmatch(clientdata[4],"hahahaha") then  
  5.             return  
  6.         else  
  7.             ngx.exit(403)  
  8.             return  
  9.         end  
  10.     else  
  11.         return  
  12.     end  
  13. 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

……

責任編輯:藍雨淚 來源: 烏云知識庫
相關推薦

2013-07-17 17:03:23

Ngx_luaNginx

2015-05-15 10:36:43

ngx_lua_waf多站點

2018-06-13 07:06:05

2022-07-29 09:35:25

WAF溯源識別

2009-01-03 14:57:19

ibmdwLotusWeb2.0

2023-08-16 19:14:02

微前端

2022-06-27 09:36:29

攜程度假GraphQL多端開發

2013-12-03 17:28:56

Lua腳本語言

2015-07-30 10:46:50

2021-05-10 09:40:29

鴻蒙HarmonyOS應用

2011-08-31 16:06:50

LuaWeb開發

2015-07-17 10:25:43

kubernetesDocker集群系統

2022-08-08 07:05:36

KubeSphere分級管理

2013-06-03 10:02:53

WAF繞過

2020-10-23 13:46:45

ATT安全能力

2012-11-23 16:30:16

2012-12-10 11:05:11

IBMdW

2017-04-19 12:28:27

2018-07-05 13:35:04

DockerDevops開發

2017-12-21 15:01:42

點贊
收藏

51CTO技術棧公眾號

国产亚洲成av人片在线观看| 亚洲视频一区在线播放| 国产精品男女| 欧美色播在线播放| 亚洲成色最大综合在线| 国产又色又爽又黄又免费| 欧美aaaa视频| 亚洲福利精品在线| 午夜视频你懂的| 亚洲七七久久综合桃花剧情介绍| 99视频在线精品| 国产精品老女人视频| 久久久久亚洲天堂| 欧美综合另类| 亚洲成人精品视频在线观看| 日本中文字幕精品—区二区| 国产粉嫩在线观看| 中文字幕一区二| 久久综合福利| 精品国产九九九| 日韩电影网1区2区| 欧美极品欧美精品欧美视频 | 日韩av在线免费播放| 亚洲激情在线观看视频| 国产理论在线| 亚洲私人黄色宅男| 日本一区高清不卡| 天天干视频在线观看| 久久黄色级2电影| 奇米4444一区二区三区| 激情小说中文字幕| 欧美超碰在线| 中文字幕欧美国内| 中文字幕日韩三级片| 久久国际精品| 欧美一区二区视频在线观看 | 亚洲人成网站免费播放| 99精品一区二区三区无码吞精| 日日狠狠久久| 欧美在线不卡视频| 国产又大又硬又粗| 日本在线高清| 亚洲国产va精品久久久不卡综合| 男女啪啪的视频| 日韩欧美小视频| 国产视频一区在线观看| 久久狠狠久久综合桃花| 欧美性猛交 xxxx| 国产电影一区在线| 91美女片黄在线观看游戏| 国产精品成人久久久| 久久久久国产精品一区三寸| 久久久影视精品| 欧美成人精品欧美一| 天天综合一区| 久久中文久久字幕| 日本在线一级片| 欧美va天堂| 九色精品美女在线| 久久精品亚洲无码| 亚洲美女一区| 欧美自拍大量在线观看| 亚洲va在线观看| 久久欧美肥婆一二区| 国产成人精品一区| 久久久999久久久| 久久99精品久久久| 91精品国产一区二区三区动漫 | 色视频www在线播放国产成人| 中文字幕在线观看免费高清| 日韩欧美不卡| 麻豆国产va免费精品高清在线| 中文字幕电影av| 亚洲网站啪啪| 日本高清不卡的在线| 欧美性受xxx黑人xyx性爽| 精品一区二区在线视频| 99九九电视剧免费观看| 少妇精品高潮欲妇又嫩中文字幕| aaa欧美日韩| 午夜欧美性电影| a毛片在线看免费观看| 午夜亚洲福利老司机| 国产亚洲天堂网| 欧美a一级片| 欧美v亚洲v综合ⅴ国产v| 一本色道综合久久欧美日韩精品 | 黄色av网站免费| 久久精品国产久精国产| 不卡视频一区二区| 欧洲亚洲精品视频| 精品乱子伦一区二区| 水蜜桃久久夜色精品一区的特点| 国产精品男人爽免费视频1| 国产精品女同一区二区| 99久久精品一区| 亚洲自拍三区| 麻豆视频在线看| 欧美三日本三级三级在线播放| 特种兵之深入敌后| 精品视频一二三区| 国内精品久久久久影院色| 国产欧美韩日| 在线观看av黄网站永久| 亚洲成a人v欧美综合天堂| 亚洲成人福利在线观看| 成人精品毛片| 日韩一区av在线| 91在线视频在线观看| 国产一区激情在线| 日本一区二区三区视频免费看| 免费在线中文字幕| 欧美色国产精品| 中国美女乱淫免费看视频| 天天综合国产| 国产精品久久一| 青春草在线观看 | 岛国一区二区在线观看| 日韩精品欧美专区| 免费看男女www网站入口在线 | 综合精品久久| 国产精品免费一区二区三区都可以| 亚洲乱熟女一区二区| 国产精品女人毛片| 黑森林福利视频导航| aaa国产精品视频| 俺去啦;欧美日韩| 成人免费一级片| 久久亚洲免费视频| 欧美老熟妇喷水| 国产成人精品亚洲线观看| 久久精品亚洲一区| 中文字幕在线观看你懂的| 99久久99精品久久久久久| 国产精品69久久久| 日本少妇精品亚洲第一区| 日韩亚洲成人av在线| wwwwww在线观看| 欧美精彩视频一区二区三区| 久久久久狠狠高潮亚洲精品| 五月国产精品| 欧美亚洲成人xxx| 五月婷婷在线观看视频| 亚洲成人av免费| 手机在线成人av| 日韩午夜高潮| 精品国产一区二区三区久久久久久| 日韩精品卡一| 精品第一国产综合精品aⅴ| 看片网站在线观看| 丁香婷婷综合色啪| 精品无码国模私拍视频| 偷拍一区二区| 国产精品久久国产精品99gif| 黄色软件在线| 欧美性猛交xxxx黑人交| 老司机福利在线观看| 奇米四色…亚洲| 在线看视频不卡| 国产亚洲观看| 欧美福利视频在线观看| 亚洲精品一区二区三区蜜桃| 亚洲国产乱码最新视频| 亚洲午夜久久久久久久久| 亚洲精一区二区三区| 久久99精品久久久久久青青日本| 中文字幕在线官网| 国产一区二区三区四区福利| 亚洲天堂中文在线| 亚洲天堂2014| 天天躁日日躁狠狠躁av| 999在线观看精品免费不卡网站| 久久一区二区三区欧美亚洲| 无人区在线高清完整免费版 一区二| 国产亚洲视频在线观看| 国产剧情久久久| 亚洲一区二区影院| 国产福利短视频| 日韩电影免费一区| 2022中文字幕| 亚洲桃色综合影院| 成人妇女免费播放久久久| 国产美女一区视频| 亚洲欧美一区二区精品久久久| 中文字幕第2页| 一区av在线播放| 波多野结衣av在线免费观看| 久久精品二区亚洲w码| 青青青在线观看视频| 一道本一区二区三区| 91精品在线播放| 国产三级电影在线播放| 日韩资源在线观看| 四虎免费在线观看| 欧美日韩高清一区二区| 日本熟妇毛耸耸xxxxxx| 国产欧美日韩综合精品一区二区| 精品人妻一区二区乱码| 视频一区国产视频| 国产精品国产三级国产专区51| 国产精品日韩精品中文字幕| 亚洲伊人第一页| 91p九色成人| 午夜精品理论片| 秋霞a级毛片在线看| 日韩国产一区三区| 99热这里只有精品9| 在线亚洲精品福利网址导航| 加勒比av在线播放| 国产精品免费观看视频| 亚洲专区区免费| 国产成人精品免费网站| 免费看a级黄色片| 亚洲福利电影| 日韩成人午夜影院| 日韩在线观看| 色播亚洲视频在线观看| 老司机凹凸av亚洲导航| 97人人模人人爽人人少妇| 精品176极品一区| 日本精品久久久久影院| 九色91在线| 欧美另类极品videosbestfree| av基地在线| 国产一区二区三区精品久久久 | 国产欧美日韩久久| 日本japanese极品少妇| 国产69精品久久久久毛片| 中文字幕12页| 久久超级碰视频| 亚洲一区在线不卡| 丝袜美腿高跟呻吟高潮一区| 色综合久久久久无码专区| 国产精品大片| 菠萝蜜视频在线观看入口| 久久久久久久久久久久久久久久久久| 午夜视频久久久| 国产成人一区| 日韩精品伦理第一区| 国产伦精品一区二区三区千人斩 | 亚洲少妇一区二区三区| 国产一区二区h| 亚洲综合123| 国产在线播放一区三区四| 九九热免费在线观看| 麻豆精品一区二区三区| 久久国产激情视频| 麻豆91在线观看| 日韩av片免费观看| 国产一区在线观看麻豆| 97人人模人人爽人人澡| 国产精品一卡二卡在线观看| 亚洲福利精品视频| 久久99热这里只有精品| 又色又爽又黄视频| 国产精品一区二区久激情瑜伽 | 久久久久国产一区二区三区四区| 亚洲欧美视频在线播放| 国产午夜精品一区二区 | 午夜影院在线视频| 亚洲码在线观看| 91啦中文在线| 欧美成在线视频| 91超碰国产在线| 青青精品视频播放| 欧美成人精品一区二区男人小说| 777国产偷窥盗摄精品视频| 女海盗2成人h版中文字幕| 欧洲日本亚洲国产区| 激情久久一区二区| 97中文在线| 欧美电影在线观看免费| 日韩福利视频| 亚洲色图插插| 欧美在线一区视频| 久久久精品五月天| 日韩视频在线观看一区二区三区| 国产91精品在线观看| 亚洲中文字幕一区| 中文乱码免费一区二区| 国产一区二区视频在线观看免费| 亚洲18色成人| 黄色大全在线观看| 91精品福利在线一区二区三区| 成人爽a毛片一区二区| 日韩精品高清在线| 免费av不卡| 91国产精品视频在线| 国产精品66| 国产精品一区二区三区不卡| 欧美猛男做受videos| 欧美日韩午夜爽爽| 快she精品国产999| avtt中文字幕| 国产精品女人毛片| 少妇一级淫片免费放中国| 欧美裸体一区二区三区| 午夜国产在线观看| 久久艳片www.17c.com| 亚洲女同志freevdieo| 91色中文字幕| 欧美美女一区| 亚洲国产精品成人天堂| 久久99精品国产麻豆婷婷| 奇米777第四色| 18成人在线视频| 一级一片免费看| 亚洲а∨天堂久久精品9966| 在线观看二区| 青草成人免费视频| 日韩区欧美区| 中文网丁香综合网| 三级成人在线视频| 北岛玲一区二区| 亚洲在线成人精品| 一级特黄aaa| 国产亚洲精品一区二555| 日本不卡1234视频| 国产欧美日韩综合精品二区| **女人18毛片一区二区| 成人免费xxxxx在线视频| 久久一区二区三区四区| 日本一区二区不卡在线| 欧美性xxxxxx少妇| 黄色电影免费在线看| 97在线视频免费看| 好吊妞视频这里有精品| 国内精品国产三级国产99| 毛片av一区二区| 性少妇xx生活| 欧美日韩中文一区| av在线天堂播放| 国产精品黄页免费高清在线观看| 日本欧美韩国国产| 欧美中文字幕一二三区视频| 91精品中文字幕| 在线播放日韩欧美| 日韩精选视频| 亚洲高清资源综合久久精品| 国产精品伦子伦| 欧美日韩黄色大片| 水莓100在线视频| 97视频com| 日韩av三区| 两根大肉大捧一进一出好爽视频| 99久久精品国产麻豆演员表| 日韩黄色一级大片| 日韩成人在线观看| 英国三级经典在线观看| 欧美日韩免费高清| 日本vs亚洲vs韩国一区三区二区| 日本一道本视频| 欧美精品自拍偷拍动漫精品| 美女国产在线| 99国精产品一二二线| 日韩天天综合| 国产又粗又猛又爽视频| 欧美午夜精品免费| 欧美成人hd| 99re在线视频观看| 在线视频观看日韩| 五月婷婷综合在线观看| 欧洲精品在线观看| 伦xxxx在线| 国产福利久久| 久久人人超碰| 91人妻一区二区三区蜜臀| 精品久久人人做人人爱| 亚洲涩涩在线| 在线看视频不卡| 成人av在线网站| 成人免费视频国产免费| 久久国产视频网站| 青青久久av| 日韩在线不卡一区| 亚洲成人免费电影| 国家队第一季免费高清在线观看| 国产精品免费福利| 欧美日韩国产高清| 国产呦小j女精品视频| 欧美精品久久99| 欧美6一10sex性hd| 日本一区免费看| 国产精品69久久久久水密桃| 国产成人无码精品亚洲| 自拍偷拍亚洲精品| 成人精品毛片| 天天爽夜夜爽一区二区三区| 一区二区三区高清在线| 黄网在线免费| 91九色蝌蚪成人| 日韩国产欧美视频| 久久av高潮av无码av喷吹| 国产一区二区成人| swag国产精品一区二区| 天天爽夜夜爽一区二区三区| 精品国产乱码久久久久久婷婷 | 国产精品的网站| 亚洲av成人无码网天堂| 亚洲一区二区中文|