Over 12,000 customer organizations and their respective clients
Security firm Sansec has uncovered a critical, long-term security failure at ConnectPOS, a cloud-based point-of-sale (POS) software provider. For over four years, the company publicly exposed a GitHub Personal Access Token (PAT) with full administrative rights to its private code repositories. The token was hardcoded into a curl command in the company's public installation guides. This error effectively handed the keys to their software kingdom to anyone who found it, creating a catastrophic supply chain risk for its more than 12,000 customers, which include high-profile organizations like Asus and Indiana University. An attacker could have used this token to secretly inject malicious code into the core POS product, potentially turning every customer's payment terminal into a credit card skimmer. The token was revoked on January 6, 2026, after Sansec's disclosure.
The security lapse began in September 2021 when ConnectPOS included a PAT in its public-facing developer documentation. The token was part of a command-line instruction for customers to download software modules. The critical mistake was twofold:
This meant that anyone who discovered the token could not only view the proprietary source code but also modify it. An attacker could have stealthily committed malicious code (T1195.002), such as a Magecart-style payment skimmer, which would then be automatically distributed to all customers as part of a routine software update.
The exposure went undetected for over four years, highlighting a significant gap in the company's security practices and potentially in GitHub's default security settings, as secret scanning for private repositories is not always enabled on free plans.
This incident represents a near-miss for a potentially devastating supply chain attack. Had a malicious actor discovered and abused this token, the impact would have been severe:
It is currently unknown if any threat actors discovered the token during its four-year exposure. ConnectPOS customers are advised to audit their systems for any signs of compromise.
This type of vulnerability is preventative and often found through auditing rather than runtime detection.
D3-SFA: System File Analysis.ConnectPOS took the correct immediate step by revoking the leaked token on the same day it was reported.
For ConnectPOS and other software vendors:
D3-UAP: User Account Permissions.For ConnectPOS Customers:
Implementing secure software development lifecycle (SSDLC) practices, including never hardcoding secrets in source code or documentation.
Mapped D3FEND Techniques:
Strictly applying the principle of least privilege to all access tokens, ensuring they have only the minimum permissions necessary for their function.
Mapped D3FEND Techniques:
To prevent catastrophic secret leaks like the ConnectPOS incident, software vendors must integrate automated secret scanning into their CI/CD pipeline. This form of System File Analysis should be configured to run on every code commit and pull request across all repositories, including documentation. Tools like GitHub's native secret scanning, GitGuardian, or TruffleHog can automatically detect high-entropy strings and patterns matching API keys, private keys, and Personal Access Tokens. When a secret is detected, the build should fail automatically, and an immediate alert should be sent to the security team. This creates an automated guardrail that prevents developer mistakes, like hardcoding a PAT into a public document, from becoming a four-year-long critical vulnerability.
This incident was made critical by the excessive permissions of the leaked token. The principle of least privilege is a vital countermeasure. When creating any access token, especially one for customer use, its permissions must be scoped down to the absolute minimum required. In this case, the GitHub PAT was used for customers to download software modules, a task that only requires read-only access. By creating a read-only token, ConnectPOS would have ensured that even if the token were leaked, an attacker could not modify the source code. All organizations must have a strict policy and review process for the creation of any privileged credential, ensuring that 'full admin' or 'full repo scope' permissions are granted only when absolutely necessary and for short-lived, internal tasks.

Cybersecurity professional with over 10 years of specialized experience in security operations, threat intelligence, incident response, and security automation. Expertise spans SOAR/XSOAR orchestration, threat intelligence platforms, SIEM/UEBA analytics, and building cyber fusion centers. Background includes technical enablement, solution architecture for enterprise and government clients, and implementing security automation workflows across IR, TIP, and SOC use cases.
Help others stay informed about cybersecurity threats