http://localhost:3000/ 18 http://localhost:3000/login PasswordOverHttp Important 100

{PRODUCT} detected that password data is being transmitted over HTTP.

All sensitive data should be transferred over HTTPS rather than HTTP. Forms should be served over HTTPS. All aspects of the application that accept user input, starting from the login process, should only be served over HTTPS.
HNL Security Team Project Tracking System

General

Profile

Lost password
]]>
A6 4 319 65 6.5.4 6.5.4 CVSS:3.0/AV:A/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N Base 5.7 Medium Temporal 5.7 Medium Environmental 5.7 Medium
http://localhost:3000/ SslVersion3Support Medium 100

{PRODUCT} detected that insecure transportation security protocol (SSLv3) is supported by your web server.

SSLv3 has several flaws. An attacker can cause connection failures and they can trigger the use of SSL 3.0 to exploit vulnerabilities like POODLE.

Configure your web server to disallow using weak ciphers. You need to restart the web server to enable changes.

  • For Apache, adjust the SSLProtocol directive provided by the mod_ssl module. This directive can be set either at the server level or in a virtual host configuration.
    SSLProtocol +TLSv1 +TLSv1.1 +TLSv1.2
    
  • For Nginx, locate any use of the directive ssl_protocols in the nginx.conf file and remove SSLv3.
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    
  • For Microsoft IIS, you should make some changes on the system registry.
    1. Click on Start and then Run, type regedt32 or regedit, and then click OK.
    2. In Registry Editor, locate the following registry key or create if it does not exist:
      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\
      
    3. Locate a key named Server or create if it doesn't exist.
    4. Under the Server key, locate a DWORD value named Enabled or create if it doesn't exist and set its value to "0".
  • For Lighttpd, put the following lines in your configuration file:
    ssl.use-sslv2 = "disable"
    ssl.use-sslv3 = "disable"
    
A6 4 327 217 6.5.4 6.5.4 CVSS:3.0/AV:A/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N/E:P/RL:O/RC:C Base 6.8 Medium Temporal 6.1 Medium Environmental 6.1 Medium
http://localhost:3000/login AutoCompleteEnabled Low 100

{PRODUCT} detected that autocomplete is enabled in one or more of the form fields which might contain sensitive information like "username", "credit card" or "CVV".

HNL Security Team Project Tracking System

General

Profile

Lost password
]]>
A5 15 16 CVSS:3.0/AV:P/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N Base 4.6 Medium Temporal 4.6 Medium Environmental 4.6 Medium
http://localhost:3000/ VersionDisclosureRuby Low 90

{PRODUCT} identified that the target web server is disclosing the Ruby version in its HTTP response. This information might help an attacker gain a greater understanding of the systems in use and potentially develop further attacks targeted at the specific version of Ruby.

Configure your web server to prevent information leakage from its HTTP response.
HNL Security Team Project Tracking System

General

Profile

Home

]]>
45 205 170 164.306(a), 164.308(a) CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N Base 5.3 Medium Temporal 5.3 Medium Environmental 5.3 Medium
http://localhost:3000/ VersionDisclosureWebrick Low 90

{PRODUCT} identified that the target web server is disclosing the WEBrick version in its HTTP response. This information might help an attacker gain a greater understanding of the systems in use and potentially develop further attacks targeted at the specific version of WEBrick.

Configure your web server to prevent information leakage from its HTTP response.
HNL Security Team Project Tracking System

General

Profile

Home

]]>
45 205 170 164.306(a), 164.308(a) CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N Base 5.3 Medium Temporal 5.3 Medium Environmental 5.3 Medium
http://localhost:3000/ TlsVersion1Support Low 100

{PRODUCT} detected that insecure transportation security protocol (TLS 1.0) is supported by your web server.

TLS 1.0 has several flaws. An attacker can cause connection failures and they can trigger the use of TLS 1.0 to exploit vulnerabilities like BEAST (Browser Exploit Against SSL/TLS).

Websites using TLS 1.0 will be considered non-compliant by PCI after 30 June 2018.

Configure your web server to disallow using weak ciphers. You need to restart the web server to enable changes.

  • For Apache, adjust the SSLProtocol directive provided by the mod_ssl module. This directive can be set either at the server level or in a virtual host configuration.
    SSLProtocol +TLSv1.1 +TLSv1.2
    
  • For Nginx, locate any use of the directive ssl_protocols in the nginx.conf file and remove TLSv1.
    ssl_protocols TLSv1.1 TLSv1.2;
    
  • For Microsoft IIS, you should make some changes on the system registry.
    1. Click on Start and then Run, type regedt32 or regedit, and then click OK.
    2. In Registry Editor, locate the following registry key or create if it does not exist:
      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\
      
    3. Locate a key named Server or create if it doesn't exist.
    4. Under the Server key, locate a DWORD value named Enabled or create if it doesn't exist and set its value to "0".
A6 4 327 217 6.5.4 6.5.4
http://localhost:3000/robots.txt RobotsIdentified Information 100

{PRODUCT} detected a Robots.txt file with potentially sensitive content.

Ensure you have nothing sensitive exposed within this file, such as the path of an administration panel. If disallowed paths are sensitive and you want to keep it from unauthorized access, do not write them in the Robots.txt, and ensure they are correctly protected by means of authentication.

Robots.txt is only used to instruct search robots which resources should be indexed and which ones are not.

The following block can be used to tell the crawler to index files under /web/ and ignore the rest:
User-Agent: *
Allow: /web/
Disallow: /

Please note that when you use the instructions above, search engines will not index your website except for the specified directories.

If you want to hide certain section of the website from the search engines X-Robots-Tag can be set in the response header to tell crawlers whether the file should be indexed or not:

X-Robots-Tag: googlebot: nofollow
X-Robots-Tag: otherbot: noindex, nofollow

By using X-Robots-Tag you don't have to list the these files in your Robots.txt.

It is also not possible to prevent media files from being indexed by putting using Robots Meta Tags. X-Robots-Tag resolves this issue as well.

For Apache, the following snippet can be put into httpd.conf or an .htaccess file to restrict crawlers to index multimedia files without exposing them in Robots.txt

<Files ~ "\.pdf$">
# Don't index PDF files.
Header set X-Robots-Tag "noindex, nofollow"
</Files>
<Files ~ "\.(png|jpe?g|gif)$">
#Don't index image files.
Header set X-Robots-Tag "noindex"
</Files>
 
C7
http://localhost:3000/login AutoCompleteEnabledPasswordField Information 100

{PRODUCT} detected that autocomplete is enabled in one or more of the password fields.

HNL Security Team Project Tracking System

General

Profile

Lost password
]]>
A5 15 16 CVSS:3.0/AV:P/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N Base 4.6 Medium Temporal 4.6 Medium Environmental 4.6 Medium
http://localhost:3000/ RubyOutOfDate Information 90

{PRODUCT} identified the target web site is using Ruby and detected that it is out of date.

Please upgrade your installation of Ruby to the latest stable version.

HNL Security Team Project Tracking System

General

Profile

Home

]]>
A9 310 6.2 6.2 C1
http://localhost:3000/ JqueryOutOfDate Information 90

{PRODUCT} identified the target web site is using jQuery and detected that it is out of date.

Please upgrade your installation of jQuery to the latest stable version.

HNL Security Team Project Tracking System

General

Profile

Home

]]>
A9 310 6.2 6.2 C1
http://localhost:3000/ JqueryUiDialogOutOfDate Information 90

{PRODUCT} identified the target web site is using jQuery UI Dialog and detected that it is out of date.

Please upgrade your installation of jQuery UI Dialog to the latest stable version.

HNL Security Team Project Tracking System

General

Profile

Home

]]>
A9 310 6.2 6.2 C1
http://localhost:3000/ JqueryUiAutocompleteOutOfDate Information 90

{PRODUCT} identified the target web site is using jQuery UI Autocomplete and detected that it is out of date.

Please upgrade your installation of jQuery UI Autocomplete to the latest stable version.

HNL Security Team Project Tracking System

General

Profile

Home

]]>
A9 310 6.2 6.2 C1
http://localhost:3000/ JqueryUiTooltipOutOfDate Information 90

{PRODUCT} identified the target web site is using jQuery UI Tooltip and detected that it is out of date.

Please upgrade your installation of jQuery UI Tooltip to the latest stable version.

HNL Security Team Project Tracking System

General

Profile

Home

]]>
A9 310 6.2 6.2 C1
http://localhost:3000/javascripts/ MissingXssProtectionHeader Information 100

{PRODUCT} detected a missing X-XSS-Protection header which means that this website could be at risk of a Cross-site Scripting (XSS) attacks.

Add the X-XSS-Protection header with a value of "1; mode= block".
  • X-XSS-Protection: 1; mode=block
Redmine 404 error

Page not found

The page you were trying to access doesn't exist or has been removed.

Back

]]>
164.308(a) C9
http://localhost:3000/ SameSiteCookieNotImplemented Information 100

Cookies are typically sent to third parties in cross origin requests. This can be abused to do CSRF attacks. Recently a new cookie attribute named SameSite was proposed to disable third-party usage for some cookies, to prevent CSRF attacks.

Same-site cookies allow servers to mitigate the risk of CSRF and information leakage attacks by asserting that a particular cookie should only be sent with requests initiated from the same registrable domain.

The server can set a same-site cookie by adding the SameSite=... attribute to the Set-Cookie header:

Set-Cookie: key=value; SameSite=strict

There are two possible values for the same-site attribute:

  • Lax
  • Strict

In the strict mode, the cookie is not sent with any cross-site usage even if the user follows a link to another website. Lax cookies are only sent with a top-level get request.

HNL Security Team Project Tracking System

General

Profile

Home

]]>
C9
http://localhost:3000/ CspNotImplemented Information 100

CSP is a added layer of security against that helps to mitigate mainly Cross-site Scripting attacks.

CSP can be enabled instructing the browser with a Content-Security-Policy directive in a response header;

 Content-Security-Policy: script-src 'self';

or in a meta tag;

<meta http-equiv="Content-Security-Policy" content="script-src 'self';"> 

In the above example, you can restrict script loading only to same domain. It will also restrict inline script executions both in element attribute and event handler. There are various directives which you can use declaring CSP:

  • script-src: Restricts the script loading resources to the ones you declared. By default, it disables inline script executions unless you permit to the evaluation functions and inline scripts by the unsafe-eval and unsafe-inline keywords.
  • base-uri:  Base element is used to resolve relative URL to absolute one. By using this CSP directive, you can define all possible URLs which could be assigned to base-href attribute of the document.
  • frame-ancestors:  It is very similar to X-Frame-Options HTTP header. It defines the URLs by which the page can be loaded in an iframe.
  • frame-src   / child-src: frame-src is the deprecated version of child-src. Both define the sources that can be loaded by iframe in the page.
  • object-src : Defines the resources that can be loaded by embedding such as Flash files, Java Applets.
  • img-src: As its name implies, it defines the resources where the images can be loaded from.
  • connect-src: Defines the whitelisted targets for XMLHttpRequest and WebSocket objects.
  • default-src: It is a fallback for the directives that mostly ends with -src prefix. When the directives below are not defined, the value set to default-src will be used:
    • child-src
    • connect-src
    • font-src
    • img-src
    • manifest-src
    • media-src
    • object-src
    • script-src
    • style-src

When setting the CSP directives, you can also use some CSP keywords:

  • none: When used, it denies all resources loadings.
  • self : It points to the document's URL (domain + port).
  • unsafe-inline: It permits running inline scripts .
  • unsafe-eval: It permits execution of evaluations function such as eval().

In addition to CSP keywords, you can also use wildcard or only a schema when defining whitelist URLs for the points. Wildcard can be used for subdomain and port portions of the URLs:

Content-Security-Policy: script-src https://*.example.com;
Content-Security-Policy: script-src https://example.com:*;
Content-Security-Policy: script-src https;

It is also possible to set a CSP in Report-Only mode instead of forcing it immediately in the migration period. Thus you can see the violations of the CSP policy in the current state of your web site while migrating to CSP:

Content-Security-Policy-Report-Only: script-src 'self'; report-uri: https://example.com;

Enable CSP on your website by sending the Content-Security-Policy in HTTP response headers that instruct the browser to apply the policies you specified.

HNL Security Team Project Tracking System

General

Profile

Home

]]>
C9