Yours Wallet
The AI review rates the findings as likely false positive, but the risk score (85/100) still counts them.
Analysis record
- Analysed
- 6 days ago
- Version
- v5.1.1
- Artifact
- SHA256 9BD…773
- Source
- Findings (non-IoC)
Is Yours Wallet safe?
Yours Wallet is a non-custodial wallet for BSV and 1Sat Ordinals. It keeps your keys on your own machine and talks to BSV chain services to show balances and broadcast transactions. Among the endpoints its code reaches are accountcontext.synccontext.services, its own account sync host, and bitcoinschema.org, a long-running BSV data project. The extension also injects a small provider script into pages so apps you visit can ask you to approve a payment.
Two kinds of flags came back. One is OBFUSCATION-LARGE_BASE64 in assets/crypto-CJQadA7Q.js, which is what encoded key material looks like inside a wallet's crypto bundle. The other is a supply-chain rule match on assets/crypto-CJQadA7Q.js.map, a sourcemap file that browsers only read when developer tools are open. If that match were live code, it would mean someone had hidden executable instructions inside a file that is not part of the running extension.
Most of the other alerts are not about the wallet at all. The scanner listed hundreds of "domains" such as action.app, bn.bn and aliases.prime, which are pieces of minified JavaScript read as if they were web addresses. The remaining obfuscation flags land on Vite build output, where minified functions and bundled libraries naturally look scrambled. The wallet's own code points at BSV services, and nothing in the findings shows it sending keys, cookies or browsing history anywhere.
Evidence ledger
Ranked by severity · findings with a source location link to the code viewer
YARA Rule Matches
21 rules| Severity | Rule | Hits | Files | Metadata |
|---|---|---|---|---|
| HIGH | supply chain sourcemap appended iife | 1 | assets/crypto-CJQadA7Q.js.map | - |
| LOW | LocalStorageShouldNotBeUsed | 6 | assets/index-BGtnOb43.js.mapbackground.js.mapbackground.js +3 more | - |
| LOW | Surtr | 1 | assets/sweep-tab-DfZyeOVm.js.map | - |
| LOW | ServerHostnameNotVerified | 4 | background.jsassets/crypto-CJQadA7Q.jsbackground.js.map +1 more | - |
| LOW | DebuggerStatementsShouldNotBeUsed | 1 | assets/index-BGtnOb43.js.map | - |
| LOW | SurtrStrings | 1 | assets/sweep-tab-DfZyeOVm.js.map | - |
| LOW | UsingCommandLineArguments | 4 | content.js.mapinject.js.mapbackground.js.map +1 more | - |
| LOW | credential env files | 14 | assets/crypto-CJQadA7Q.js.mapinject.js.mapassets/usbBackup-D7qitMRk.js.map +11 more | - |
| LOW | postinstall persistence mechanism | 15 | inject.jsassets/usb-tab-CUaFUFeI.js.mapassets/index-BGtnOb43.js +12 more | - |
| LOW | ServerCertificatesNotVerified | 2 | assets/crypto-CJQadA7Q.js.mapbackground.js.map | - |
| LOW | RedirectToUnknownPath | 1 | assets/index-BGtnOb43.js.map | - |
| LOW | postinstall file download | 18 | assets/sweep-tab-DfZyeOVm.js.mapassets/index-BGtnOb43.jsassets/main-C34ewjWZ.js.map +15 more | - |
| LOW | NoUseWeakRandom | 16 | assets/main-C34ewjWZ.js.mapassets/sweep-tab-DfZyeOVm.jsassets/index-BGtnOb43.js +13 more | - |
| LOW | credential generic tokens | 10 | assets/sweep-tab-DfZyeOVm.jsassets/crypto-CJQadA7Q.jscontent.js +7 more | - |
| LOW | postinstall crypto operations | 26 | assets/prompt-tab-DHOJRXAC.jsassets/cancelOrdLockListings-DewCcRUk.jsassets/crypto-CJQadA7Q.js +23 more | - |
| LOW | postinstall registry modification | 12 | assets/sweep-tab-DfZyeOVm.js.mapcontent.js.mapcontent.js +9 more | - |
| LOW | postinstall file manipulation | 20 | assets/prompt-tab-DHOJRXAC.jsassets/usb-tab-CUaFUFeI.js.mapassets/main-C34ewjWZ.js.map +17 more | - |
| LOW | postinstall network communication | 19 | assets/crypto-CJQadA7Q.jscontent.js.mapassets/main-C34ewjWZ.js.map +16 more | - |
| LOW | postinstall environment access | 9 | assets/prompt-tab-DHOJRXAC.jsassets/usbBackup-D7qitMRk.jsassets/main-C34ewjWZ.js +6 more | - |
| LOW | postinstall obfuscation | 18 | content.js.mapinject.js.mapassets/usbBackup-D7qitMRk.js.map +15 more | - |
| LOW | postinstall system command | 22 | assets/prompt-tab-DHOJRXAC.jsbackground.js.mapassets/usb-tab-CUaFUFeI.js.map +19 more | - |
Publisher Evidence
Limited evidencePublisher identity, store signals, distribution reach, and warning signals used for context. Treat this as supporting evidence, not a clean bill of health.
Chrome does not expose the same publisher verification data as IDE stores, so this score is deliberately conservative.
13 evidence rows available.
Finding Categories
YARA Rules Matched
21 rules(220 hits)Requested Permissions
5 permissionsAI Security Report
AI Security Review
Evidence context: threat category none; evidence quality moderate.
Yours Wallet is a non-custodial wallet for BSV and 1Sat Ordinals, published by [email protected] and installed by about 2,000 Chrome users. A wallet like this has to reach chain indexers and sync servers to display balances and broadcast transactions, so network calls from background.js are part of the job. The useful question is where those calls go.
The endpoint list shows how little of the alert volume is real. Most of the 1,103 IoC entries are not domains: action.app, action.no, aliases.prime, animation.play, bn.bn and bs.nextrequestmsecs-date.now are property access chains and a date expression lifted from minified JavaScript. The entries that read as actual hosts belong to the BSV services this wallet depends on, including bitcoinschema.org, bsvblockchain.tech, apicontext.services and accountcontext.synccontext.services. The last two sit on the .services top-level domain and look like the wallet's own API and account sync hosts. None of them resemble a search hijack domain, an ad exchange, or a page built to collect logins.
The obfuscation hits track the build output. OBFUSCATION-LARGE_BASE64 fires in assets/crypto-CJQadA7Q.js, assets/index-BGtnOb43.js and assets/sweep-tab-DfZyeOVm.js, which are Vite chunks where encoded key material, mnemonics and library payloads live. The same flag in inject.js and content.js matches the provider script a wallet injects into pages so that apps can request a signature. OBFUSCATION-FUNCTION_INDIRECT in background.js and assets/crypto-CJQadA7Q.js is what bundler function wrapping looks like after minification. The NET-FETCH and NET-SOCKET_IO entries in background.js, such as NET-SOCKET_IO-background.js-79742, describe a service worker holding a socket open to a sync backend so the wallet learns about new blocks and ordinals. The 219 code-smell results tag ordinary JavaScript patterns across bundled libraries and carry no weight here.
The strongest case against this reading is YARA--supply_chain_sourcemap_appended_iife in assets/crypto-CJQadA7Q.js.map. Appending an IIFE after the JSON in a sourcemap is a real technique in npm supply-chain compromises, because injected code hides in a file reviewers skim past. In this build the match sits in a .map file, which browsers load only when developer tools are open and which the extension never executes. A payload that cannot run is an odd thing to hide inside a wallet that holds private keys. Comparing assets/crypto-CJQadA7Q.js.map against the upstream Yours Wallet repository would confirm whether the appended block comes from the build pipeline.
One gap affects confidence. The manifest scan recorded no permissions and no host permissions, which a wallet of this type cannot operate without. That reads as a parsing miss rather than a stripped manifest, and it leaves what the extension can reach less clear than the source itself.
Key Reasons
- Published by a named developer ([email protected]) as an open-source non-custodial BSV wallet, with no attempt to mimic a popular extension's name, icon or brand.
- The 1,103 IoC entries are dominated by property-access chains and expressions misread as domains, including action.app, aliases.prime and bs.nextrequestmsecs-date.now.
- Real endpoints resolve to BSV infrastructure the wallet needs: bitcoinschema.org, bsvblockchain.tech, apicontext.services and accountcontext.synccontext.services.
- Obfuscation flags sit on Vite build artifacts in assets/ plus inject.js and content.js, matching base64 key material and a page-injected provider script rather than a hidden payload.
- The single high-severity YARA hit is on assets/crypto-CJQadA7Q.js.map, a sourcemap that is never executed at runtime.
False Positive Considerations
- IoC extractor parsed minified JavaScript property chains as network domains (action.app, bn.bn, aliases.prime, animation.play)
- Vite/Rollup minified chunks trigger LARGE_BASE64 and FUNCTION_INDIRECT obfuscation rules on crypto and library code
- 219 code-smell hits generated by bundled third-party libraries
- Supply-chain sourcemap rule fired on a .map file that no runtime path loads
Reviewed 2026-10-12; recommended action: monitor; model confidence 75%.
Chrome version history
Risk trend by version
7 analyzed versions. Each point is the latest successful scan for that version; failed zero-score scans are hidden. Dates are based on first seen by risky plugins.
Pick any point on the chart to explore that version's code below.
Source Code Not Available
Source code is not available for this version of the extension.
About This Extension
Frequently Asked Questions
Similar Extensions
Related extensions from the same publisher or marketplace
种草星球-TikTok爆单神器,商品自动提报采集邀评【永久免费】
[email protected]
Kindredly - A safer, private web for families
[email protected]
Open Headers
[email protected]
100xBot
[email protected]
Rook
[email protected]
LinkVault Professional
[email protected]