Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
open-source
MetaGer
Commits
71e9a166
Commit
71e9a166
authored
Jun 04, 2019
by
Dominik Hebeler
Browse files
Bugfix
parent
ea0eb011
Changes
2
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
app/Http/Controllers/HumanVerification.php
View file @
71e9a166
...
...
@@ -110,7 +110,7 @@ class HumanVerification extends Controller
$redis
=
Redis
::
connection
(
'redisCache'
);
$ip
=
$request
->
ip
();
$id
=
""
;
if
(
HumanVerification
::
isTo
r
(
$ip
))
{
if
(
HumanVerification
::
couldBeSpamme
r
(
$ip
))
{
$id
=
hash
(
"sha512"
,
"999.999.999.999"
);
}
else
{
$id
=
hash
(
"sha512"
,
$ip
);
...
...
@@ -176,7 +176,7 @@ class HumanVerification extends Controller
{
$uid
=
""
;
$ip
=
$request
->
ip
();
if
(
HumanVerification
::
isTo
r
(
$ip
))
{
if
(
HumanVerification
::
couldBeSpamme
r
(
$ip
))
{
$uid
=
hash
(
"sha512"
,
"999.999.999.999"
.
$ip
.
$_SERVER
[
"AGENT"
]
.
"uid"
);
}
else
{
$uid
=
hash
(
"sha512"
,
$ip
.
$_SERVER
[
"AGENT"
]
.
"uid"
);
...
...
@@ -189,7 +189,7 @@ class HumanVerification extends Controller
}
}
p
rivate
static
function
isTo
r
(
$ip
)
p
ublic
static
function
couldBeSpamme
r
(
$ip
)
{
$serverAddress
=
empty
(
$_SERVER
[
'SERVER_ADDR'
])
?
"144.76.88.77"
:
$_SERVER
[
'SERVER_ADDR'
];
$queryUrl
=
"https://tor.metager.org?password="
.
urlencode
(
env
(
"TOR_PASSWORD"
))
.
"&ra="
.
urlencode
(
$ip
)
.
"&sa="
.
urlencode
(
$serverAddress
)
.
"&sp=443"
;
...
...
@@ -201,10 +201,21 @@ class HumanVerification extends Controller
$httpcode
=
curl_getinfo
(
$ch
,
CURLINFO_HTTP_CODE
);
curl_close
(
$ch
);
$possibleSpammer
=
false
;
if
(
$httpcode
===
200
)
{
return
true
;
}
else
{
return
false
;
}
# Check for recent Spams
$eingabe
=
\
Request
::
input
(
'eingabe'
);
if
(
\
preg_match
(
"/^[
\\
d]
{
3
}
\s*chan.*$/si"
,
$eingabe
))
{
return
true
;
}
if
(
\
preg_match
(
"/^susimail\s+-site:[^\s]+\s-site:/si"
,
$eingabe
))
{
return
true
;
}
return
$possibleSpammer
;
}
}
app/Http/Middleware/HumanVerification.php
View file @
71e9a166
...
...
@@ -29,7 +29,7 @@ class HumanVerification
$ip
=
$request
->
ip
();
$id
=
""
;
$uid
=
""
;
if
(
$this
->
couldBeSpammer
(
$ip
))
{
if
(
\
App\Http\Controllers\HumanVerification
::
couldBeSpammer
(
$ip
))
{
$id
=
hash
(
"sha512"
,
"999.999.999.999"
);
$uid
=
hash
(
"sha512"
,
"999.999.999.999"
.
$ip
.
$_SERVER
[
"AGENT"
]
.
"uid"
);
}
else
{
...
...
@@ -188,34 +188,4 @@ class HumanVerification
return
$next
(
$request
);
}
private
function
couldBeSpammer
(
$ip
)
{
$serverAddress
=
empty
(
$_SERVER
[
'SERVER_ADDR'
])
?
"144.76.88.77"
:
$_SERVER
[
'SERVER_ADDR'
];
$queryUrl
=
"https://tor.metager.org?password="
.
urlencode
(
env
(
"TOR_PASSWORD"
))
.
"&ra="
.
urlencode
(
$ip
)
.
"&sa="
.
urlencode
(
$serverAddress
)
.
"&sp=443"
;
$ch
=
curl_init
(
$queryUrl
);
curl_setopt
(
$ch
,
CURLOPT_RETURNTRANSFER
,
1
);
curl_setopt
(
$ch
,
CURLOPT_TIMEOUT
,
1
);
curl_exec
(
$ch
);
$httpcode
=
curl_getinfo
(
$ch
,
CURLINFO_HTTP_CODE
);
curl_close
(
$ch
);
$possibleSpammer
=
false
;
if
(
$httpcode
===
200
)
{
return
true
;
}
# Check for recent Spams
$eingabe
=
\
Request
::
input
(
'eingabe'
);
if
(
\
preg_match
(
"/^[
\\
d]
{
3
}
\s*chan.*$/si"
,
$eingabe
))
{
return
true
;
}
if
(
\
preg_match
(
"/^susimail\s+-site:[^\s]+\s-site:/si"
,
$eingabe
))
{
return
true
;
}
return
$possibleSpammer
;
}
}
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