Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
CnChunfeng
/
ichunt_lua_waf
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
0d6fe000
authored
Jan 14, 2021
by
Joneq
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
答应header变量
parent
a2ac95e3
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
22 additions
and
16 deletions
redirect.lua
waf.lua
redirect.lua
View file @
0d6fe000
...
...
@@ -12,22 +12,25 @@ function _ReM.checkgoogle(red)
ngx
.
var
.
host
..
':'
..
ngx
.
var
.
server_port
..
ngx
.
var
.
request_uri
)
dest
=
'http://passport.ichunt.com/static/login.html'
..
'?continue='
..
source_url
--获取多少时间内同一个ip可以几次302,超过就加入黑名单
threezerotwo_second
,
err
=
red
:
get
(
'threezerotwo_second'
)
threezerotwo_ip
=
'threezerotwo_time_secode_'
..
user_ip
--如果不存在则设为1
if
red
:
get
(
threezerotwo_ip
)
==
ngx
.
null
then
red
:
set
(
threezerotwo_ip
,
0
)
--新增如果refer不在对应的设置里面,才计算302重定向次数
if
red
:
sismember
(
'waf_urldesc_limit'
,
ngx
.
var
.
request_uri
)
~=
0
then
--获取多少时间内同一个ip可以几次302,超过就加入黑名单
threezerotwo_second
,
err
=
red
:
get
(
'threezerotwo_second'
)
threezerotwo_ip
=
'threezerotwo_time_secode_'
..
user_ip
--如果不存在则设为1
if
red
:
get
(
threezerotwo_ip
)
==
ngx
.
null
then
red
:
set
(
threezerotwo_ip
,
0
)
end
red
:
incr
(
threezerotwo_ip
)
red
:
expire
(
threezerotwo_ip
,
threezerotwo_second
)
--如果超过次数就添加至黑名单
if
tonumber
(
red
:
get
(
threezerotwo_ip
))
>=
tonumber
(
red
:
get
(
'threezerotwo_time'
))
then
red
:
sadd
(
'ichunt_waf_black_ip'
,
user_ip
)
end
end
red
:
incr
(
threezerotwo_ip
)
red
:
expire
(
threezerotwo_ip
,
threezerotwo_second
)
--如果超过次数就添加至黑名单
if
tonumber
(
red
:
get
(
threezerotwo_ip
))
>=
tonumber
(
red
:
get
(
'threezerotwo_time'
))
then
red
:
sadd
(
'ichunt_waf_black_ip'
,
user_ip
)
end
ngx
.
redirect
(
dest
,
302
)
ngx
.
exit
(
ngx
.
OK
)
...
...
waf.lua
View file @
0d6fe000
...
...
@@ -21,7 +21,10 @@ local cjson = require "cjson"
local
headers
=
ngx
.
req_get_headers
()
for
k
,
v
in
pairs
(
headers
)
do
print
(
k
..
":"
..
v
)
end
-------去除一些不要验证的请求并获取url
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment