Difference between revisions of "Litespeed"
m (→Do the modsecurity rules work with Litespeed) |
m (→Do the modsecurity rules work with Litespeed) |
||
Line 19: | Line 19: | ||
When used with [[ASL]] yes. | When used with [[ASL]] yes. | ||
− | If you are not using ASL, then | + | If you are not using ASL, then answer is "maybe". The rules are not supported with Litespeed, but some of them may be supported with Litespeed. This not a limitation in our rules, this is a limitation in Litespeed. |
− | + | Litespeed developed a proprietary implementation that can load some mod_security rules and can process some modsecurity directives. The Litespeed module is not a drop in compatible replacement for modsecurity, it is not feature complete, it does not work like modsecurity and it only supports as subset of the rule language that all modsecurity rules depend on. Here is the official page from Litespeed on what they say they do not support: | |
− | We encourage our LiteSpeed customers to use [[ASL]], which is supported with LiteSpeed. If you do not use ASL you | + | http://www.litespeedtech.com/support/wiki/doku.php?id=litespeed_wiki:mod_security_compatibility |
+ | |||
+ | That means Litespeed does not support the following feature: | ||
+ | |||
+ | # Output analysis, this means Litespeed can not inspect the output from the web server. This means rules like malware detection, malicious shell prevention, brute force protection, data loss protection and other rules that analyze the output from the web server are not supported by Litespeed, unless you use [[ASL]]. | ||
+ | # XML inspection. Litespeed has chosen to not support XML inspection, this means XML based attacks are unfortunately not protected on that platform, unless you use [[ASL]]. | ||
+ | # Upload protection. Litspeed does not support scanning attached files content in multi-part upload | ||
+ | # lua - | ||
+ | |||
+ | Unfortunately, this means that '''LiteSpeed does not support the complete set of our advanced modsecurity rules, and Litespeeds modsecurity-like module is therefore not currently compatible.''' | ||
+ | |||
+ | We encourage our LiteSpeed customers to use [[ASL]], which is supported with LiteSpeed. If you do not use ASL you highly recommend you install an apache or nginx proxy, which both support the actual mod_security rule language, in front of LiteSpeed to use any mod_security rules. | ||
== How to install the T-WAF == | == How to install the T-WAF == |
Revision as of 15:31, 23 October 2013
Contents |
Does ASL work with LiteSpeed?
Secure Kernel
ASL works correctly with Litespeed. However some versions of Litespeed contain a serious vulnerability. When used with secure kernels, such as the ASL kernel, litespeed will attempt to open a hole in the system that secure kernels will deny. If you use Litespeed, you may not be able to use a secure kernel, such as the ASL kernel, as Litespeed apparently must operate in this highly unsafe and insecure manner.
If you do use the ASL kernel, with Litespeed, and Litespeed does not work please know that this is not something we can resolve. This is a due to a vulnerability in Litespeed that the kernel is protected the system from. ASL will not allow an application to open a hole that could compromise the entire system. Litespeed unfortunately does this. We highly recommend you report this vulnerability to Litespeed, and that you open a support case with Litespeed. We've reported this hole to them, and hope they will fix it soon.
Due to the closed source nature of Litespeed, this is not something we can fix in Litespeed and not something we can change in the kernel (the vulnerability in Litespeed attempts to open a hole in the kernel, which would make the system vulnerable to a root level compromise. This is not something we can or will allow to occur with the ASL kernel). As this is a vulnerability in Litespeed, the correct solution is for Litespeed to fix this vulnerability.
WAF
Litespeed, like all HTTP based servers, may be protected through the ASL T-WAF module. Litespeed will show connections from the local system, by default, when using the T-WAF as all connections will in fact be coming from the server itself. Litespeed will need to be configured to use the X-Forwarded-From header for the upstream IP address of the client. Please contact Litespeed for official instructions about how to configure Litespeed to do this.
Courtesy instructions for setting up Litespeed to do this are provided on the ASL WAF page.
Do the modsecurity rules work with Litespeed
When used with ASL yes.
If you are not using ASL, then answer is "maybe". The rules are not supported with Litespeed, but some of them may be supported with Litespeed. This not a limitation in our rules, this is a limitation in Litespeed.
Litespeed developed a proprietary implementation that can load some mod_security rules and can process some modsecurity directives. The Litespeed module is not a drop in compatible replacement for modsecurity, it is not feature complete, it does not work like modsecurity and it only supports as subset of the rule language that all modsecurity rules depend on. Here is the official page from Litespeed on what they say they do not support:
http://www.litespeedtech.com/support/wiki/doku.php?id=litespeed_wiki:mod_security_compatibility
That means Litespeed does not support the following feature:
- Output analysis, this means Litespeed can not inspect the output from the web server. This means rules like malware detection, malicious shell prevention, brute force protection, data loss protection and other rules that analyze the output from the web server are not supported by Litespeed, unless you use ASL.
- XML inspection. Litespeed has chosen to not support XML inspection, this means XML based attacks are unfortunately not protected on that platform, unless you use ASL.
- Upload protection. Litspeed does not support scanning attached files content in multi-part upload
- lua -
Unfortunately, this means that LiteSpeed does not support the complete set of our advanced modsecurity rules, and Litespeeds modsecurity-like module is therefore not currently compatible.
We encourage our LiteSpeed customers to use ASL, which is supported with LiteSpeed. If you do not use ASL you highly recommend you install an apache or nginx proxy, which both support the actual mod_security rule language, in front of LiteSpeed to use any mod_security rules.
How to install the T-WAF
As root, run this command:
yum install asl-waf-module
How to configure the T-WAF for litespeed
Step 1) Log into ASL.
Step 2) Click on the "Configuration" tab.
Step 3) Click on the "WAF" tab and select "WAF configuration".
Step 4) Click the "Add" button.
Step 5) Select "Local Web Server" from the "Add protection for" drop down.
Step 6) Select the port that litespeed runs on. Normally this is port 80.
Step 7) Check the SSL box
Enter the file system path to your SSL certificate, and SSL key in the "Path to SSL Certificate" and "Path to SSL Key file" boxes.
Step 8) Click Save
Note: Litespeed does not support the WAF in embedded mode.
Questions
What should I use with Litespeed?
ASL. ASL supports Litespeed.
I've loaded the rules into Litespeed, does that mean they work with Litespeed?
Litespeed will silently ignore rules and rule language it does not understand, so mod_security rules will appear to work with Litespeed. So unlike the real modsecurity, you wont even get an error if something doesnt work right.
I've load the rules in Litspeed, and they are blocking attacks, doesnt that mean they work with Litespeed?
No. We've done extensive testing with Litespeed, and Litespeed doesnt support the complete rule language and it silently ignores rules and options it doesnt understand. That means that only some of the rules may be working. And of those, they may not even be working correctly, which means more false positives for you, and it also means the rules that are working may be missing attacks (because they require modsecurity features Litespeed doesnt support), plus all the rules that aren't working you'll never know about and none of those attacks will be stopped.