Difference between revisions of "Litespeed"

From Atomicorp Wiki
Jump to: navigation, search
m (Does ASL 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 no.  And this is because '''LiteSpeed does not support mod_security'''. LiteSpeed does not provide a modsecurity compatible module. Litespeed provides a proprietary implementation of something like mod_securityIt is not a drop in replacement for modsecurity, it is not complete, it does not work like modsecurity and it only supports an old and incomplete version of the rule language that all modsecurity rules depend on.
+
If you are not using ASL, then no.  And this is because '''LiteSpeed does not support mod_security'''.  This is not a limitation in the rules, this is a limitation in Litespeeds modsecurity-like implementation.
  
Unfortunately, this means that '''LiteSpeed does not support modern modsecurity rules, and Litspeeds modsecurity-like module is therefore not currently compatible with any mod_security rules including ours.'''
+
'''LiteSpeed does not provide a modsecurity compatible module.'''  Litespeed developed a proprietary incompatible implementation of something 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 an older and incomplete version of the rule language that all modsecurity rules depend on.
  
This means that Litespeed will silently ignore rules and rule language it does not understand, so mod_security rules will appear to work with Litespeed. They do not work correctly, even though they may be stopping some attacks we can assure you that the Litespeed modsecurity implementation is incomplete and does not work correctly, and therefore we can not provide support for our rules with Litespeeds module and do not recommend you use their implementation.
+
Unfortunately, this means that '''LiteSpeed does not support modern modsecurity rules, and Litespeeds modsecurity-like module is therefore not currently compatible with any mod_security rules, including ours.'''
 +
 
 +
Additionally, Litespeed's implemenation will silently ignore rules and rule language it does not understand, and will not generate an errors or feedback to the user if something isnt supported.  As a result mod_security rules will appear to work with Litespeed. We can assure our customers that modern modsecurity rules do not work correctly with Litespeeds module, even though loaded rules may be stopping some attacks we can assure you that the Litespeed modsecurity implementation is incomplete and does not work correctly.  Therefore we can not provide support for our rules with Litespeeds module and do not recommend you use their implementation.
  
 
We encourage our LiteSpeed customers to use [[ASL]], which is supported with LiteSpeed. If you do not use ASL you must 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.
 
We encourage our LiteSpeed customers to use [[ASL]], which is supported with LiteSpeed. If you do not use ASL you must 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.

Revision as of 15:40, 4 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 no. And this is because LiteSpeed does not support mod_security. This is not a limitation in the rules, this is a limitation in Litespeeds modsecurity-like implementation.

LiteSpeed does not provide a modsecurity compatible module. Litespeed developed a proprietary incompatible implementation of something 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 an older and incomplete version of the rule language that all modsecurity rules depend on.

Unfortunately, this means that LiteSpeed does not support modern modsecurity rules, and Litespeeds modsecurity-like module is therefore not currently compatible with any mod_security rules, including ours.

Additionally, Litespeed's implemenation will silently ignore rules and rule language it does not understand, and will not generate an errors or feedback to the user if something isnt supported. As a result mod_security rules will appear to work with Litespeed. We can assure our customers that modern modsecurity rules do not work correctly with Litespeeds module, even though loaded rules may be stopping some attacks we can assure you that the Litespeed modsecurity implementation is incomplete and does not work correctly. Therefore we can not provide support for our rules with Litespeeds module and do not recommend you use their implementation.

We encourage our LiteSpeed customers to use ASL, which is supported with LiteSpeed. If you do not use ASL you must 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.

Personal tools