403 Forbidden Error While Sending GET Data

2019-02-26 05:46发布

My server is Linux server and reseller is mine. So i can reach WHM panel, too .

When GET data comes like :

a.php?url=http://www.domain.com

return 403 Forbidden.

But if data comes like this :

a.php?url=www.domain.com

it's working.

So, http:// generating an error. How can i fix it ?

Also, this is returning 403 Forbidden :

a.php?url=http%3a%2f%2fwww.domain.com

Thanks.

4条回答
混吃等死
2楼-- · 2019-02-26 05:55

You need to encode the query string so that it is valid, see urlencode()

查看更多
仙女界的扛把子
3楼-- · 2019-02-26 05:56

This is definitely one of the mod_security CoreRules. I've had the very same issue on my previous host. I don't remember the rule name however.

You should investigate the core rules version. 2.1.1 would be current, and might have relaxed that peculiar filter. If updating or reconfiguring doesn't help you would else have to base64_encode() your url parameter (simpler encodings are sniffed by mod_security).

SecFilterDebugLog /var/log/apache2/modsec_log
SecFilterDebugLevel 4

Enables the debug logging of mod_security, so you can find out which rule actually caused the issue - if you want to disable it (advisable). http://www.modsecurity.org/documentation/modsecurity-apache/1.9.3/modsecurity-manual.html#07-logging

查看更多
Ridiculous、
4楼-- · 2019-02-26 06:09

It is mod_security's 10_asl_rules.conf causing this error.

It is the .htaccess is picking up on something in that URL and sending forbidden headers.

查看更多
闹够了就滚
5楼-- · 2019-02-26 06:21

re: 404 -- perhaps you're rewriting the query string to the path somewhere, and you don't have AllowEncodedSlashes on?

查看更多
登录 后发表回答