nocodb@0.1.37

NocoDB Backend

  • latest version

    0.301.3

  • first published

    5 years ago

  • latest version published

    5 months ago

  • licenses detected

  • Direct Vulnerabilities

    Known vulnerabilities in the nocodb package. This does not include vulnerabilities belonging to this package’s dependencies.

    Fix vulnerabilities automatically

    Snyk's AI Trust Platform automatically finds the best upgrade path and integrates with your development workflows. Secure your code at zero cost.

    Fix for free
    VulnerabilityVulnerable Version
    • M
    Insufficient Session Expiration

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Insufficient Session Expiration through the passwordForgot process. An attacker can maintain unauthorized access by using a previously obtained refresh token even after the legitimate user completes the password recovery flow.

    How to fix Insufficient Session Expiration?

    There is no fixed version for nocodb.

    *
    • M
    Cross-site Scripting (XSS)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Cross-site Scripting (XSS) in the handling of secure attachments when the NC_SECURE_ATTACHMENTS setting is enabled. An attacker can execute arbitrary scripts in the context of the application by uploading specially crafted .html or .svg files that are rendered inline by the browser. This is only exploitable if the attacker has authenticated upload permissions and secure-attachment mode is enabled.

    How to fix Cross-site Scripting (XSS)?

    There is no fixed version for nocodb.

    *
    • M
    Server-side Request Forgery (SSRF)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) via the migrate endpoint when a user with workspace owner role supplies a crafted migrationUrl. An attacker can access internal resources or read local files by providing a malicious URL to the endpoint. This is only exploitable if the attacker has workspace owner privileges.

    How to fix Server-side Request Forgery (SSRF)?

    There is no fixed version for nocodb.

    *
    • M
    Server-side Request Forgery (SSRF)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) due to the spreadsheet import URL check in UtilsService._axiosRequestMake in packages/nocodb/src/services/utils.service.ts. An attacker can make the server fetch an arbitrary URL by submitting a spreadsheet-import request whose target URL passes the extension allowlist, such as a non-spreadsheet path with a query string ending in .csv. Because the allowlist was applied to the full URL string instead of the URL pathname, the endpoint accepted crafted URLs that were not actually spreadsheet files. This lets an attacker coerce the NocoDB process into issuing HTTP requests on their behalf, including requests to internal services reachable from the host.

    Notes

    • The vulnerable endpoint was reachable without any auth gate in the advisory’s reported deployment, so any unauthenticated caller who could hit the import API could trigger the server-side fetch.
    • The bypass depended on the URL being accepted as a spreadsheet by extension alone; URLs with a non-spreadsheet path but a query string like ?.csv satisfied the check.

    How to fix Server-side Request Forgery (SSRF)?

    A fix was pushed into the master branch but not yet published.

    *
    • M
    Server-side Request Forgery (SSRF)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) via the axiosRequestMake spreadsheet-fetch URL handling in packages/nocodb/src/services/utils.service.ts. An attacker can make the server request internal HTTP endpoints, including cloud metadata services, by supplying a crafted spreadsheet import URL whose path contains a permitted extension and bypasses the hand-rolled IP blocklist. The vulnerable code accepted spreadsheet URLs when .xls, .xlsx, .xlsm, .ods, .ots, or .csv appeared anywhere in the full URL string, so a URL such as http://169.254.169.254/credentials/.xlsx passed the gate. Because the request was made from the NocoDB process, authenticated users with editor access could reach internal network resources and exfiltrate sensitive metadata or other internal responses.

    How to fix Server-side Request Forgery (SSRF)?

    A fix was pushed into the master branch but not yet published.

    *
    • M
    Cross-site Scripting (XSS)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Cross-site Scripting (XSS) in the password reset. An attacker can execute arbitrary JavaScript in the context of the application by crafting a malicious password reset link and convincing a victim to follow it. This allows the attacker to access authentication state and perform actions on behalf of the victim.

    How to fix Cross-site Scripting (XSS)?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    SQL Injection

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to SQL Injection via the ARRAYSORT formula argument processing in Postgres-backed deployments. An attacker can execute arbitrary SQL commands and cause significant query delays by injecting malicious input into the direction argument, which is improperly validated and embedded into a raw SQL fragment during column creation and on every subsequent record read.

    How to fix SQL Injection?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Access Control Bypass

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Access Control Bypass via the publicMmList, publicHmList, relDataList, and nested endpoints when the show flag for a column is not properly checked. An attacker can access hidden linked records by supplying a valid share UUID and directly querying relation endpoints for columns that are not visible in the shared view.

    How to fix Access Control Bypass?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Directory Traversal

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Directory Traversal in the process that handles SQLite source filenames. An attacker can gain unauthorized access to or modify internal application data by supplying a crafted filename that points to arbitrary files accessible by the application process. This allows reading or overwriting sensitive files through standard table APIs. This is only exploitable if the attacker is authenticated and has base-create permissions.

    How to fix Directory Traversal?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Authorization Bypass Through User-Controlled Key

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Authorization Bypass Through User-Controlled Key via the public shared-view endpoints, which exposed values from columns that were intended to be hidden. An attacker can access sensitive information by crafting requests that leverage the groupBy, filter, sort, or related-data list functionalities to enumerate or extract hidden column values without authentication.

    How to fix Authorization Bypass Through User-Controlled Key?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Server-side Request Forgery (SSRF)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) via the connection-test endpoint. An authenticated attacker can access internal network resources by supplying a crafted database host value when testing database connections.

    How to fix Server-side Request Forgery (SSRF)?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • L
    Authorization Bypass Through User-Controlled Key

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Authorization Bypass Through User-Controlled Key in the readAttachment tool. An attacker can access files in the shared storage belonging to other users by supplying a known attachment path and a valid MCP token.

    How to fix Authorization Bypass Through User-Controlled Key?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • H
    SQL Injection

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to SQL Injection via the bulk groupBy. An authenticated attacker can execute arbitrary SQL commands by setting a column's title to a crafted SQL fragment, which is then interpolated into a database query without proper sanitization.

    How to fix SQL Injection?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    User Impersonation

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to User Impersonation via the testConnection endpoint when the integration is fetched in a bypass scope and permission checks are insufficiently scoped to the integration's workspace. An attacker can gain unauthorized access to integration configurations and potentially interact with databases using another workspace's credentials by supplying the integration ID and possessing creator or owner privileges on any base in any workspace.

    How to fix User Impersonation?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Brute Force

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Brute Force via the auth.service.ts file. An attacker can determine whether specific email addresses are registered by measuring the response time of sign-in attempts.

    How to fix Brute Force?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Information Exposure

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Information Exposure via the shared-view password check. An attacker can infer sensitive information about legacy plaintext passwords by measuring authentication response times, potentially revealing password length and prefix without prior authentication.

    Note: This is only exploitable if the targeted shared view uses a password created before the bcrypt migration and the attacker can accurately time authentication responses.

    How to fix Information Exposure?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Race Condition

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Race Condition through a race condition in the OAuth token exchange. An attacker can obtain multiple valid token pairs by making concurrent requests using the same authorization code and PKCE verifier.

    How to fix Race Condition?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Insufficient Session Expiration

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Insufficient Session Expiration due to the failure to revoke OAuth tokens in the revokeAllOAuthTokensByUser process after password change, reset, or recovery. An attacker can maintain unauthorized access by continuing to use previously issued OAuth tokens even after a user has performed a security event intended to invalidate such access.

    How to fix Insufficient Session Expiration?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Missing Authorization

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Missing Authorization via the AclMiddleware in the request authorization path. An attacker can invite users or enumerate base members by sending userInvite or baseUserList requests from a shared-base session. This allows a public-link visitor to perform privileged membership operations on a base, exposing member information and enabling unwanted access to the shared workspace.

    How to fix Missing Authorization?

    A fix was pushed into the master branch but not yet published.

    *
    • M
    Allocation of Resources Without Limits or Throttling

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling through the AttachmentsService upload-by-URL path in the attachment handling code. An attacker can exhaust storage or processing resources by providing a remote file URL pointing to a very large file. The service accepts the response metadata from the fetched URL without enforcing a file size limit, allowing oversized uploads to be pulled into the attachment workflow and disrupting normal application use.

    How to fix Allocation of Resources Without Limits or Throttling?

    A fix was pushed into the master branch but not yet published.

    *
    • M
    Allocation of Resources Without Limits or Throttling

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling through the AttachmentsService upload-by-URL path in the attachment handling code. An attacker can exhaust storage or processing resources by providing a remote file URL pointing to a very large file. The service accepts the response metadata from the fetched URL without enforcing a file size limit, allowing oversized uploads to be pulled into the attachment workflow and disrupting normal application use.

    How to fix Allocation of Resources Without Limits or Throttling?

    A fix was pushed into the master branch but not yet published.

    *
    • M
    Cross-site Scripting (XSS)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Cross-site Scripting (XSS) via the CommentsService component, which uses v-html without proper sanitization. An attacker can execute arbitrary JavaScript code in the context of a user's browser by submitting crafted input that is later viewed by other users.

    Note:

    This issue affects users of nc-gui frontend.

    How to fix Cross-site Scripting (XSS)?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Cross-site Scripting (XSS)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Cross-site Scripting (XSS) via the v-html due to the lack of sanitization. An attacker with Editor role can execute arbitrary scripts in the context of a user's browser by storing malicious content in rich text cells.

    Note:

    This issue affects users of nc-gui frontend.

    How to fix Cross-site Scripting (XSS)?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Cross-site Scripting (XSS)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Cross-site Scripting (XSS) via the Comment.insert() function that that lacks sanitization for stored HTML. An attacker can execute arbitrary JavaScript code in the context of the user's browser by submitting crafted input that is later viewed by other users.

    Note:

    This issue affects users of nc-gui frontend.

    How to fix Cross-site Scripting (XSS)?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • H
    SQL Injection

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to SQL Injection via the DATEADD formula's unit parameter. An attacker with the Creator role can execute arbitrary SQL commands by supplying crafted input to this parameter.

    How to fix SQL Injection?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Cross-site Scripting (XSS)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Cross-site Scripting (XSS) via the CommentsService component that lacks sanitization for stored HTML. An attacker can execute arbitrary scripts in the context of users viewing affected rich text fields by injecting unsanitized HTML through the API.

    How to fix Cross-site Scripting (XSS)?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Authorization Bypass Through User-Controlled Key

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Authorization Bypass Through User-Controlled Key via the McpTokenService.get(), regenerateToken(), and delete() functions due to missing ownership validation for MCP tokens. An attacker with Creator role privileges can access, regenerate, or delete another user's tokens by knowing the target token ID.

    How to fix Authorization Bypass Through User-Controlled Key?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • H
    Insufficient Session Expiration

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Insufficient Session Expiration in the passwordReset() function that fails to call UserRefreshToken.deleteAllUserToken() to invalidate JWTs. An attacker can maintain unauthorized access by using a previously obtained refresh token to mint valid JWTs even after the victim resets their password.

    How to fix Insufficient Session Expiration?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Information Exposure

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Information Exposure via the POST /api/v2/auth/password/forgot endpoint. An attacker can determine whether a specific email address is registered by submitting password reset requests and analyzing the differing responses.

    How to fix Information Exposure?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • M
    Credential Exposure

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Credential Exposure in the password column of the nc_views table in public-datas.service.ts, public-metas.service.ts and calendar-datas.service.ts, where passwords are stored in plaintext. An attacker can obtain sensitive authentication credentials by gaining unauthorized access to the database.

    How to fix Credential Exposure?

    Upgrade nocodb to version 0.301.3 or higher.

    <0.301.3
    • H
    Open Redirect

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Open Redirect via the continueAfterSignIn parameter during the authentication process. An attacker can redirect authenticated users to arbitrary external websites by supplying a crafted value, increasing the risk of credential theft through social engineering.

    How to fix Open Redirect?

    Upgrade nocodb to version 0.301.0 or higher.

    <0.301.0
    • C
    Cross-site Scripting (XSS)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Cross-site Scripting (XSS) via the SVG upload. An attacker can execute arbitrary JavaScript in the browsers of other users by uploading a crafted SVG file containing embedded scripts, which are rendered inline when viewed.

    How to fix Cross-site Scripting (XSS)?

    Upgrade nocodb to version 0.301.0 or higher.

    <0.301.0
    • M
    Prototype Pollution

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Prototype Pollution via the deepMerge() function in utils/dataUtils.ts file. An attacker can cause all database write operations to fail application-wide until the server is restarted by sending crafted requests to this endpoint.

    Note: This is only exploitable if the attacker is an authenticated user with org-level-creator permissions.

    How to fix Prototype Pollution?

    Upgrade nocodb to version 0.301.0 or higher.

    <0.301.0
    • L
    Server-side Request Forgery (SSRF)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) via the uploadViaURL function in the attachments.service.ts file. An attacker can trigger outbound requests to arbitrary URLs by supplying crafted input to the process before validation is enforced.

    How to fix Server-side Request Forgery (SSRF)?

    Upgrade nocodb to version 0.301.0 or higher.

    <0.301.0
    • M
    Cross-site Scripting (XSS)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Cross-site Scripting (XSS) through the password reset API endpoint /api/v1/db/auth/password/reset/. An attacker can execute scripts in the context of the user's browser session by convincing the user to follow a malicious link.

    How to fix Cross-site Scripting (XSS)?

    Upgrade nocodb to version 0.258.0 or higher.

    <0.258.0
    • H
    Cross-site Scripting (XSS)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Cross-site Scripting (XSS) via the replaceUrlsWithLink function. An attacker can execute arbitrary JavaScript code by embedding malicious content within the formula fields that are improperly sanitized before being displayed.

    How to fix Cross-site Scripting (XSS)?

    Upgrade nocodb to version 0.202.9 or higher.

    <0.202.9
    • M
    SQL Injection

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to SQL Injection through the columnList method. An attacker with create access can execute arbitrary SQL commands and potentially access or modify sensitive data by including a special character (') in the table name to manipulate the SQL query.

    How to fix SQL Injection?

    Upgrade nocodb to version 0.202.10 or higher.

    <0.202.10
    • M
    SQL Injection

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to SQL Injection via the triggerList function in SqliteClient.ts. An attacker can inject arbitrary SQL queries to be executed by supplying a specially crafted payload to the table_name parameter in the tableCreate endpoint. The attacker can reveal the data present in the database by using time-based payloads which would include a function to delay execution for a given number of seconds. The response time indicates whether the result of the query execution was true or false.

    Note:

    This is only exploitable if the attacker has creator permissions.

    How to fix SQL Injection?

    Upgrade nocodb to version 0.111.0 or higher.

    <0.111.0
    • M
    Improper Input Validation

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Improper Input Validation via the Add new table field. An attacker can cause a Denial of Service (DoS) by sending a specially crafted HTTP request.

    How to fix Improper Input Validation?

    Upgrade nocodb to version 0.96.0 or higher.

    <0.96.0
    • M
    Information Exposure

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Information Exposure due to missing verification in the SMTP plugin. Exploiting this vulnerability allows attackers to make requests to internal servers and read the contents.

    How to fix Information Exposure?

    Upgrade nocodb to version 0.91.7 or higher.

    <0.91.7
    • H
    Directory Traversal

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Directory Traversal allowing an unauthenticated attacker to access arbitrary files on the server by manipulating the path parameter of the /download route. This vulnerability could allow an attacker to access sensitive files and data on the server, including configuration files, source code, and other sensitive information.

    How to fix Directory Traversal?

    Upgrade nocodb to version 0.109.6 or higher.

    <0.109.6
    • H
    Denial of Service (DoS)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Denial of Service (DoS) due to allowing large characters to be inserted in the input field New Project.

    How to fix Denial of Service (DoS)?

    Upgrade nocodb to version 0.92.0 or higher.

    <0.92.0
    • H
    Server-side Request Forgery (SSRF)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) due to improper validation when importing CSV or Excel files via URL. Using this option, exploitation is possible by crafting the responseType parameter.

    How to fix Server-side Request Forgery (SSRF)?

    Upgrade nocodb to version 0.92.0 or higher.

    <0.92.0
    • H
    Privilege Escalation

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Privilege Escalation due to the existence of user references in webhook context.

    NOTE: This vulnerability has also been identified as: CVE-2022-2063

    How to fix Privilege Escalation?

    Upgrade nocodb to version 0.91.8 or higher.

    <0.91.8
    • H
    Privilege Escalation

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Privilege Escalation due to the existence of user references in webhook context.

    NOTE: This vulnerability has also been identified as: CVE-2022-2064

    How to fix Privilege Escalation?

    Upgrade nocodb to version 0.91.8 or higher.

    <0.91.8
    • M
    Cross-site Scripting (XSS)

    nocodb is a NocoDB

    Affected versions of this package are vulnerable to Cross-site Scripting (XSS) due to an improper sanitization of comment data.

    How to fix Cross-site Scripting (XSS)?

    Upgrade nocodb to version 0.91.9 or higher.

    <0.91.9