Ctrl Wallet Chrome extension icon

Ctrl Wallet

🔍 Security Report Available
👥 300K+ users
📦 v36.9.1
💾 71.55MiB
📅 2026-02-13
View on Chrome Web Store

Chrome will indicate if you already have this installed.

Lets you manage your cryptocurrency assets across multiple networks and thousands of tokens in a secure, universal wallet. Suitable for crypto enthusiasts and investors who need to track their holdings across various blockchain platforms. Benefits most those looking for a centralized hub to monitor and organize their digital assets.

Overview

Ctrl is the only wallet you need to manage cryptocurrencies and NFTs across 2,500+ blockchains.

■ Get Started Instantly
Set up your Ctrl Wallet in seconds with email or social logins—no need to use seed phrases or private keys.

■ Effortless Wallet Import
Easily import all your existing wallets from multiple blockchains in seconds.

■ Every Asset and NFT on Every Chain
Manage every crypto asset and NFT across 2,500+ blockchains. Ctrl Wallet ensures everything is at your fingertips.

■ Simplified Gas Management
Say goodbye to gas fee headaches! Deposit USDC into your Gas Tank, and Ctrl Wallet will automatically handle gas payments across major chains. Focus on what matters—your portfolio.

■ Security You Can Trust
Ctrl Wallet has been rigorously audited by FYEO and has operated without incident for over four years. Your seed phrases, private keys, passwords, and sensitive data remain 100% private—accessible only to you.

It's time to take Ctrl.

Connect with us:
Twitter: @ctrl_wallet
Discord: https://discord.gg/ctrlwallet
Website: https://ctrl.xyz/

Tags

Productivity/workflow productivity/workflow

Privacy Practices

Not being sold to third parties, outside of the approved use cases
Not being used or transferred for purposes that are unrelated to the item's core functionality
Not being used or transferred to determine creditworthiness or for lending purposes
v36.9.1 Critical Scanned Feb 22, 2026

Security Analysis — Ctrl Wallet

Analyzed v36.9.1 · Feb 22, 2026 · 125 JS files · 257187 KB scanned

Permissions

storage scripting activeTab tabs commands https://*/* http://*/*

Code Patterns Detected

eval() used — can execute arbitrary code innerHTML assignment — potential XSS vector Long hex-encoded string — obfuscation indicator Makes HTTP requests Listens to keyboard events Reads clipboard content

External Connections

github.com www.apollographql.com www.rfc-editor.org www.w3.org rpc-proxy.xdefi.services eips.ethereum.org eprint.iacr.org en.wikipedia.org feross.org floating-ui.com developer.mozilla.org docs.swmansion.com +8 more

Package Contents 301 files · 257MB

📁_locales
📁en
{}messages.json243B
📁_metadata40KB
{}verified_contents.json40KB
📁static132.5MB
📁background132.5MB
📜index.js132.5MBlarge
📁tabs1.4MB
📜dapp-window.5161a8ce.js18KB
🌐dapp-window.html961B
📜onboarding.721f23e9.js1.4MBlarge
🎨onboarding.7d106ff7.css284B
🌐onboarding.html860B
📜Ada.7b31bcfe.js12KB
📜Btc.0c8355b0.js265KBlarge
📜Btc.8d8333b4.js42KB
📜Btc.cc9f46c8.js209KBlarge
🖼CTRL_keyboard_01_v005_BG.75729688.png317KB
🖼CTRL_keyboard_01_v005_BeginYourCryptoJourney.311f7b1b.png55KB
🖼CTRL_keyboard_01_v005_BeginYourCryptoJourney_Pressed.507263f7.png37KB
🖼CTRL_keyboard_01_v005_Bridge.5c866c30.png32KB
🖼CTRL_keyboard_01_v005_Bridge_Pressed.503f9541.png17KB
🖼CTRL_keyboard_01_v005_Buy.ad666c38.png27KB
🖼CTRL_keyboard_01_v005_Buy_Pressed.54885489.png17KB
🖼CTRL_keyboard_01_v005_CTRL.b115012a.png28KB
🖼CTRL_keyboard_01_v005_CTRL_Pressed.af8bd27a.png9KB
🖼CTRL_keyboard_01_v005_DarkMode_BG.f211dafe.png248KB
🖼CTRL_keyboard_01_v005_DarkMode_BeginYourCryptoJourney.808b5e74.png35KB
🖼CTRL_keyboard_01_v005_DarkMode_BeginYourCryptoJourney_Pressed.25e527bb.png25KB
🖼CTRL_keyboard_01_v005_DarkMode_Bridge.c43fc47b.png20KB
🖼CTRL_keyboard_01_v005_DarkMode_Bridge_Pressed.2fb94ef1.png12KB
🖼CTRL_keyboard_01_v005_DarkMode_Buy.7457b612.png20KB
🖼CTRL_keyboard_01_v005_DarkMode_Buy_Pressed.75e8fbcc.png17KB
🖼CTRL_keyboard_01_v005_DarkMode_CTRL.0407ec20.png12KB
🖼CTRL_keyboard_01_v005_DarkMode_CTRL_Pressed.7899c465.png7KB
🖼CTRL_keyboard_01_v005_DarkMode_Mint.d6e38af7.png22KB
🖼CTRL_keyboard_01_v005_DarkMode_Mint_Pressed.0d9e8e20.png12KB
🖼CTRL_keyboard_01_v005_DarkMode_Recieve.c42bed9e.png11KB
🖼CTRL_keyboard_01_v005_DarkMode_Recieve_Pressed.1572cfcc.png7KB
🖼CTRL_keyboard_01_v005_DarkMode_Send.4a57b0bb.png15KB
🖼CTRL_keyboard_01_v005_DarkMode_Send_Pressed.b4acea33.png5KB
🖼CTRL_keyboard_01_v005_DarkMode_Swap.be6241e1.png24KB
🖼CTRL_keyboard_01_v005_DarkMode_Swap_Pressed.ba55c07b.png11KB
🖼CTRL_keyboard_01_v005_Mint.501472de.png39KB
🖼CTRL_keyboard_01_v005_Mint_Pressed.03027eb9.png17KB
🖼CTRL_keyboard_01_v005_Recieve.2cdc85cd.png17KB
🖼CTRL_keyboard_01_v005_Recieve_Pressed.4ba96a65.png13KB
🖼CTRL_keyboard_01_v005_Send.e4935f10.png19KB
🖼CTRL_keyboard_01_v005_Send_Pressed.a1ce58ac.png8KB
🖼CTRL_keyboard_01_v005_Swap.9fbea793.png42KB
🖼CTRL_keyboard_01_v005_Swap_Pressed.a473b71e.png19KB
📜ComingSoonDark.5b9320a8.js13KB
📜ComingSoonLight.ed3a3ade.js13KB
📜Controller_v008.104e890b.js2.2MBlarge
📜CreateWallet_v008.247072f5.js7MBlarge
📜DotsFailed.0dcaaa7b.js27KB
📜DotsGreen.13ee8c9e.js29KB
📜DotsIntro.552c27c1.js9KB
📜DotsLoaded.b38a6947.js23KB
🖼EmptySwapTokenStateForChain.11eb0530.svg9KB
📜Eth.03fdbd62.js6.5MBlarge
📜Eth.ee15838f.js6.9MBlarge
📜ExplorePage.02dfdacf.js3KB
📜ExportWalletPage.70698f1e.js55KBlarge
📜ExportWalletPage.c12f3093.js22KB
📜Extension-Mobile-Transfer_Rive.22ca23bd.js29KB
📜GasTank_001.46ad9d27.js5MBlarge
📜GasTank_001_DarkMode.b4aa2cc3.js4.9MBlarge
📜GasTank_001_DarkMode_Iddle.1b19f90e.js6KB
📜GasTank_001_Iddle.c9c0c61d.js8KB
📜Glacier_Transition_001.1da6e7e2.js22KB
📜GlobalActivityScreen.08ec2f07.js845KBlarge
📜GlobalActivityScreen.db9cf2c1.js30KB
📜Loading_v003.c603154a.js5.6MBlarge
📜Pink_002.acf0110f.js5KB
📜PopupScreen.6d98e8ec.js2KB
📜RealRoot.3787662d.js55KBlarge
📜RealRoot.997358ed.js129KBlarge
📜RealRoot.ce322a34.js703KBlarge
📜RealRoot.e9703a1d.js23KB
🖼ReassuranceCreateWalletOrAccountIcons.9c7ad4a6.svg2KB
🖼ReassuranceImportWalletOrAccountIcons.362c6a28.svg2KB
📜SendAcceptedIcon.d533e6dd.js4KB
📜SendAcceptedLines.84fc9fba.js6KB
📜SendFailledIcon.b48c6403.js5KB
📜SendFailledLines.7dad08df.js6KB
📜SendLoading.eb9ddd97.js4KB
📜SendSquaredAcceptedIcon.a2e3ce72.js4KB
📜SendSquaredFailedIcon.46e8c45c.js5KB
📜SendSquaredLinesAccepted.7760dcb0.js6KB
📜SendSquaredLinesFailed.251d8059.js6KB
📜SendSquaredLoading.447c9d4b.js4KB
📜SettingsPage.84e676cc.js12KB
🔤TomatoGrotesk-Bold.5c490c28.otf161KB
🔤TomatoGrotesk-ExtraBold.9ae82d80.otf160KB
🔤TomatoGrotesk-Medium.db00c160.otf159KB
🔤TomatoGrotesk-Regular.2daa8765.otf148KB
📜TransportWebHID.20e1f7f9.js20KB
📜TransportWebHID.26b73af1.js29KB
📜TransportWebHID.3c024800.js25KB
📜TransportWebHID.6ade7175.js15KB
📜TransportWebHID.bcca2a59.js30KB
📜TransportWebHID.c7aee5b8.js20KB
📜Unlock_Intro_001.c4a1b1ff.js2MBlarge
📜Unlock_White.211b41bf.js2MBlarge
📜Yellow_002.d252d30f.js5KB
🖼ajax-loader.94271eca.gif4KB
🖼alertIcon.07b6ac5c.svg410B
🖼android.92912447.svg1KB
🖼apple.4c69fecc.svg505B
🖼baseInfoFilled.430103e3.svg267B
🖼baseSuccessFilled.287dcd1e.svg312B
📜bitcoin.controller.180acb15.js32KB
📜bitcoin.controller.8336647e.js619KBlarge
📜bitcoincash.controller.e83aee6e.js642KBlarge
🖼bringPortfolio.f080d956.svg40KB
🖼campaigns.81df0920.svg34KB
📜cardano.controller.aafcce13.js923KBlarge
🖼cardanoCard.7ae72566.svg227KB
📜ccip.313be0de.js150KBlarge
🖼chainFile.c5c4d66c.svg45KB
📜config.3cc50316.js110KBlarge
📜config.5be1dbe8.js233KBlarge
📜config.665e5aed.js26KB
📜config.79e03c7f.js15KB
📜config.b223e1f5.js9KB
📜config.cc947884.js39KB
📜config.e8d8e094.js19KB
🖼confirmRecoveryIcon.6325ff57.svg2KB
🖼connectChain.195ce135.svg3KB
🖼connectLedger.e2ac37d0.svg4KB
🖼connectTrezor.85b6fd7d.svg2KB
📜cosmos.controller.9cc4068d.js6.2MBlarge
📜cosmos.controller.9eaa1302.js60KBlarge
🖼ctrlDark.6e3e83ca.svg918B
🖼ctrlUsdc.20e94102.svg6KB
🖼ctrlUsdcDark.b2d04193.svg6KB
🖼dAppDiscounts.b1dd84f7.svg37KB
🖼dAppsEmpty.0b78621e.svg2KB
🖼dAppsEmptyDark.7b7df3bd.svg2KB
📜dapps-2.eb1a9420.js706KBlarge
📜dapps_DarkMode-2.9fac76af.js1.1MBlarge
📜doge.controller.5f3268ed.js17KB
📜doge.controller.785f3d50.js23KB
📜doge.controller.e17c523a.js22KB
📜doge.controller.effdb776.js578KBlarge
🖼empty-state-illustrations-dark.33f4152c.svg3KB
🖼empty-state-illustrations.68feea59.svg3KB
📜esm.65b116dd.js59KBlarge
📜esm.741e2600.js2.7MBlarge
📜esm.90b9292b.js177KBlarge
📜esm.bbf3ea77.js13KB
📜esm.ed631b16.js14KB
📜esm.f0655a17.js287KBlarge
📜esm.f8b1c92d.js2.4MBlarge
🖼eth.fb84eb42.svg913B
🖼extensionStep1CoinBase.cf8d0051.png44KB
🖼extensionStep1Keplr.189f85d2.png13KB
🖼extensionStep1MetaMask.e3d03268.png40KB
🖼extensionStep1Phantom.2ad65ba5.png14KB
🖼extensionStep1TrustWallet.418a7b6b.png30KB
🖼extensionStep2CoinBase.5e307c88.png13KB
🖼extensionStep2Keplr.39914a3a.png67KB
🖼extensionStep2MetaMask.66b20565.png26KB
🖼extensionStep2Phantom.3a8a3d6a.png10KB
🖼extensionStep3Phantom.260240b3.png20KB
🖼extensionStep4Phantom.a3b42d9d.png17KB
🖼extentionStep2TrustWallet.acc54e0b.png22KB
🖼gerryPeeking.a8c57c2e.svg81KB
🖼hardwareDevices.be2811c0.svg3KB
🖼icon-connected_48.46343929.png3KB
🖼icon-connected_48.75472e24.png3KB
🖼icon-pending_48.31bef995.png3KB
🖼icon-pending_48.f5364fcf.png3KB
🖼icon128.plasmo.3c1ed2d2.png7KB
🖼icon16.plasmo.6c567d50.png665B
🖼icon32.plasmo.76b92899.png2KB
🖼icon48.plasmo.aced7582.png2KB
🖼icon64.plasmo.8bb5e6e0.png3KB
🖼iconPhantomAlternative.773617ef.svg734B
🖼icon_48.17ed145e.png2KB
🖼icon_48.ec977955.png2KB
🖼importFailedBanner.302aa112.svg2KB
🖼importSuccessBanner.c3a14190.svg2KB
📜index.browser.esm.76593d10.js257KBlarge
📜index.browser.esm.95142ada.js269KBlarge
📜index.umd.70d2b74e.js309KBlarge
🖼infoIcon.040c227d.svg423B
📜inpage.68f9dbfe.js15.3MBlarge
📜isolated.83568cd4.js7KB
📜ledger.49d9094c.js272KBlarge
📜ledger.53d3718e.js8.3MBlarge
📜ledger.62cb878d.js123KBlarge
📜ledger.7d3c7ae8.js12KB
📜ledger.85b3a2de.js12KB
📜ledger.b5c885ce.js341KBlarge
📜ledger.b76f8a23.js76KBlarge
📜ledger.ff8e4f3a.js455KBlarge
📜ledger.getAppAndVersion.92148065.js4KB
📜ledger.hardware.11a74600.js72KBlarge
📜ledger.hardware.1c72ff5f.js45KB
📜ledger.hardware.2964fcc8.js3.8MBlarge
📜ledger.hardware.399d72e3.js406KBlarge
📜ledger.hardware.3b0182ae.js13KB
📜ledger.hardware.4395f696.js368KBlarge
📜ledger.hardware.5a19a5d9.js87KBlarge
📜ledger.hardware.651d3b40.js140KBlarge
📜ledger.hardware.d698b2c4.js39KB
📜ledger.hardware.edd9175c.js182KBlarge
📜ledger.hardware.fe2fe9b1.js44KB
🖼ledgerConnectType.f407dbbc.svg3KB
🖼ledgerConnected.53baa34b.png4KB
🖼ledgerWallet.1382a7ee.svg4KB
🖼ledgerWalletNoShadow.a94e9668.svg4KB
📜litecoin.controller.0bcc4466.js558KBlarge
🖼loadingMock.6ce60fa1.svg2KB
🖼logoAster.428f3e4e.svg5KB
🖼logoCoinBaseAlternative.40b66fc2.svg702B
🖼logoCtrl-white.6422b276.svg1KB
🖼logoCtrl.91312e9d.svg1KB
🖼logoCtrlBorder.270b8924.svg2KB
🖼logoCtrlWallet.83c77c30.svg1KB
🖼logoDApps.1bd22949.svg37KB
🖼logoEmail.ebc883db.svg392B
🖼logoGMX.2a7421c9.svg4KB
🖼logoGoogle.a205dcba.svg594B
🖼logoHyperliquid.bc3a1095.svg7KB
🖼logoLeodex.465726bb.svg15KB
🖼logoMetaMask.db6252f3.svg2KB
🖼logoMoonpay.75459f08.svg5KB
🖼logoNews.c51d7db1.svg840B
🖼logoRPay.426f7948.svg473B
🖼logoRango.416288bc.svg12KB
🖼logoRevolut.3d6ba9cc.svg2KB
🖼logoSushiswap.43ec2f7c.svg7KB
🖼logoThorSwap.97f447b9.svg9KB
🖼logoTypoCtrl.fbbab797.svg2KB
🖼logoTypoCtrlWhite.fcc25665.svg2KB
🖼logoX.87c89379.svg680B
🖼logosGroupSocialImport.dea3166f.svg2KB
{}manifest.json2KB
midnight_zswap_wasm_bg.41c27aab.wasm2.3MB
🖼mobileStep1CoinBase.76720fad.png35KB
🖼mobileStep1Keplr.d6503aac.png84KB
🖼mobileStep1MetaMask.abaf160d.png20KB
🖼mobileStep1Phantom.8db06c1b.png48KB
🖼mobileStep1TrustWallet.5f94be5a.png12KB
🖼mobileStep1Zerion.eda9ed7f.png46KB
🖼mobileStep2CoinBase.6557eab9.png22KB
🖼mobileStep2Phantom.56264ee6.png19KB
🖼mobileStep2TrustWallet.d6ec067d.png15KB
🖼mobileStep3MetaMask.a092822d.png22KB
🖼mobileStep3TrustWallet.420dac22.png25KB
🖼mobileStep3Zerion.ee7ab1bf.png32KB
🖼mobileStep4Keplr.326bdc60.png65KB
🖼mobileStep4MetaMask.adc21aed.png28KB
📜moonpay-web-sdk.min.js31KB
🖼nftSearchPlaceholder.9bca6676.svg2KB
🖼noAccountImage.77733f8f.svg4KB
🖼noActivityImage.ed8c41c8.svg3KB
🖼noActivityImageDark.441e25ec.svg3KB
🖼noNFTsImage.22ed2fe5.svg3KB
🖼noNFTsImageDark.150cfb59.svg3KB
🖼noTokensAlternative.542082bc.svg6KB
🖼noTokensDark.1affd7a0.svg6KB
🖼noTokensImage.5d4ed8d7.svg1KB
🎨options.0905e39a.css5KB
📜options.5018d11f.js19.7MBlarge
🎨options.854b3a1b.css16KB
📜options.95eda3f3.js28KB
🌐options.html546B
🖼phraseImportLine1.4cd41990.svg15KB
🖼phraseImportLine1Highlighted.09106df7.svg15KB
🖼phraseImportLine2.bdb9a847.svg17KB
🖼phraseImportLine2Highlighted.c98d1aab.svg17KB
🖼pinIcon.7665b260.svg874B
📜popup.100f6462.js23KB
📜popup.9ee980a8.js31KB
🌐popup.html498B
🖼promoAster.82f2a7b3.svg6KB
🖼promoGasTank.6a753446.svg23KB
🖼promoSwap.27d278a1.svg4KB
🖼puzzleIcon.8d75cf74.svg446B
📜routes.6502e13c.js118KBlarge
📜routes.9d61edcc.js1.2MBlarge
📄slick.a220dbc1.eot2KB
🔤slick.afff28b1.ttf2KB
🔤slick.d547aa1e.woff1KB
🖼slick.f98a84ff.svg2KB
📜solana.controller.3ee1f8f3.js1.2MBlarge
🖼successFillledDarkGreenIcon.f5e66fc2.svg326B
📜thorchain.controller.08c436f5.js269KBlarge
📜trezor.88419aef.js11KB
📜trezor.hardware.2dfc62d7.js80KBlarge
📜trezor.hardware.46bc7b8c.js5KB
📜trezor.hardware.ba93a6c2.js28KB
📜trezor.hardware.d2268237.js123KBlarge
📜trezor.hardware.ee65e0fb.js27KB
🖼trezorConnectType.88b832f1.svg713B
📜tron.controller.0a44fbff.js898KBlarge
📜tron.controller.ecff5fbd.js208KBlarge
🖼updateAvailableBg.84696908.svg81KB
🖼updateAvailablePeepo.68e70af8.png13KB
🖼usdc.038212e6.svg2KB
🖼utility.1ac04043.svg3KB
🖼web3authLogo.ce1bbefd.svg6KB

What This Extension Does

Ctrl Wallet is a browser extension that allows users to manage cryptocurrency assets and NFTs across multiple blockchains.

Permissions

  • storageexpected: This lets the extension save your wallet data, settings, and preferences locally in your browser. It's necessary for remembering your accounts and configurations.
  • scriptingexpected: This permission allows the extension to inject scripts into web pages. It's needed for interacting with blockchain interfaces and dApps on websites.
  • activeTabexpected: This lets the extension access and modify the currently active tab's content when you interact with it directly (like clicking a button). It helps integrate with web pages for wallet actions.
  • tabsexpected: This lets the extension view and manage your browser tabs—useful for switching between wallets or tracking which sites you're visiting.
  • commandsexpected: This allows the extension to respond to keyboard shortcuts set by the user, such as opening the wallet panel quickly.
  • https://*/*expected: This gives the extension broad access to all HTTPS websites, allowing it to interact with any secure site—needed for connecting to blockchain networks and dApps. ⚠ 1
  • http://*/*expected: This gives the extension access to any HTTP website—useful for older or non-secure web apps, but also increases risk if those sites are untrusted. ⚠ 1

Your Data

The extension can access your browsing data and send information to external servers for blockchain interaction and analytics. It may collect details about the websites you visit, especially those related to crypto or finance.

Code Findings

Use of eval() functionHigh

The extension uses a JavaScript function called 'eval' that can run code dynamically. While sometimes necessary, it's risky because malicious actors could inject harmful commands if they gain control over the input.

💡 Commonly found in extensions that dynamically process configuration or API responses where dynamic evaluation is needed for flexibility.

innerHTML assignmentMedium

The extension assigns HTML content directly to page elements. If this content comes from an untrusted source, it could lead to cross-site scripting (XSS) vulnerabilities.

💡 Used for rendering UI components dynamically, often seen in extensions that build rich interfaces using templating engines.

Long hex-encoded stringHigh

The extension contains a very long encoded string—this is often used to hide code or data within the source. It could be hiding malicious behavior.

💡 Used in minified code to reduce file size but not typically for hiding malicious behavior unless combined with other indicators.

Keyboard event listenerHigh

The extension listens for keyboard events, which could allow it to capture keystrokes or intercept user input—especially dangerous if used in phishing attempts.

💡 Used for implementing shortcuts or hotkeys within the extension itself; however, in this case it appears to be listening globally.

Clipboard read accessMedium

The extension can read what's on your clipboard. While useful for some functions like pasting wallet addresses, it could also be misused to steal copied data.

💡 Common in extensions that need to paste wallet addresses or tokens into forms automatically.

Trustworthiness

  • Developer: Developer name is missing from the Chrome Web Store listing; no clear company or contact information provided.
  • Privacy Policy: No privacy policy link visible in the extension metadata or description on CWS.
  • Install Base: Installed by 300K+ users with recent updates suggesting ongoing maintenance.
Bottom Line

This extension appears consistent with its purpose, but the presence of eval(), global keyboard listeners, and long hex-encoded strings raises concerns about potential misuse or hidden functionality. Users should exercise caution when installing it.

Extension Overview

Ctrl Wallet is a browser extension that allows users to manage cryptocurrency assets and NFTs across multiple blockchains.

Permissions

  • storageexpected: Exposes Chrome's storage API allowing read/write access to persistent key-value pairs (sync or local). An attacker with control over this could potentially extract saved credentials, account info, or session tokens if the extension is compromised.
  • scriptingexpected: Grants access to Chrome's scripting APIs (e.g., executeScript, insertCSS) which can run arbitrary JavaScript in contexts like tabs or content scripts. If misused, could enable manipulation of page behavior or data exfiltration from visited sites.
  • activeTabexpected: Provides read/write access to the current tab’s DOM, URL, and allows script injection. Could be used by an attacker to capture keystrokes or manipulate page elements if misused during user interaction.
  • tabsexpected: Grants access to Chrome's tab management APIs (get, update, query). Allows enumeration of open tabs and potentially monitoring browsing activity. Risk is moderate if combined with other permissions like activeTab or scripting.
  • commandsexpected: Enables binding of custom commands (e.g., Ctrl+Shift+W) that trigger background actions. No direct data exposure but could be used in phishing or malicious automation if misconfigured.
  • https://*/*expected: Permits network requests to any origin over HTTPS. Allows interception of traffic from any domain including sensitive ones (e.g., banking or email). If compromised, could enable man-in-the-middle attacks or data theft across all sites visited. ⚠ 1
  • http://*/*expected: Permits network requests over insecure HTTP. This is a significant concern because it allows potential interception of sensitive data (e.g., passwords) and enables exploitation of insecure protocols like HTTP/1.0. If compromised, could allow attackers to capture credentials or manipulate communications on non-HTTPS sites. ⚠ 1

Data Exposure (Technical)

Contacts domains including github.com, www.apollographql.com, rpc-proxy.xdefi.services, eips.ethereum.org, en.wikipedia.org, feross.org, floating-ui.com, developer.mozilla.org, docs.swmansion.com. Data transmitted includes potentially sensitive information such as page content (if injected scripts are active), cookies, and possibly keystrokes or wallet state depending on how the extension interacts with dApps. Some endpoints use HTTP instead of HTTPS which introduces risks for data interception.

Code Findings

Use of eval() functionHigh

Detected usage of eval() in background or content scripts—this is typically used to execute strings as code at runtime. In this case, it may be triggered by remote data (e.g., fetched from rpc-proxy.xdefi.services). If attacker-controlled inputs are passed into eval(), they can result in arbitrary code execution.

💡 Commonly found in extensions that dynamically process configuration or API responses where dynamic evaluation is needed for flexibility.

innerHTML assignmentMedium

Assignment of innerHTML in a context where the value may be derived from user input or external data sources. This is particularly concerning if used without sanitization and can allow attackers to inject malicious scripts into web pages when rendered by browsers.

💡 Used for rendering UI components dynamically, often seen in extensions that build rich interfaces using templating engines.

Long hex-encoded stringHigh

Detected a long hexadecimal string (likely base64 or similar encoding) that may represent obfuscated JavaScript logic. This pattern is frequently associated with anti-analysis techniques and can mask functionality such as keyloggers, credential stealers, or other hidden behaviors.

💡 Used in minified code to reduce file size but not typically for hiding malicious behavior unless combined with other indicators.

Keyboard event listenerHigh

Extension registers a global keydown/keyup handler that can monitor all keystrokes across the browser. If misused, this allows capturing passwords, private keys, or other sensitive inputs entered on any page, particularly during login flows.

💡 Used for implementing shortcuts or hotkeys within the extension itself; however, in this case it appears to be listening globally.

Clipboard read accessMedium

Uses the Clipboard API (readText) which allows reading of clipboard contents from any tab or page context. If combined with other permissions like activeTab or scripting, this can enable unauthorized access to sensitive information such as private keys or passwords that users have copied.

💡 Common in extensions that need to paste wallet addresses or tokens into forms automatically.

Code Analysis

  • Obfuscation: Heavy obfuscation detected through long hex-encoded strings and likely identifier mangling. Techniques such as control flow flattening, string encoding, and variable renaming are present, making static analysis difficult.
  • Content Security Policy: Content Security Policy is defined but allows 'wasm-unsafe-eval' which can be dangerous in a browser extension context due to potential WASM exploitation vectors. Script-src includes 'self', but lacks strict restrictions on external origins or inline scripts that could allow XSS if not properly enforced.
  • Architecture: Built as a Manifest V3 extension with background service worker and content script injection into all URLs. This architecture enables broad access across web pages, increasing attack surface. No manifest anomalies detected.

Transparency

  • Developer: Developer name is missing from the Chrome Web Store listing; no clear company or contact information provided.
  • Privacy Policy: No privacy policy link visible in the extension metadata or description on CWS.
  • Code Visibility: Source code appears heavily minified and obfuscated, making independent auditing difficult without reverse engineering efforts.
  • Install Base: Installed by 300K+ users with recent updates suggesting ongoing maintenance.
Researcher Assessment

The extension presents a high-risk attack surface due to use of eval() and global key event listeners which can lead to arbitrary code execution and keystroke capture. The obfuscation makes manual inspection challenging, though the presence of insecure HTTP access is particularly concerning for data interception risks. Researchers should prioritize verifying whether these features are truly necessary or if they represent hidden malicious behavior.

Do more in Google Chrome with Adobe Acrobat PDF tools. View, fill, comment, sign, and try convert and compress tools.
Productivity/workflow
Block ads on YouTube and your favorite sites for free
Productivity/workflow
Remove ads on YouTube and everywhere else you browse.
Productivity/workflow

迅雷下载支持

39M+ users
迅雷下载支持
Productivity/workflow