Security

Vulnerability Disclosure Policy

Frontegg looks forward to working with the security community to find vulnerabilities in order to keep our businesses and customers safe.

Frontegg is a developer platform that enables self-service, security and enterprise-capabilities through a rich user-management interface, freeing up creativity and differentiation. Unlike traditional user management platforms, integrating Frontegg into your app takes minutes, unlocking a whole new level of end-user experience.

Frontegg’s platform doesn’t just provide you with Authentication & SSO via an embeddable or hosted login-box, but a full Admin Portal serving as the Settings area for your users. The Admin Portal allows your users to control every aspect of their accounts: manage users & teams, define and assign roles & permissions, get visibility through audit logs, subscribe to webhooks and much more. Frontegg’s interfaces are embedded as a UI layer within your app and becomes a customer-facing management interface for your end-users, both on the personal and workspace levels. Frontegg also powers-up your backend through rich SDKs supported in various languages and frameworks. # Response Targets Frontegg will make a best effort to meet the following SLAs for hackers participating in our program:

Type of Response SLA in business days
Type of Response First Response SLA in business days 2 days
Type of Response Time to Triage SLA in business days 2 days
Type of Response Time to Bounty SLA in business days 14 days
Type of Response Time to Resolution SLA in business days depends on severity and complexity

We’ll try to keep you informed about our progress throughout the process.

Focus areas We are most interested in critical vulnerabilities related to authentication and access:

  • Account takeover
  • Cross tenants manipulations
  • Privilege escalation
  • Bypass security features (MFA, restrictions, session management)

Disclosure Policy

  • As this is a private program, please do not discuss this program or any vulnerabilities (even resolved ones) outside of the program without express consent from the organization.
  • Follow HackerOne’s disclosure guidelines.

Instructions

  1. Instructions
    1. Sign up for an account on https://portal.au.frontegg.com.
    2. Complete the onboarding process as instructed, providing any required information.
    3. After successful onboarding, you will receive your unique frontegg base url (https://xxxxxx.au.frontegg.com) and client ID. Make note of these details for later use
  2. Download and Setup your Frontegg app:
    1. Clone the GitHub repository: https://github.com/frontegg/testing-demo-app.
    2. Install the necessary dependencies for the application by running npm install or yarn install in the project directory.
    3. Open the codebase in your preferred code editor.
    4. Look for the index.js file
    5. Find the placeholders for the frontegg base url and client ID and replace them with the values your received during the onboarding process
    6. Start the React client by running npm start or yarn start.
  3. Customize the App:
    1. Navigate to the “Builder” section within the Frontegg portal (https://portal.au.frontegg.com).
    2. In the “Builder” section, you will find options to enable or disable various features of the downloaded React client app.
    3. Modify the feature settings according to your testing requirements, enabling or disabling specific functionalities as needed.
    4. Save the changes made to the feature settings and styling preferences.
    5. Don’t forget to publish the changes from the builder into your working environment (development/production)
    6. The customized settings will be applied to the React client app that you downloaded
    7. You can also change settings and configurations under the Environments -> [Dev/Stg/Prod] -> Authentication/Authorization pages

Program Rules

Please provide detailed reports with reproducible steps. If the report is not detailed enough to reproduce the issue, the issue will not be eligible for a reward.

  • Submit one vulnerability per report, unless you need to chain vulnerabilities to provide impact.
  • When duplicates occur, we only award the first report that was received (provided that it can be fully reproduced).
  • Multiple vulnerabilities caused by one underlying issue will be awarded one bounty.
  • Make a good faith effort to avoid privacy violations, destruction of data, and interruption or degradation of our service. Only interact with accounts you own or with the explicit permission of the account holder.

Only these domains are in the scope of the program: portal.au.frontegg.com api.au.frontegg.com

Any domain/property of Frontegg not listed in this list is out of scope.

Exclusions

  • Social engineering of any kind against Frontegg employees or their users
  • Email configuration ie. SPF, DKIM, DMARC.
  • Error pages ie. verbose error messages, stack traces, invalid status codes.
  • Clickjacking ie. missing X-Frame-Options header.
  • Absent or misconfigured HTTP headers ie. Content-Security-Policy, Strict-Transport-Security, X-XSS-Protection, Cache-Control.
  • Configuration that is not directly exploitable ie. weak TLS ciphers, password policy, session expiration, certificate pinning.

Ratings/Rewards:

For the initial prioritization/rating of findings, this program will use CVSS. However, it is important to note that in some cases a vulnerability priority will be modified due to its likelihood or impact. In any instance where an issue is downgraded, a full, detailed explanation will be provided to the researcher – along with the opportunity to appeal, and make a case for a higher priority.

Out of scope vulnerabilities

When reporting vulnerabilities, please consider (1) attack scenario / exploitability, and (2) security impact of the bug. The following issues are considered out of scope:

  • Denial of Service & Rate Limiting
  • Please do NOT use automated tooling when conducting testing on Frontegg assets.
  • Clickjacking on pages with no sensitive actions
  • Cross-Site Request Forgery (CSRF) on unauthenticated forms or forms with no sensitive actions
  • Attacks requiring MITM or physical access to a user’s device.
  • Previously known vulnerable libraries without a working Proof of Concept.
  • Comma Separated Values (CSV) injection without demonstrating a vulnerability.
  • Missing best practices in SSL/TLS configuration.
  • Any activity that could lead to the disruption of our service (DoS).
  • Content spoofing and text injection issues without showing an attack vector/without being able to modify HTML/CSS
  • Rate limiting or bruteforce issues on non-authentication endpoints
  • Missing best practices in Content Security Policy.
  • Missing HttpOnly or Secure flags on cookies
  • Missing email best practices (Invalid, incomplete or missing SPF/DKIM/DMARC records, etc.)
  • Vulnerabilities only affecting users of outdated or unpatched browsers [Less than 2 stable versions behind the latest released stable version]
  • Software version disclosure / Banner identification issues / Descriptive error messages or headers (e.g. stack traces, application or server errors).
  • Public Zero-day vulnerabilities that have had an official patch for less than 1 month will be awarded on a case by case basis.
  • Tabnabbing
  • Open redirect – unless an additional security impact can be demonstrated
  • Issues that require unlikely user interaction

A Few Important Requirements for Frontegg:

  • All testing must be conducted using your @wearehackerone.com email ID only. If you fail to use your @wearehackerone.com email ID, you run the risk of getting blocked from accessing Frontegg applications.
  • All tests must be performed as a Frontegg customer. You can create an account using your @wearehackerone.com email ID. External scanning finding will not be counted as a valid finding
  • Frontegg’s customer instances are not to be accessed in any way (i.e. no customer data is accessed, customer credentials are not to be used or “verified”)
  • If you believe you have found sensitive customer data (e.g., login credentials, API keys etc) or a way to access customer data (i.e. through a vulnerability) report it, but do not attempt to successfully validate if/that it works.

Safe Harbor

Any activities conducted in a manner consistent with this policy will be considered authorized conduct and we will not initiate legal action against you. If legal action is initiated by a third party against you in connection with activities conducted under this policy, we will take steps to make it known that your actions were conducted in compliance with this policy.

Thank you for helping keep Frontegg and our users safe!

Responsibility first

Contact the Frontegg team to disclose any suspicious activity

Report a vulnerability