adselfservice-plus-post-deployment-security-measures
adselfservice-plus-post-deployment-security-measures
Post-deployment
security measures
www.adselfserviceplus.com
Table of Contents
1. Introduction 1
Enable LDAPS 10
www.adselfserviceplus.com
1 Introduction
After the deployment of ADSelfService Plus, there are a few measures that have to be
carried out for a secure inbound connection between the ADSelfService Plus server,
the user's web browser, and the ADSelfService app. It is also important to protect the
outbound connection between the ADSelfService Plus server, the mail server, and
the external database server. The ADSelfService Plus installation directory must also
be guarded against access by unauthorized users.
This guide details the various steps for implementing these measures and protecting
the ADSelfService Plus deployment in your enterprise.
1 www.adselfserviceplus.com
2 Security features that need to be enabled
during inbound connections
i. SSL configuration
To protect the data transferred between the ADSelfService Plus server, the user's web browser,
and the ADSelfService Plus app, and to secure data during API access, SSL certificates should
be installed and an HTTPS connection should be configured.
Check out the complete guide on installing SSL certificates for ADSelfService Plus.
Specific ciphers and protocols can be used to enable forward secrecy. Forward secrecy
protects previously recorded traffic between the user's web browser and the ADSelfService
Plus server from being decrypted and misused. To configure forward secrecy, add the
necessary ciphers and protocols to the server.xml file using these two methods:
Note: Applying these settings will overwrite the current cipher values in the server.xml file
located under conf in the ADSelfService Plus installation directory folder.
2 www.adselfserviceplus.com
Method 2� Manual addition
1. Open the server.xml file, located under conf folder in the ADSelfService Plus installation
directory folder. Locate the following connector tag:
<Connector SSLEnabled="true"
protocol="org.apache.coyote.http11.Http11NioProtocol"
ciphers=HIGH:!aNULL:!eNULL:!EXPORT:!DES:!RC4�!MD5�!kRSA:!3DES:!DHE:
!AES128�!CBC:!TLSv1.0�!TLSv1.1"
allowUnsafeLegacyRenegotiation="false"
server="Adselfservice Plus"
sslProtocol="TLS"
compression="off"
SSLEnabledProtocols="TLSv1.2"
For example:
3 www.adselfserviceplus.com
2.
1. Apply security parameters
Security parameters define the headers of the HTTP response messages from the
ADSelfService Plus server. They help mitigate attacks by instructing the end user's web
browser how to handle the communication between the server and the web browser. Security
parameters protect communication between the server and the web browser by:
1. Preventing the web browser from caching the server response.
5. Preventing clickjacking.
Case 1� For ADSelfService Plus build versions 6304 and above, the security parameters file
named security_params.conf is found under <Install_directory>/conf.
Case 1� For ADSelfService Plus build versions below 6304, follow these steps:
1. Download the security parameters file from here.
The following are the headers present in the ADSelfService Plus security_params.conf file.
no-cache: Stores caches but the browser still looks for updates in the application server before
reusing the stored data.
4 www.adselfserviceplus.com
X-Content-Type
The x-content-type header specifies that the Multipurpose Internet Mail Extensions (MIME)
types mentioned in the content-type HTTPS header must be followed without deviation. This
header helps prevent MIME type sniffing attacks. This header requires the nosniff directive to
be set.
nosniff: Blocks an HTTPS request that is of the type style and if the MIME type is not text/css or
a JavaScript MIME type.
x-content-type-options=nosniff
Strict-Transport-Security
The HTTPS Strict Transport Security (HSTS) header enforces HTTPS during all attempts to
connect to a web page. During the first connection to the web page, the HSTS header is sent
back to the end user's web browser. This header instructs the browser to connect to the
webpage using only HTTPS. As a result, only HTTPS connections to the webpage are
successful, other connections are terminated. This helps prevent man-in-the-middle attacks
like cookie hijacking.
The HSTS header in the security_params.conf files consists of the following policy directive:
max-age=<expire-time>: Sets the maximum time, in seconds, for which the end user's
browser remembers that the webpage must be only accessed using HTTPS.
X-Frame-Options
The X-Frame-Options header specifies whether the end user's browser can be allowed to
embed and display the webpage in another webpage. This helps prevent clickjacking by
ensuring both the embedded page and the parent page are secure. The header can contain
one of these two policy directives:
SAMEORIGIN: Allows the webpage to be embedded in another webpage from the same
domain
5 www.adselfserviceplus.com
In the security_params.conf file this policy is defined as:
#x-frame-options=SAMEORIGIN
The header is commented by default, and will not be applied unless you uncomment it by
removing the # symbol in the beginning. If you are uncommenting this header, you must
modify frame-src and frame-ancestors directives in the Content-Security-Policy header as
mentioned below.
x-frame-options=SAMEORIGIN
X-XSS-protection
This header is specific to legacy versions of web browsers such as Internet Explorer 8+,
Chrome, Edge, Opera, and Safari. It is dedicated to filtering and preventing cross-site scripting
(XSS) attacks. It is generally not required in latest browsers versions and its functionality is
covered by the Content-Security-Policy header instead. The following policy directives are a
part of this header:
This header is a part of the security.params file to accommodate to environments that continue
to use legacy browser versions. In the security_params.conf file this policy is defined as:
X-XSS-Protection=1; mode=block
Referrer-Policy
The Referrer-Policy header controls how much referrer information must be added to the HTTP
request as part of the Referer header which contains the origin address of the HTTP request.
While the Referer header is used for analytics, logging, or optimized caching, it can be
exploited for data theft. The Referrer-Policy header decided what type of information can be
carried by the Referer header thereby preventing data exposure and exploitation.
6 www.adselfserviceplus.com
In the security_params.conf file this header is defined as:
Referrer-Policy=strict-origin-when-cross-origin
Content-Security-Policy
The Content-Security-Policy header is used to define trusted sources for the resources to be
rendered on a webpage. Once these sources are defined, only resources from them can be
executed on the webpage. This helps prevent code injection attacks like XSS attacks and
clickjacking.
This header is commented by default, and will not be applied unless you uncomment it by
removing the # symbol in the beginning.
Also, the ADSelfService Plus server is the only source defined as trusted resources for content
rendered in the ADSelfService Plus portal. This can be modified as described below.
The following policy directives are a part of this header in the security_param.conf:
frame-ancestors: Specifies the parent HTML webpages where the webpage can be
embedded
default-src: Acts as a fallback for other directives by defining the trusted source for all
resources
7 www.adselfserviceplus.com
Note: Modify the Content Security Policy header
In the existing security_params.conf file, 'self' is defined as the trusted source for
the rendered resources. The source 'self' refers to the webpage's origin. In this case,
it refers to the ADSelfService Plus server's access URL. Here is the existing
Content-Security-Policy header:
For improved security, organizations can replace the source from 'self' to the exact
domain address of the origin domain. In case any other domain gets designated as
the origin, this prevents its content from being executed in the ADSelfService Plus
portal.
Consider an example where ADSelfService Plus is deployed in the domain
abcdcorp.com in an organization. This domain can be exclusively defined as the
source for the content executed by replacing 'self' with the domain's complete
domain address as mentioned below:
8 www.adselfserviceplus.com
2) Modifying the frame-src and frame-ancestors directive
If MFA for OWA logins is enabled, the Exchange server's hostname must be
mentioned as a trusted source for frame-ancestors as well.
If you are including images, stylesheets, and Javascript resources from other trusted
sources, you must mention their source URL in the next to these directives.
Setting cookies to HttpOnly permits only the ADSelfService Plus server to access the cookies
and blocks any script from the web browser side from accessing it. From builds 6304 and
above, cookies are automatically set to HttpOnly.
For builds lower than 6304, set the cookies to HttpOnly by running the following query in the
database:
systemparams)+1,'ENABLE_HTTPONLY','true');"
Note:
Since the adscsrf and _zcsr_tmp cookies are required to be accessed by the web browser for
the functioning of the ADSelfService Plus portal, HttpOnly will not be set for them.
9 www.adselfserviceplus.com
3 Measures to promote security during
outbound connections:
1. Enable LDAPS
When the Active Directory domain controller has SSL enabled (recommended), a Secure
Lightweight Directory Application Protocol (LDAPS) connection can be configured in the
ADSelfService Plus Connection settings to ensure a secure connection between ADSelfService
Plus and Active Directory. Follow these steps to enable LDAPS connection:
4. Click Save.
After deploying the mail server with a specific protocol (SSL/TLS), you need to configure the
same protocol in the ADSelfService Plus Mail Server settings. This is done to establish a secure
connection between the ADSelfService Plus server and the mail server. Check out this article
for details on how to enable an SSL/TLS connection between ADSelfService Plus and the mail
server.
10 www.adselfserviceplus.com
3. Configure an SSL connection with MS SQL Server
ADSelfService Plus supports MS SQL in addition to the built-in PostgreSQL. To secure the data
transferred between the ADSelfService Plus server and MS SQL Server, it is necessary to
configure an SSL connection between them. This is done by applying an SSL certificate in SQL
Server. This guide offers a detailed explanation on how to secure the connection between
ADSelfService Plus and MS SQL using SSL.
11 www.adselfserviceplus.com
Our Products
AD360 | Log360 | ADManager Plus | ADAudit Plus | RecoveryManager Plus | M365 Manager Plus
ADSelfService Plus is an identity security solution to ensure secure and seamless access to enterprise resources
and establish a Zero Trust environment. With capabilities such as adaptive multi-factor authentication, single
sign-on, self-service password management, a password policy enhancer, remote work enablement and
workforce self-service, ADSelfService Plus provides your employees with secure, simple access to the resources
they need. ADSelfService Plus helps keep identity-based threats out, fast-tracks application onboarding,
improves password security, reduces help desk tickets and empowers remote workforces. For more information
about ADSelfService Plus, visit https://www.manageengine.com/products/self-service-password.