精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

日韩 国产 欧美| 97超碰人人看| yiren22综合网成人| 人人超碰91尤物精品国产| 日韩在线www| 国产伦精品一区二区免费| av亚洲一区二区三区| 中文字幕日韩精品一区 | 国产真实的和子乱拍在线观看| 成人av婷婷| 欧洲日韩一区二区三区| 97久久国产亚洲精品超碰热| 蜜芽tv福利在线视频| 国产自产2019最新不卡| 欧美在线日韩在线| 黄色a级片在线观看| 美女毛片一区二区三区四区最新中文字幕亚洲| 欧美日韩不卡一区二区| 热99这里只有精品| 看黄网站在线观看| 国产色91在线| 国产精品伊人日日| 一卡二卡在线观看| 久久国产免费| 777午夜精品福利在线观看| 成人免费毛片xxx| 成人在线一区| 亚洲视频在线免费看| 91人人澡人人爽| 四虎地址8848精品| 欧美综合久久久| 自慰无码一区二区三区| 黄色在线看片| 亚洲精品精品亚洲| 在线观看欧美激情| eeuss影院www在线播放| 久久综合九色综合97婷婷| 91在线在线观看| 国产精品久久久久久久久久久久久久久久| 狠狠爱综合网| 欧美国产极速在线| 中文字幕人妻一区二| 999精品视频| 色777狠狠综合秋免鲁丝| www.av欧美| 蜜桃a∨噜噜一区二区三区| 亚洲国产成人在线播放| 99久久久无码国产精品性波多| 精品入口麻豆88视频| 91精品久久久久久久91蜜桃| 亚洲无吗一区二区三区| 日本欧美韩国| 在线免费不卡电影| 91n.com在线观看| 中韩乱幕日产无线码一区| 在线观看视频一区二区欧美日韩| 国产a视频免费观看| 丝袜美腿一区| 欧美日韩中文精品| 欧美婷婷精品激情| 不卡精品视频| 日韩欧美一卡二卡| 日本一区二区免费视频| 欧美一区二区三区红桃小说| 亚洲国产精品电影在线观看| 污污内射在线观看一区二区少妇| 欧美自拍视频| 夜夜嗨av色综合久久久综合网| 在线视频第一页| 99视频精品全国免费| 欧美成人在线网站| 久久免费播放视频| 国产人成精品一区二区三| 欧美专区中文字幕| 中文字幕网址在线| 国产精品白丝av| 精品日本一区二区三区| 成年在线电影| 亚洲码国产岛国毛片在线| www.国产在线视频| 韩国主播福利视频一区二区三区| 欧美三级蜜桃2在线观看| 亚洲一区二区三区四区精品| 99香蕉久久| 国产亚洲福利一区| 久久爱一区二区| 国产欧美亚洲一区| 国产男人精品视频| 成人毛片视频免费看| 久久久久国产精品人| 好色先生视频污| 国产在线精彩视频| 欧美人动与zoxxxx乱| fc2成人免费视频| 欧美日中文字幕| 欧美激情视频一区二区| jizz国产在线| 成人一区二区三区在线观看| 日韩欧美视频一区二区三区四区| 成人在线app| 日韩欧美亚洲成人| 4438x全国最大成人| 久久99影视| 欧美精品久久久久久久久| 懂色av蜜臀av粉嫩av分享吧最新章节| 韩国精品久久久| 欧美日韩一区在线视频| 在线中文字幕-区二区三区四区 | 中文字幕av网站| 成人在线视频一区| 狠狠v欧美v日韩v亚洲ⅴ| 在线观看欧美www| 久久精品女人毛片国产| 免费一级欧美片在线观看| 国产综合av一区二区三区| 日本视频在线播放| 欧美性猛交xxxx乱大交蜜桃| 国产又粗又猛又爽又黄| 色琪琪久久se色| 欧洲成人免费视频| 高清乱码毛片入口| 成人免费小视频| 久久99999| 中文字幕中文字幕精品| 高清欧美性猛交| 97人妻一区二区精品免费视频| 久久综合九色综合欧美亚洲| 91免费黄视频| 亚洲日本一区二区三区在线| 久久影视电视剧免费网站| 免费在线不卡av| 国产欧美日韩在线视频| 在线一区高清| 亚洲精品三区| 色琪琪综合男人的天堂aⅴ视频| 亚洲成人第一网站| 91丝袜高跟美女视频| 黄色一级视频在线播放| 高清日韩中文字幕| 欧美极品少妇xxxxⅹ裸体艺术| 国产欧美久久久| 亚洲视频一二三区| 亚洲男人天堂2021| 一区二区三区毛片免费| 成人免费直播live| 成人av免费| 欧美一级片在线| 九九热精品在线观看| 国产精品一二三四区| 黄色片免费在线观看视频| 欧洲大片精品免费永久看nba| 久久视频在线看| 国产丰满美女做爰| 亚洲综合丝袜美腿| 亚洲精品乱码久久久久久蜜桃欧美| 欧美日韩国产免费观看| 成人午夜电影在线播放| 成人在线免费观看黄色| 亚洲精品97久久| 无码人妻精品一区二区50| 国产三级欧美三级日产三级99| 毛片毛片毛片毛片毛片毛片毛片毛片毛片 | av电影在线观看网址| 欧美亚洲国产一区在线观看网站| 蜜桃久久精品成人无码av| 免费av网站大全久久| 欧美一级免费在线观看| 秋霞影院一区| 91精品国产91久久久久福利| 男人的天堂在线| 欧美三级中文字| 久久97人妻无码一区二区三区| 成人av动漫在线| 欧美精品无码一区二区三区| 精品国精品国产自在久国产应用| 国产噜噜噜噜噜久久久久久久久| 成人影院www在线观看| 亚洲电影免费观看高清完整版在线观看| 成年人免费看毛片| 国产日韩欧美综合在线| www.久久久久久久久久久| 国色天香一区二区| 日韩免费三级| 一区二区三区国产好| 欧美专区国产专区| 操你啦视频在线| 日韩精品视频在线观看网址| 在线观看视频中文字幕| 一区二区三区不卡视频| 全黄一级裸体片| 国产一区美女在线| 免费看的黄色大片| 国产精品久久久久久久免费观看| 国产伦精品一区二区三区在线 | 国产区二精品视| jizz免费一区二区三区| 欧美大片在线看| 国产精品麻豆一区二区三区| 欧美xxxxxxxx| 伊人影院中文字幕| 精品美女久久久久久免费| 女人18毛片毛片毛片毛片区二 | 国产精品乱子乱xxxx| 国产69精品久久久久按摩| 久久青草福利网站| 超碰在线caoporn| 亚洲天堂av图片| 国模私拍视频在线| 欧美剧情电影在线观看完整版免费励志电影| 国产系列精品av| 1024国产精品| 人妻精品久久久久中文| 风间由美一区二区三区在线观看| 无需播放器的av| 久久成人精品| 又大又硬又爽免费视频| 91精品电影| 亚洲欧美日韩精品综合在线观看| 精品国产一区二区三区成人影院| 亚洲www视频| www.一区| 国产第一区电影| 女人让男人操自己视频在线观看 | 麻豆中文字幕在线观看| 国产伦精品一区二区三区千人斩| 国产精品视频500部| 欧美国产中文高清| 亚洲free性xxxx护士hd| 成人午夜sm精品久久久久久久| 清纯唯美亚洲综合| 欧美巨大丰满猛性社交| 欧美激情a∨在线视频播放| 亚洲精品天堂| 欧美精品在线播放| 直接在线观看的三级网址| 久久精品视频网站| 黄色网页在线播放| 久久天天躁狠狠躁老女人| 黄色精品在线观看| 久久精品中文字幕电影| 欧美一区二区三区| 久久精品91久久久久久再现| 麻豆免费在线观看| 久久久成人av| 97超碰资源站在线观看| 九九热精品视频| 日韩精品分区| 国模gogo一区二区大胆私拍| 国产精品xx| 欧洲美女免费图片一区| 在线高清av| 国产精品v日韩精品| 福利一区二区三区视频在线观看| 国产精品久久久久久久久久免费 | 精品日韩成人av| 无码国产伦一区二区三区视频| 亚洲精品一区二区三区99| 无码精品人妻一区二区三区影院 | 日本激情在线观看| 久久久999精品| bl在线肉h视频大尺度| 91精品国产91久久久久久久久| 一区二区三区电影大全| 国产精品美女久久久免费| 日韩三区四区| 99www免费人成精品| 欧美亚洲tv| 亚洲7777| 欧美在线1区| 狠狠干 狠狠操| 人人爽香蕉精品| 麻豆免费在线观看视频| 91蜜桃在线免费视频| 性爱在线免费视频| 夜色激情一区二区| 亚洲不卡在线视频| 欧美日韩不卡在线| 免费观看黄色一级视频| 亚洲欧洲视频在线| а√中文在线8| 日韩免费av在线| 秋霞一区二区三区| 欧美人xxxxx| 一区二区三区四区电影| 国产肥臀一区二区福利视频| 久久精品国产精品青草| 亚洲美女在线播放| 中文字幕亚洲欧美在线不卡| 精品少妇久久久| 欧美在线视频你懂得| 精品乱子伦一区二区| 亚洲性生活视频在线观看| 欧美激情成人动漫| 国产精品久久久久久久天堂| 国产精品宾馆| 在线视频91| 一区二区国产在线观看| 欧美日韩精品区别| 久久精品一区二区三区不卡牛牛| 欧美日韩午夜视频| 色悠悠久久综合| 国产 日韩 欧美 综合| 国产一级揄自揄精品视频| 污网站在线免费看| 国产在线999| 国产va免费精品观看精品视频| 国产在线拍揄自揄拍无码| 亚洲一区二区动漫| xxxxwww一片| 亚洲三级在线看| 中文字幕在线日本| 亚洲精品成人av| 日本无删减在线| 国产日韩亚洲欧美| 精品freesex老太交| 国产精品无码人妻一区二区在线| 国产精品夜夜嗨| 国产亚洲精品精品精品| 日韩欧美在线一区| 人妻一区二区三区四区| 欧美国产极速在线| 久久中文字幕一区二区| 在线观看成人av电影| 日韩精品亚洲一区二区三区免费| 五十路六十路七十路熟婆| 亚洲黄色片在线观看| 国产伦精品一区二区三区免.费| 亚洲色图激情小说| 国产精品迅雷| 欧美精品一区二区三区久久| 亚洲三级观看| 在线视频 日韩| 亚洲国产你懂的| 亚洲精品国产suv一区| 欧美高清videos高潮hd| 亚洲码欧美码一区二区三区| 福利在线小视频| 国产伦精品一区二区三区免费| 四虎地址8848| 9191成人精品久久| 黄色成年人视频在线观看| 91麻豆国产精品| 一精品久久久| 91人妻一区二区| 亚洲午夜精品在线| 国产99在线|中文| 美女色狠狠久久| 日韩av电影免费在线观看| 日韩在线观看一区二区| 精品无码人妻一区二区免费蜜桃| 在线观看日韩高清av| а√天堂中文在线资源bt在线| 国产精品久久91| 国产韩日影视精品| 色诱av手机版| 午夜精品一区二区三区电影天堂| 四虎在线免费看| 国产精品福利网站| 忘忧草精品久久久久久久高清| 深夜做爰性大片蜜桃| 亚洲一区二区三区视频在线| 老司机午夜福利视频| 欧美亚洲成人精品| 日本久久一二三四| 国产黄色一区二区三区| 亚洲国产另类av| 都市激情一区| 亚洲影院高清在线| 亚洲激情在线| www久久久久久久| 欧美一个色资源| 三级中文字幕在线观看| 亚洲精品一区二区三区蜜桃久| 激情欧美一区二区| 国产精品第一页在线观看| 亚洲精品在线视频| 日日夜夜亚洲| 国产无限制自拍| 中文字幕的久久| 亚洲精品久久久久久动漫器材一区| 人九九综合九九宗合| 国产精品福利在线观看播放| fc2成人免费视频| 精品视频999| 91美女精品| 亚洲一区三区视频在线观看| 成人国产精品免费网站| 亚洲午夜在线播放| 久久久在线视频| 欧美激情电影| 99久久久久久久久久| 91精品国产一区二区三区蜜臀| caoporn视频在线| 一区二区视频国产| xfplay精品久久| 国产精品无码在线播放| 欧美有码在线视频| 午夜日韩视频| 国产免费嫩草影院| 亚洲精品电影在线|