现在软WAF的开发,大部分都选用Nginx+Lua根据openresty的 *** ,安全防护战略如果是根据lua正则匹配http恳求内容的话,在加载了很多的防护规矩后,nginx的功用会大大下降。
本文选用了lua+naxsi整合的 *** ,运用lua来完成如cc进犯的防护、IP拜访频率约束等相对杂乱的安全防护战略,运用Naxsi来防护相对简略的http恳求内容战略规矩,有用的取长补短,大大提高nginx 防护功用。
0×01 WAF功用
Naxsi在本WAF中首要完成根据http恳求内容的防护战略规矩,用于防护一些常见的缝隙,如:
SQL注入进犯 XSS进犯 目录遍历缝隙 指令注入进犯 虚拟补丁 扫描器进犯等
Lua在本waf中首要担任完成相对杂乱的安全防护战略,如cc进犯防护、大局IP拜访频率约束、特定url拜访频率约束、ip是非名单防护、url白名单防护、http恳求转发等功用。
WAF办理后台可完成WAF节点的统一办理,本WAF能够根据云WAF方式布置或许直接嵌入到使用现有的nginx的 *** 布置。
0×02 WAF架构
0×03 WAF办理后台
因为WAF运用了两个独立的nginx模块,所以需求两套彻底不同的装备文件。naxsi模块的防护规矩装备需求以文件的方式下发到nginx节点,Lua代码也需求以文件的方式下发到nginx节点。为完成文件的下发和同步,咱们将装备文件放到WAF的办理端,由WAF的nginx节点定时经过http拜访办理端下载装备文件。
其间naxsi的装备文件建议和lua的代码分隔寄存。
装备文件的办理,为了避免修正装备文件犯错而形成nginx运转反常,咱们经过python脚本结合nginx查看装备文件是是否正确,而且做到了装备文件有更新才去服务端拉取文件而且reload nginx,避免了频频的reload nginx节点。
def get_rules_file(rulesdir,rulesfile):
for filename in os.listdir(rulesdir):
if filename not in ['files.txt', 'files.md5', 'get_naxsi-rules.py', 'install_naxsi_rules.py']:
CalcMD5(rulesdir,filename,rulesfile)
def CalcMD5(path,filename,rulesfile):
filepath = path + filename
with open(filepath,'rb') as f:
md5obj = hashlib.md5()
md5obj.update(f.read())
hash = md5obj.hexdigest()
rulesfile.write(filename + ';,' + hash + 'n')
print filename + ';,' + hash
def calc_files_md5(filedir,fimename):
files_md5 = open(fimename,"w")
filepath = filedir + 'files.txt'
with open(filepath,'rb') as f:
md5obj = hashlib.md5()
md5obj.update(f.read())
hash = md5obj.hexdigest()
files_md5.write(hash)
f.close()
def check_rules():
check = commands.getstatusoutput("/usr/local/nginx/ *** in/nginx -t")
if check[0] == 0:
pattern = re.compile(r'test is successful')
match = pattern.search(check[1])
if match:
msg = "rules update successful"
print msg
get_rules_file(rulesdir,naxsi_rulesfile)
naxsi_rulesfile.close()
calc_files_md5(rulesdir,naxsi_md5_file)
get_rules_file(lua_waf_dir, lua_waf_file)
lua_waf_file.close()
[1] [2] 黑客接单网
这将在咱们的主机上放一个名为“evil”的Powershell脚本,该脚本将在运转上一图画所示指令的受害核算机上履行:[1][2][3]黑客接单渠道linux:echo -e “<?@inclu...
一、摘要 Web缓存诈骗(Web Cache Deception)是一种新的web进犯办法,包括web结构以及缓存机制等在内的许多技能都会遭到这种进犯的影响。进犯者能够运用这种办法提取web用户的私家...
在互联网这个杂乱的环境中,搜索引擎自身的爬虫,出于个人意图的爬虫,商业爬虫恣意横行,恣意掠取网上的或许公共或许私家的资源。明显数据的收集并不是随心所欲,有一些协议或许准则仍是需求每一个人留意。本文首要...
–script-args=<n1=v1,[n2=v2,...]>: 为脚本供给参数1)彻底封闭 Chrome 浏览器 printk(" Hello world!n");密码破译,找黑客盗q...
东西的开发概念是便利各位网友进行安全浸透测验的便利,调集实用东西 主要功用介绍: 1)网站目录扫描 网站后台目录扫描东西,调用外部中心扫描网站后台目录,无视服务器自定义404、403过错! 支撑ASP...
cpe:/a:cisco:adaptive_security_appliance_software:8.2.30x5 前台 Flow consignee_list limit约束SQL注入事实证明,这...