草庐IT

ngx_lua_waf

全部标签

lua变量、数据类型、if判断条件和数据结构table以及【lua 函数】

一、lua变量【全局变量和局部变量和表中的域】Lua变量有三种类型:全局变量和局部变量和表中的域。▪全局变量:默认情况下,Lua中所有的变量都是全局变量。▪局部变量:使用local显式声明在函数内的变量,以及函数的参数,都是局部变量。在函数外即使用local去声明,它的作用域也是当前的整个文件,这相当于一个全局变量。▪表中的域:变量的默认值均为nil。☺Lua语言不区分未初始化变量和被赋值为nil的变量,因此全局变量无须声明即可使用。1、全局变量全局变量,不需要声明,只需要将一个值赋予一个全局变量即可创建了。b=10 --这个b就是一个全局变量了print(b)通常没必要删除一个全局变量,如果

解决Nginx启动报错“nginx: [emerg] unknown directive “ngx_fastdfs_module“ in /xxx/nginx/conf/nginx.conf:43“

背景centos7操作系统,nginx被人安装过多次,重启服务器,发现nignx未设置开机自启,启动报错nginx:[emerg]unknowndirective“ngx_fastdfs_module”in/usr/local/nginx/conf/nginx.conf:43排查1、尝试启动,查看报错日志sudosystemctlstartnginx上述命令如果报nginx.service找不到:Failedtostartnginx.service:Unitnotfound.,则进入nginx的安装目录。不知道自己的nginx服务可以使用命令:nginx-V查看版本号信息所显示的prefix属

网络安全各类WAF绕过技巧

一、WAF绕过1、脏数据绕过即传入一段长数据使waf失效,从而实现绕过waf。某些waf处理POST的数据时,只会检测开头的8K,后面选择全部放过。例如,当发现某网站存在一个反序列化漏洞时,但是无回显,被waf拦截了利用脏数据插入5000个x字符,可以成功绕过。2、高并发绕过对请求进行并发,攻击请求会被负载均衡调度到不同节点,导致某些请求绕过了waf的拦截3、http参数污染在php语言中id=1&id=2后面的值会自动覆盖前面的值,不同的语言有不同的特性。可以利用这点绕过一些waf的拦截。4、数据格式混淆利用数据格式解析缺陷,存在两种提交表单数据的请求类型application/x-www-

WAF攻防—绕过IP封锁(代理池)

1.前言2.WAF简介2.1.WAF介绍2.1.1.软件型WAF2.1.2.硬件型WAF2.1.3.云WAF2.1.4.网站内置的WAF2.2.如何判断WAF2.2.1.护卫神2.2.2.智创防火墙2.2.3.360主机卫士或360webscan2.2.4.NaxsiWAF2.2.5.腾讯云2.2.6.华为云2.2.7.网宿云3.信息收集3.1.信息收集常见拦截情况3.2.解决拦截情况3.2.1.延迟3.2.2.代理池3.2.3.白名单3.3.扫描方式3.3.1.主动扫描3.3.2.被动扫描4.目录扫描4.1.延迟扫描4.1.1.未开延迟扫描4.1.2.开了延迟扫描4.2.代理池介绍4.2.1

单片机中移植lua解释器

一、基本开发环境开发环境基于野火STM32开发板。前测试的Lua解释器版本为5.4.2。官网下载lua资源包,下载地址如下:https://www.lua.org/https://github.com/rjpcomputing/luaforwindows/releaseslua:Lua国内镜像(gitee.com)‍二、移植Lua解释器1.下载的Lua解压,删除源文件中的的lua.c和luac.c(如果有的话)文件。2.新建stm32工程3.工程添加Lua源码将Lua源文件拷贝到工程添加头文件更改loslib.c文件下部分内容 将os_exit(lua_State*L)函数中if(L)exit

Kruise Rollout:基于 Lua 脚本的可扩展流量调度方案

作者:潘梦源前言KruiseRollout[1]是OpenKruise社区开源的渐进式交付框架。KruiseRollout支持配合流量和实例灰度的金丝雀发布、蓝绿发布、A/BTesting发布,以及发布过程能够基于PrometheusMetrics指标自动化分批与暂停,并提供旁路的无感对接、兼容已有的多种工作负载(Deployment、CloneSet、DaemonSet)。目前KruiseRollout新增了流量调度支持自定义资源的能力,从而更好的支持渐进式发布中的流量调度。本文将对KruiseRollout所提出的方案进行介绍。什么是渐进式发布?**渐进式发布(ProgressiveDel

通过Lua扩展Nginx

1.Nginx的简介相关内容,可以查看【Nginx负载均衡】,这是我之前的一篇文章,这里就懒得再说明一次了。2.ngx_lua模块Nginx模块需要用C开发,而且必须符合一系列复杂的规则,最重要的用C开发模块必须要熟悉Nginx的源代码,使得开发者对其望而生畏。ngx_lua模块通过将lua解释器集成进Nginx,可以采用lua脚本实现业务逻辑。该模块具备以下特性:高并发、非阻塞的处理各种请求。Lua内建协程,这样就可以很好的将异步回调转换成顺序调用的形式。每个协程都有一个独立的全局环境(变量空间),继承于全局共享的、只读的“commandata”。得益于Lua协程的支持,ngx_lua在处理

Nginx启动报错,nginx: [emerg] SSL_CTX_use_PrivateKey_file(“/etc/infra/data/ngx/ssl/**.key“)

Nginx添加ssl启动报错问题说明Nginx启动报错nginx:[emerg]SSL_CTX_use_PrivateKey_file("/etc/infra/data/ngx/ssl/****.key")failed(SSL:error:0909006C:PEMroutines:get_name:nostartline:Expecting:ANYPRIVATEKEYerror:140B0009:SSLroutines:SSL_CTX_use_PrivateKey_file:PEMlib)由于需求需要在nginx中添加ssl服务,ssl服务证书在GoDaddy上购买的,购买后在网页中获得pri

C++与Lua交互实例 -- 矩阵的加减乘除(版本二)

C++与Lua交互实例–矩阵的加减乘除(版本二)TIPS:关于使用矩阵的加减乘除测试C++与Lua的交互以及下面没讲述到的知识点可以阅读第一版:https://blog.csdn.net/qq135595696/article/details/128960951同时下面两个方式矩阵的数据都来源于C++端,只是第一种是在C++端进行结果比较展示,第二种方式(userdata)是在lua端进行结果比较展示。下面C++端引入第三方开源库测试lua端矩阵的运算是否正确,参考链接如下:http://eigen.tuxfamily.org/index.php?title=3.4https://blog.c

[Unity]Lua本地时间、倒计时和正计时。

惯例,直接上代码:--正计时开始时的时间戳self.begin_time=os.time()--倒计时时长,01:30:00self.countdown_time=5400--是否开始计时self.is_update_local_time=true--UnityUpdatefunctiontime_transition:update_local_timer()ifnotself.is_update_local_timethenreturnendself.begin_time=self.begin_time+1--正计时localpositive_time=self.begin_timeifpo