MetaMask Android Security Report background image
Home - Coinspect Security
MetaMaskMetaMaskAndroid
Search
MetaMask logo

MetaMask

Security Score

86.7

dApp Permissions

35.0 / 35
  • Pass Confirmation for requests from WalletConnect
    9.0 / 9.0 Expand details
    Description

    Requires user confirmation for requests from WalletConnect before granting dApp access to specific RPC methods.

    • The wallet requires user confirmation before processing any request to the following RPC endpoints: wallet_addEthereumChain, wallet_watchAsset, eth_decrypt, eth_getEncryptionPublicKey, eth_signTypedData, personal_sign, and eth_sendTransaction.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Pass User confirmation for requests from embedded browser
    7.9 / 7.9 Expand details
    Description

    Requires user confirmation before processing privileged RPC requests from embedded browsers.

    • The wallet successfully requires user confirmation before processing any dApp request to the following RPC endpoints: wallet_addEthereumChain, wallet_watchAsset, eth_decrypt, eth_getEncryptionPublicKey, eth_signTypedData, personal_sign, and eth_sendTransaction.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots
  • Pass Wallet unlock before requests
    5.5 / 5.5 Expand details
    Description

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

    • The wallet requires the user to unlock it before processing any request to the following RPC endpoints: wallet_addEthereumChain, wallet_watchAsset, eth_decrypt, eth_getEncryptionPublicKey, eth_signTypedData, personal_sign, and eth_sendTransaction.

      — 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 refuses to sign an EIP-712 object if its chain ID does not match the currently active chain.

      — 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 does not support the eth_sign method.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • Pass Mismatching SIWE domain detection
    1.8 / 1.8 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 when the user attempts to sign a SIWE message.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots
  • 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 allows effective individual access revocation.

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

    Allows users to view and revoke token approvals.

    • The wallet provides token allowance revocation within its portfolio, in their browser.

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

    Requires user confirmation before switching the active chain.

    • The wallet allows switching between preselected networks within the connection dialog, and if the user attempts to switch to a non-preselected chain, it will ask for confirmation.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 4 screenshots

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 wallet offers transaction simulation, clearly displaying all incoming and outgoing assets involved in the transaction.

      — 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 provides a clear interface for reviewing and approving transactions. It displays the recipient of the token approval, the token details, the amount, and the spending limit.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • 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 user can scroll through large messages, allowing them to review the data before signing, without truncating any information or hiding any details. The wallet also displays the verifying contract when signing an EIP-712 message.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 3 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 parses and displays the details when attempting to sign an EIP-712 object.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 1 screenshot
  • 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 or block transactions to addresses with invalid checksums when using a dApp. However, it does provide warnings and prevents the transaction when the address is entered manually.

      — 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.

    • When presented with a large message in a personal sign request, the confirm button remains enabled at all times.

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

    Consistently provides clickable links to block explorers for all key blockchain identifiers.

    • The wallet includes clickable links when viewing transaction history but does not provide any within the transaction details view.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots

Physical Access

14.9 / 20
  • Pass Seed phrase access control
    5.4 / 5.4 Expand details
    Description

    Requires authentication to access seed phrases or private keys.

    • The wallet requires user authentication before displaying the mnemonic or private keys.

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

    Allows users to lock it manually.

    • The wallet allows manual locking through the settings menu.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots
  • Pass Automatic wallet lock
    3.9 / 3.9 Expand details
    Description

    Verifies wallet auto-locks on inactivity, device lock, or background.

    • The wallet automatically locks after 30 seconds of inactivity by default. It also locks when the device is locked or when the app moves to background execution.

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

    Uses strong authentication, such as resistance to trivial or commonly-used passwords. Including biometrics and rate limiting in mobile.

    • The wallet allows easy-to-guess passwords like 11111111. It supports biometrics but does not limit login attempts to five—you can try as many times as you want.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 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 allows users to copy their mnemonic to the clipboard without any time restriction and without explicitly warning them about the associated risks. It also prevents users from taking screenshots

      — Verified by Sebastian Camia at Coinspect
    Evidence · 2 screenshots
  • 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 implements a detailed mechanism to warn users about the risks of sharing their mnemonic or private keys before displaying them.

      — Verified by Sebastian Camia at Coinspect
    Evidence · 5 screenshots

Threat Prevention

16.7 / 20
  • Pass Phishing dApp detection
    5.1 / 5.1 Expand details
    Description

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

    • The wallet does not display any warning message in the connection dialog when attempting to access a malicious dApp through WalletConnect, but it does block and warn users about the risks when using the browser.

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

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

    • The wallet clearly warns the user when attempting to send a transaction to a known malicious address, such as the Tornado Cash attacker.

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

    Informs users when interacting with a trusted dApp URL.

    • The wallet neither informs the user nor highlights well-known, verified dApps when attempting to connect to them.

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

    Warns users when interacting with an unknown address.

    • The wallet displays a question mark next to addresses that have not been interacted with before, indicating to the user that this is their first interaction.

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

    Clearly displays the full dApp URL in the connection prompt.

    • The wallet successfully displays the full dApp origin URL in the connection dialog.

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

    Hides malicious tokens and NFTs by default.

    • The NFTs section displays no information—neither legitimate nor scam NFTs or tokens are shown.

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

    Informs dApp access to balances, history, and signing requests on connection.

    • The wallet clearly informs users within the connection dialog that, by connecting, they allow the dApp to view their wallet balance and activity, as well as 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.