Clickjacking is well known web application vulnerabilities. For example, it was used as an attack on Twitter. To defense Clickjacking attack on your Apache web server, you can use X-FRAME-OPTIONS to avoid your website being hacked from Clickjacking.
The X-Frame-Options in HTTP response header can be used to indicate whether or not a browser should be allowed to open a page in frame or iframe. This will prevent site content embedded into other sites. Did you every try embed Google.com in your website as frame? You can’t because it’s protected and you can protect it too.
There are three settings for X-Frame-Options:
SAMEORIGIN: This setting will allow page to be displayed in frame on the same origin as the page itself.
DENY: This setting will prevent a page displaying in a frame or iframe.
ALLOW-FROM uri: This setting will allow page to be displayed only on the specified origin.
How to implement in Apache, IBM HTTP Server?
Add following line in Apache Web Server’s httpd.conf file
Header always append X-Frame-Options SAMEORIGIN
Restart Apache Web Server
Note: This implementation is applicable in IBM HTTP Server as well. You can add above Header parameter in httpd.conf of your IBM HTTP Server instance.
How to implement in shared web hosting?
If your website is hosted on shared web hosting then you won’t have permission to modify httpd.conf. However, you can implement this by adding following line in .htaccess file.
Header append X-FRAME-OPTIONS “SAMEORIGIN”
How to verify the implementation?
You can use any web developer tool to view Response headers and ensure you see following. You can also use online tool – Header Checker to verify.
How to implement in Nginx?
Go to nginx/conf folder
Add following parameter in nginx.conf under server section
add_header X-Frame-Options “SAMEORIGIN”;
Restart Nginx web server