Skip to main content
A phishing link can look exactly like Uniswap—the domain uniswaρ.com uses a Greek rho (ρ) instead of a ‘p’. In one attack, 2,400 users connected their wallets before anyone noticed, and $4.7 million was drained in 24 hours. This guide shows you how to protect your users and prevent this kind of attack.

Why dApp Browsers Need Security

URL Protection

Block phishing sites before users connect their wallets

Transaction Preview

Show users what they’re signing before they approve

Contract Verification

Verify the contracts users interact with are safe
Why dApp browser developers choose Webacy:
  • URL phishing detection — Catch lookalike domains, homograph attacks, and known scam sites
  • Transaction simulation — Show users exactly what will happen before signing
  • Contract verification — Check if the contract is legitimate or malicious
  • Real-time risk scoring — Fast enough for inline warnings without blocking navigation
  • Multi-chain support — Protect across all major networks

Prerequisites

Before implementing browser security, ensure you have:
  • A Webacy API key (sign up here)
  • Basic familiarity with REST APIs or the Webacy SDK
  • Your browser’s navigation and transaction signing flows identified

URL Security

The first line of defense is stopping users from connecting to malicious sites.

Phishing Detection

Check URLs when users navigate to new sites or before they connect their wallet.
Response fields:

Malware Site Blocking

Block sites that attempt to install malware or exploit browser vulnerabilities.

Homograph Attack Detection

Homograph attacks use Unicode characters that look identical to ASCII letters. аpple.com (Cyrillic ‘а’) and apple.com (Latin ‘a’) look the same but are completely different domains.
Common homograph substitutions: The URL check API automatically detects these attacks.

Transaction Security

Every transaction request is an opportunity to protect users.

Pre-Signing Preview

Simulate transactions before users sign them.
What to show users:

Contract Verification

Check if the contract the user is interacting with is legitimate.

Session Protection

Monitor the entire browsing session for threats.

Connected dApp Monitoring

Track all dApps the user has connected to and periodically recheck their safety.

Risk-Scored Connections

Show users the risk level of their connected dApps.

Complete Integration Workflow

Wallet Connection Flow

Transaction Request Flow

Full TypeScript Implementation


Example URLs for Testing

Known Phishing Sites

Test with URLs that mimic legitimate sites but use different domains:
  • uniswap-claim.com
  • opensea-claim.xyz
  • metamask-support.io
Do not actually visit these example domains—they may be active phishing sites. Use the URL check API to verify them safely.

Legitimate Sites (for comparison)

Test Addresses


API Quick Reference


Next Steps

Get Your API Key

Start protecting your browser users

API Reference

Complete endpoint documentation

Phishing Guide

Understand phishing attack patterns

Install the SDK

TypeScript SDK for integration