MetaMask Chrome Security Report background image
Home - Coinspect Security
MetaMaskMetaMaskChrome
Search
MetaMask logo

MetaMask

Security Score

85.5

dApp Permissions

35.0 / 35
  • Pass User confirmation before processing requests
    8.7 / 8.7 Expand details
    Description

    Requires user confirmation before processing requests from dApps for specific RPC methods.

    • The dApp requested the following RPC calls: `wallet_addEthereumChain`, `wallet_watchAsset`, `eth_decrypt`, `eth_getEncryptionPublicKey`, `eth_signTypedData*`, `personal_sign`, `eth_sendTransaction`. With the exception of `wallet_addEthereumChain` and `wallet_switchEthereumChain`, the user rejected all the requests, indicating that the user confirmation is working as intended.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Pass User consent for dApp access
    7.7 / 7.7 Expand details
    Description

    Requires user approval before granting dApp access to specific RPC methods.

    • The wallet correctly rejected all requests that require authorization or address access when not connected, with no information leaked.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Pass Wallet unlock before requests
    5.6 / 5.6 Expand details
    Description

    Requires users to unlock it before processing dApp requests when in a locked state.

    • The wallet requires users to unlock it before processing dApp requests when in a locked state.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Pass Mismatching EIP-712 chainId detection
    3.5 / 3.5 Expand details
    Description

    Alerts users or rejects signing EIP-712 messages with a mismatched chain ID.

    • The wallet displays an error when the chainId in the EIP-712 object does not match the active chainId of the wallet.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Pass eth_sign method disabled
    3.3 / 3.3 Expand details
    Description

    Restricts the use of the deprecated and insecure eth_sign method by default.

    • The wallet rejects the `eth_sign` request, as indicated by the error message 'The method "eth_sign" does not exist / is not available.'

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Pass Mismatching SIWE domain detection
    1.9 / 1.9 Expand details
    Description

    Warns users when the domain in a Sign-In with Ethereum (EIP-4361) message does not match the requesting dApp's origin.

    • The wallet displays a warning to the user that the site making the request is not the site they are signing into.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots
  • Pass Token approval management
    1.6 / 1.6 Expand details
    Description

    Allows users to view and revoke token approvals.

    • The wallet provides a "Spending Caps" feature, which allows users to view and revoke token approvals in MetaMask Portfolio.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Pass Connected dApp management
    1.5 / 1.5 Expand details
    Description

    Allows users to list and revoke connected dApps.

    • The wallet lists connected dApps, and after disconnecting one, the dApp can no longer connect without reconnecting.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 5 screenshots
  • Pass User confirmation before switching chains
    1.2 / 1.2 Expand details
    Description

    Requires user confirmation before switching the active chain.

    • The wallet prompts a confirmation dialog when a dApp requests to switch to the Polygon network.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot

Intent Verification

20.1 / 25
  • Pass Transaction simulation
    6.7 / 6.7 Expand details
    Description

    Previews the expected outcome by simulating the request execution on the blockchain before signing.

    • The screenshot shows the wallet displaying the expected inputs (POL, USDC) and outputs (#97572) from a Uniswap transaction before signing.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Pass Clear token approval dialog
    6.7 / 6.7 Expand details
    Description

    Clearly displays all the key details for ERC-20 Approve requests.

    • The wallet displays the token, spender and approved amount when the approval is triggered through a swap DApp. It does not show a custom ERC-20 approval.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots
  • Pass Clear message signing dialog
    3.8 / 3.8 Expand details
    Description

    Clearly displays all message signature request details without truncating or hiding information.

    • The wallet renders large personal_sign and EIP-712 signing data in a scrollable view where the full content is accessible, and the EIP-712 verifyingContract is displayed (Seaport).

      — Verified by Sebastian Camia at Coinspect
    Evidence · 7 screenshots
  • Pass EIP-712 message parsing
    2.4 / 2.4 Expand details
    Description

    Displays human-readable details for EIP-712 signature requests from well-known protocols.

    • The wallet renders structured, human-readable signing details for the OpenSea Seaport EIP-712 signature request, rather than raw JSON.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots
  • Fail Invalid address checksum detection
    0.0 / 2.2 Expand details
    Description

    Warns users when they input addresses with invalid EIP-55 checksums.

    • The wallet does not warn the user when an address with an invalid checksum is provided, whether by a dApp or during manual transaction entry.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 3 screenshots
  • Fail Mandatory message review
    0.0 / 2.1 Expand details
    Description

    Requires users to review all the details before signing a message.

    • The confirm button is still enabled before scrolling to the end of the message.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots
  • Partial Links to blockchain explorers
    0.6 / 1.2 Expand details
    Description

    Provides clickable links to block explorers for at least one key blockchain identifier.

    • The address, contract address, and transaction hashes are clickable and viewable on a block explorer in the wallet history but not during the send transaction flow.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 3 screenshots

Physical Access

11.7 / 20
  • Pass Seed phrase access control
    6.6 / 6.6 Expand details
    Description

    Requires authentication to access seed phrases or private keys.

    • The user is prompted to enter their password on the 'Reveal Secret Recovery Phrase' screen, which means authentication is required before displaying the seed phrase.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Pass Manual wallet lock
    3.4 / 3.4 Expand details
    Description

    Allows users to lock it manually.

    • The wallet has a logout button in the settings menu that allows manual locking.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots
  • Fail Automatic wallet lock
    0.0 / 3.4 Expand details
    Description

    Verifies wallet auto-locks on inactivity.

    • The auto-lock setting is set to 'Never', indicating the wallet does not auto-lock on inactivity.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Fail Robust Authentication
    0.0 / 3.2 Expand details
    Description

    Uses strong authentication, such as resistance to trivial or commonly-used passwords.

    • The password field requires at least 8 characters, but it allows easy-to-guess passwords such as 11111111.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Pass Seed phrase access warning
    1.8 / 1.8 Expand details
    Description

    Warns users of the risk before allowing access to seed phrases or private keys.

    • The wallet clearly communicates the risks of losing or sharing the seed phrase through a quiz and displays a warning to the user before revealing the secrets.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 6 screenshots
  • Fail Clipboard seed phrase leak prevention
    0.0 / 1.8 Expand details
    Description

    Limits exposure of secrets by restricting or warning on copying seed phrases or taking screenshots.

    • The wallet shows the seed phrase screen with a warning about the risk of exposing the seed phrase, but it does not display a specific warning when copying it to the clipboard, nor does it restrict copying.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots

Threat Prevention

18.7 / 20
  • Pass Malicious and poisoned address detection
    5.1 / 5.1 Expand details
    Description

    Prevents or alerts users about interactions with a known malicious address or a lookalike (poisoned) address.

    • The wallet correctly warns and blocks transactions to both a known malicious address and a poisoned lookalike address, covering manual UI entry and dApp requests for both.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 8 screenshots
  • Pass Phishing dApp detection
    5.1 / 5.1 Expand details
    Description

    Prevents or alerts users about interactions with a known malicious URL.

    • The wallet warns the user when visiting or attempting to connect to known phishing sites such as hyper-usdt.org, master--ethereumorg.netlify.app, and revolution-coredaorg.pages.dev.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 3 screenshots
  • Pass Trusted dApp detection
    3.3 / 3.3 Expand details
    Description

    Informs users when interacting with a trusted dApp URL.

    • Verified dApps like Uniswap and Sushi are displayed with a green checkmark next to the URL, which distinguishes them from unverified dApps.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 3 screenshots
  • Pass Unknown address detection
    2.8 / 2.8 Expand details
    Description

    Warns users when interacting with an unknown address.

    • When sending to a fresh address, the wallet presents an 'Unknown address' indicator and prompts the user to save the address with a nickname.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots
  • Pass Full dApp URL display
    1.5 / 1.5 Expand details
    Description

    Clearly displays the full dApp URL in the connection prompt.

    • The origin URL 'main--wallettesting.netlify.app' is displayed in full without truncation in the connection dialog.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Fail Malicious or spam token filtering
    0.0 / 1.3 Expand details
    Description

    Hides malicious tokens and NFTs by default.

    • The wallet successfully filters spam NFTs but it displays spam tokens, such as '69.69 ADS: POL CASINO WWW.MATICSLOT.IO' (address 0x950Ddb91842C58814ed4Ee7077Ce35632225797e) by default in the tokens list, failing to hide malicious tokens by default.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 5 screenshots
  • Pass dApp access disclosure dialog
    1.0 / 1.0 Expand details
    Description

    Discloses the dApp's read access to the user's account and its ability to request signatures on connection.

    • The connection dialog clearly mentions the ability to view the user's balance and activity, as well as to request transaction approvals.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots

This ranking is for informational purposes only. It should not be relied on to provide legal, tax, financial, investment, or other types of advice. Coinspect does not guarantee or warrant the accuracy, completeness, timeliness, suitability, or validity of the information provided and will not be responsible for any claim attributable to reliance on errors, omissions, or other inaccuracies of any part of such information.