Malicious code in dt-validator (PyPI)
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (b0dd6dc392ad68861c938e7798773adf5359c835743e711a834d84221b481bdf) The package's top-level public API `dt_validator.validate()` — colocated in `__all__` with legitimate helpers `validate_extension`, `validate_size`, and `validate_checksum` — unconditionally issues an HTTP request to a hardcoded `https://file-api.free.beeceptor.com` endpoint (a shared public HTTP-mock service on the free-tier subdomain, not publisher-controlled infrastructure), then `compile()`s the response body and `exec()`s it in the CALLER's module globals, obtained via `inspect.currentframe().f_back.f_globals` (see `api_client.py` `DEFAULT_API_ENDPOINT` and `validate_data(..., allow_exec=True, namespace=caller_globals)`). Endpoint names on beeceptor's free shared subdomain are not authenticated to the maintainer — anyone who claims or has claimed that endpoint name can serve arbitrary Python that runs with the caller's identity and full access to the caller's module namespace. The README further documents a different default host (`file-read.free.beeceptor.com`) than the code actually contacts (`file-api.free.beeceptor.com`), so a developer auditing README does not see the destination the code reaches. Execution is not install-time or import-time — a caller must invoke `validate()` — but the API name and colocation are engineered to be hit by a developer who thinks they are calling an input validator. No installer-secret reads, no lifecycle hooks, and no other exfil/backdoor mechanisms are present. Routing to human review: the remote-exec-into-caller-globals surface via an unowned shared mock host is a real risk to consumers who call `validate()`, but harm requires the developer to invoke the API rather than firing on `pip install`/import. ## Source: kam193 (0fc0256380d811cdce05ffa9c3644a5f7e4ebd6f7acfce0f955935b42449b17a) Code contains a function to execute remote code, which at the time of analysis was extracting the "auth_user" table from Django DB. The remote code execution is partially documented and disguised with multiple warnings, but a) the 'convenience function' uses a hardcoded endpoint and loads results to the global namespace, b) the warnings are silenced by default. --- Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers. Campaign: 2026-06-dt-validator Reasons (based on the campaign): - Downloads and executes a remote malicious script. - action-hidden-in-lib-usage
AI Analysis
Technical Summary
The dt-validator PyPI package version 0.3.0 includes a function that executes remote code by downloading a malicious script from a hardcoded endpoint. This script extracts sensitive data from the Django "auth_user" database table and loads it into the global namespace. The malicious code is partially documented but obscured by silenced warnings, facilitating stealthy execution. This is a clear case of a malicious package designed to steal information rather than a conventional software vulnerability.
Potential Impact
The malicious code can lead to unauthorized data exfiltration from Django applications using this package, specifically exposing user authentication data. This compromises confidentiality and potentially the integrity of the affected system. Since the package executes remote code, it could also be used as a foothold for further attacks.
Mitigation Recommendations
No official patch or remediation is currently documented. Users should immediately remove the dt-validator package version 0.3.0 from their environments and avoid using this package. Verify dependencies to ensure this malicious package is not included transitively. Monitor for updates from the package repository or security advisories for any official remediation.
Malicious code in dt-validator (PyPI)
Description
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (b0dd6dc392ad68861c938e7798773adf5359c835743e711a834d84221b481bdf) The package's top-level public API `dt_validator.validate()` — colocated in `__all__` with legitimate helpers `validate_extension`, `validate_size`, and `validate_checksum` — unconditionally issues an HTTP request to a hardcoded `https://file-api.free.beeceptor.com` endpoint (a shared public HTTP-mock service on the free-tier subdomain, not publisher-controlled infrastructure), then `compile()`s the response body and `exec()`s it in the CALLER's module globals, obtained via `inspect.currentframe().f_back.f_globals` (see `api_client.py` `DEFAULT_API_ENDPOINT` and `validate_data(..., allow_exec=True, namespace=caller_globals)`). Endpoint names on beeceptor's free shared subdomain are not authenticated to the maintainer — anyone who claims or has claimed that endpoint name can serve arbitrary Python that runs with the caller's identity and full access to the caller's module namespace. The README further documents a different default host (`file-read.free.beeceptor.com`) than the code actually contacts (`file-api.free.beeceptor.com`), so a developer auditing README does not see the destination the code reaches. Execution is not install-time or import-time — a caller must invoke `validate()` — but the API name and colocation are engineered to be hit by a developer who thinks they are calling an input validator. No installer-secret reads, no lifecycle hooks, and no other exfil/backdoor mechanisms are present. Routing to human review: the remote-exec-into-caller-globals surface via an unowned shared mock host is a real risk to consumers who call `validate()`, but harm requires the developer to invoke the API rather than firing on `pip install`/import. ## Source: kam193 (0fc0256380d811cdce05ffa9c3644a5f7e4ebd6f7acfce0f955935b42449b17a) Code contains a function to execute remote code, which at the time of analysis was extracting the "auth_user" table from Django DB. The remote code execution is partially documented and disguised with multiple warnings, but a) the 'convenience function' uses a hardcoded endpoint and loads results to the global namespace, b) the warnings are silenced by default. --- Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers. Campaign: 2026-06-dt-validator Reasons (based on the campaign): - Downloads and executes a remote malicious script. - action-hidden-in-lib-usage
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The dt-validator PyPI package version 0.3.0 includes a function that executes remote code by downloading a malicious script from a hardcoded endpoint. This script extracts sensitive data from the Django "auth_user" database table and loads it into the global namespace. The malicious code is partially documented but obscured by silenced warnings, facilitating stealthy execution. This is a clear case of a malicious package designed to steal information rather than a conventional software vulnerability.
Potential Impact
The malicious code can lead to unauthorized data exfiltration from Django applications using this package, specifically exposing user authentication data. This compromises confidentiality and potentially the integrity of the affected system. Since the package executes remote code, it could also be used as a foothold for further attacks.
Mitigation Recommendations
No official patch or remediation is currently documented. Users should immediately remove the dt-validator package version 0.3.0 from their environments and avoid using this package. Verify dependencies to ensure this malicious package is not included transitively. Monitor for updates from the package repository or security advisories for any official remediation.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- MAL-2026-6728
- Osv Schema Version
- 1.7.4
- Aliases
- []
- Ecosystems
- ["PyPI"]
- Database Specific Severity
- null
- Cvss Version
- null
Threat ID: 6a46ecc427e9c7971943d798
Added to database: 07/02/2026, 22:57:08 UTC
Last enriched: 07/02/2026, 23:17:35 UTC
Last updated: 07/24/2026, 04:11:00 UTC
Views: 25
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.