Web3 Security & Wallet Hygiene 2026: Как защитить депозит от Permit2-дрейнеров, фишинговых подписей и отравленных адресов
Если вы до сих пор думаете, что криптовалюту могут украсть только в том случае, если вы сфотографировали сид-фразу и выложили ее в iCloud — у меня для вас отрезвляющие новости.
В 2025–2026 годах более 85% всех украденных средств с некастодиальных кошельков утекли без компрометации приватного ключа. Владельцы кошельков держали сид-фразы на титановых пластинах в швейцарских сейфах, пользовались аппаратными Ledger и Keystone, но лишились всех USDT, USDC и нативных монет за 1.2 секунды.
Они сделали это добровольно. Собственными руками. Нажав кнопку «Sign» в окне кошелька.
Современные дрейнеры (Inferno, Angel, Pink Drainer и их форки нового поколения) больше не пытаются угадать ваш пароль. Они используют архитектуру самих смарт-контрактов Ethereum, Solana, Arbitrum и Base против вас.
Этот гайд — жесткий полевой практикум по Web3-безопасности. Мы препарируем анатомию атак через Permit / Permit2, покажем механику Address Poisoning, объясним, почему встроенные симуляторы транзакций в MetaMask и Phantom слепы к хитрым эксплойтам, и разберем архитектуру 3-уровневого бункера, которая гарантирует 100% выживание вашего депозита.
# 1. Анатомия Permit2: как вас грабят без списания вашего газа
Исторически, чтобы смарт-контракт мог забрать у вас ERC-20 токены (например, для свапа на Uniswap), требовалась ончейн-транзакция:
// Старый добрый ERC-20 Approve
function approve(address spender, uint256 amount) external returns (bool);
Вы платили комиссию сети (газ), одобряли трату, и только потом dApp списывал токены. Если у вас на кошельке не было ETH на газ, злоумышленник ничего не мог сделать.
Всё изменилось со стандартами EIP-2612 (Permit) и библиотекой Uniswap Permit2. Они были созданы из лучших побуждений: улучшить UX, убрать необходимость платить газ за аппрув и объединить все одобрения под единым смарт-контрактом. Но для мошенников это стало ядерным оружием.
Как работает атака через офчейн-подпись:
- Вы переходите на фишинговый сайт под видом «Клейма ретродропа», «Минта закрытого пасса» или клона DEX.
- Сайт предлагает «Подключить кошелек и верифицировать право на дроп».
- Всплывает окно MetaMask или Phantom. В заголовке написано Signature Request (Запрос подписи), а не транзакция. Газ равен $0.00.
- Пользователь думает: «Ну, денег за газ не просят, приватник я не ввожу, это просто логин как через Google» — и подписывает.
Что происходит под капотом:
Вы подписали криптографическое сообщение стандарта EIP-712:{
"types": {
"PermitSingle": [
{ "name": "details", "type": "PermitDetails" },
{ "name": "spender", "type": "address" },
{ "name": "sigDeadline", "type": "uint256" }
]
},
"primaryType": "PermitSingle",
"domain": {
"name": "Permit2",
"chainId": 1,
"verifyingContract": "0x000000000022D473030F116dDEE9F6B43aC78BA3"
},
"message": {
"details": {
"token": "0xdAC17F958D2ee523a2206206994597C13D831ec7",
"amount": "115792089237316195423570985008687907853269984665640564039457584007913129639935",
"expiration": "1788789200",
"nonce": "0"
},
"spender": "0xAttackerContractAddress...",
"sigDeadline": "1788789200"
}
}
Параметр amount содержит число 2^256 - 1 (максимально возможное число в EVM — так называемый Unlimited Approval).
Как только вы нажали «Sign», бэкэнд дрейнера получает байты вашей подписи (v, r, s). Теперь дрейнер сам со своего кошелька отправляет транзакцию в блокчейн, вызывает контракт Permit2.permitTransferFrom() и передает туда вашу подпись.
Контракт видит: подпись валидна, владелец дал добро. Ваши 50,000 USDT улетают на миксер Tornado Cash за один блок. Вы не потратили ни цента на газ, но потеряли весь депозит.
# 2. Address Poisoning: почему копировать кошелек из истории — самоубийство
Это самая коварная и пассивная атака, на которую ежедневно попадаются даже опытные ончейн-арбитражники и киты.
Механика отравления:
- Вы регулярно переводите средства между своим биржевым аккаунтом на Bybit и личным горячим кошельком:
- Ваш реальный адрес:
0x71C...49A2 - Бот-сканер видит эту транзакцию в публичном мемпуле.
- Бот мгновенно генерирует фейковый адрес (vanity address) с абсолютно такими же первыми 4-5 и последними 4-5 символами:
- Фейковый адрес:
0x71C99f38b2c41890123512a849A2 - Бот отправляет на ваш кошелек нулевую транзакцию (0 USDT или 0.000001 монеты) от имени этого фейкового адреса.
- Через 3 дня вы хотите снова перевести $10,000 на Bybit. Вы открываете историю транзакций в MetaMask или TrustWallet, нажимаете на последнюю транзакцию, копируете адрес, бегло сверяете первые символы (
0x71C) и хвост (49A2), нажимаете «Отправить». - Деньги ушли боту. Вернуть их математически невозможно.
Золотое правило крипто-гигиены #1: Никогда, ни при каких обстоятельствах не копируйте адреса получателей из истории транзакций кошелька или эксплорера. Используйте только сохраненную адресную книгу биржи (Whitelisting), QR-коды или сверяйте минимум 12 символов адреса (включая середину).
# 3. Архитектура «3-Уровневого Бункера» (Hot → Warm → Cold)
Единственный способ не стать статистикой в отчетах Chainalysis — физически изолировать риски. Профессиональные фонды и системные арбитражники никогда не используют один кошелек для всех задач.
┌─────────────────────────────────────────────────────────────┐
│ LEVEL 3: COLD FORTRESS │
│ Ledger / Keystone / Safe Multisig │
│ - 80% депозита │
│ - НИКОГДА не подключается к браузерным dApp │
│ - Только прямые трансферы на Level 2 │
└──────────────────────────────┬──────────────────────────────┘
│ Direct Transfer Only
▼
┌─────────────────────────────────────────────────────────────┐
│ LEVEL 2: WARM TRADING │
│ Rabby Wallet / Phantom (Верифицированные биржи & DEX) │
│ - 15-20% депозита (рабочий капитал) │
│ - Свапы на проверенных Uniswap / Raydium / Hyperliquid │
│ - Еженедельный сброс всех аппрувов через Revoke.cash │
└──────────────────────────────┬──────────────────────────────┘
│ Small Gas Top-ups
▼
┌─────────────────────────────────────────────────────────────┐
│ LEVEL 1: BURNER / DEG-ZONE │
│ Одноразовый горячий кошелек │
│ - $50 - $150 на балансе │
│ - Любые тестнеты, новые мемкоины на Pump.fun, аирдропы │
│ - После сессии сбрасывается или полностью опустошается │
└─────────────────────────────────────────────────────────────┘
Спецификация уровней:
- Level 1 (Burner): Расходный материал. Если здесь сработает дрейнер — вы потеряете $50, а не депозит на квартиру. Кошелек не имеет никаких связей с холодным хранилищем.
- Level 2 (Warm Trading): Рабочий инструмент. Подключается ТОЛЬКО к Tier-1 протоколам (Uniswap, Aave, Curve, Hyperliquid, Bybit Web3). Никаких непроверенных смарт-контрактов.
- Level 3 (Cold Fortress): Ваша пенсионная кубышка. На аппаратном устройстве должно быть отключено Blind Signing (Слепая подпись). Вы подписываете только Clear-Sign транзакции, где экран устройства показывает точный адрес и сумму перевода.
# 4. Почему симуляции кошельков врут: ловушка ложной безопасности
Многие уверены, что расширения вроде Rabby, Phantom Preview или Wallet Guard защищают на 100%, показывая симуляцию: «Баланс изменится: -$0».
Это опасная иллюзия. Создатели дрейнеров прекрасно знают, как работают симуляторы, и обходят их следующими методами:
1. Проверка симулятора на стороне смарт-контракта
Вредоносный смарт-контракт умеет определять, исполняется ли он внутри ноды симуляции (sandbox) или в реальном блоке майнера. Если контракт видит среду симуляции, функция возвращаетtrue и не трогает баланс. Когда же транзакция отправляется в настоящий блокчейн — срабатывает логика списания.
2. Time-lock и отложенный триггер
Подпись дает право списать средства в любой момент до наступленияdeadline (например, в течение следующих 30 дней). Симулятор показывает, что в момент клика с вашего кошелька ушло $0. Но через 4 часа, когда вы легли спать, скрипт дрейнера активирует подпись и забирает токены.
3. Газовые бомбы и реверты
Транзакция симулируется как успешная, но внутри зашит механизм, требующий 5,000,000 газа при попытке отмены или перехвата, вызывая Out-of-Gas ошибку у защитных ботов.# 5. Полный протокол регулярной гигиены (Еженедельный чек-лист)
Чтобы кошелек оставался стерильным, выполняйте этот регламент каждое воскресенье:
Шаг 1: Полный аудит открытых аппрувов через Revoke.cash
Перейдите на верифицированный сайт Revoke.cash и проверьте все сети (Ethereum, Arbitrum, Base, BSC, Polygon, Solana).- Если вы видите аппрувы со статусом
Unlimitedк контрактам, которыми не пользовались больше недели — нажимайте Revoke. - Особое внимание обращайте на секцию Permit2 tokens — отзывайте доверие у старых DEX-роутеров.
Шаг 2: Чистка подключенных dApp (Connected Sites)
В настройках MetaMask / Phantom зайдите в раздел Connected Sites (Подключенные сайты) и нажмите Disconnect All. Сайты не должны иметь постоянной сессии чтения ваших открытых адресов.Шаг 3: Проверка приватных RPC-эндпоинтов
Убедитесь, что в кошельке не прописаны кастомные RPC, добавленные во время сомнительных тестнетов. Вредоносный RPC может подменять балансы, возвращать ложные данные о комиссиях и подсовывать фишинговые хеши транзакций.# 6. Экстренная эвакуация: что делать, если вы подписали дрейнер ПРЯМО СЕЙЧАС
Если вы нажали подпись и через секунду осознали, что сайт подозрительный:
- Не паникуйте и действуйте за секунды: Если это Permit с отложенным исполнением, токены еще на месте.
- Мгновенный перевод нативного газа на другой кошелек: Если на кошельке нет ETH/SOL/BNB, дрейнеры старого типа не смогут оплатить исполнение транзакции транзита (хотя для Permit2 это не всегда помогает).
- Быстрый Revoke: Откройте мобильный кошелек (он быстрее десктопа) или Revoke.cash и отзовите последнее разрешение.
- Sweeper Bots (Если кошелек скомпрометирован сид-фразой): Если утек приватный ключ, а в стейкинге залочены $20,000, ручной вывод бесполезен — бот дрейнера опередит вас на миллисекунды. В таких случаях используют сервисы Flashbots White-Hat Rescue, отправляющие приватный бандл напрямую майнерам без попадания в публичный мемпул.
# Проверка токена перед покупкой: honeypot и скрытые функции
Дрейнеры атакуют ваш кошелёк, но не менее частый способ потерять деньги — купить токен-ловушку. На DEX каждый день появляются тысячи новых токенов, и значительная их часть создана, чтобы забрать деньги покупателей.
Пять типовых ловушек в контрактах
| Ловушка | Как устроена | Чем грозит |
|---|---|---|
| Honeypot | Продажа запрещена всем, кроме владельца или белого списка | Купить можно, продать — нет |
| Изменяемый налог | Владелец может в любой момент поднять комиссию на продажу вплоть до 99% | Продажа превращается в подарок создателю |
| Открытый минт | Функция выпуска новых токенов не отключена | Создатель допечатывает монеты и продаёт их в пул |
| Чёрный список / заморозка | Владелец может заблокировать переводы с отдельных адресов (в Solana — freeze authority) | Ваши токены становятся непродаваемыми |
| Обновляемый прокси | Логику контракта можно заменить | Сегодня код честный, завтра — нет |
Экспресс-проверка за пару минут
- Ликвидность. Токены пула (LP) должны быть сожжены или заблокированы на длительный срок через известный сервис блокировки. Незаблокированная ликвидность может быть выведена создателем в любой момент.
- Сканеры безопасности. Проверьте адрес контракта в RugCheck (Solana), TokenSniffer, De.Fi Scanner или GoPlus (EVM-сети): права владельца, налоги на покупку и продажу, возможность продажи. Налог выше нескольких процентов — повод отказаться.
- Права владельца. В Solana — отключены ли mint authority и freeze authority. В EVM — отказался ли владелец от прав (renounce) и нет ли прокси.
- Концентрация держателей. Если топ-10 кошельков (без пула ликвидности) держат значительную долю эмиссии или крупные адреса связаны между собой, велик риск сброса. Связи удобно смотреть в BubbleMaps.
- Пробная продажа. Если сомневаетесь — купите на минимальную сумму и сразу попробуйте продать часть.
Ни один сканер не даёт гарантии: новые схемы обходят автоматические проверки. Но этот минимум отсеивает подавляющее большинство очевидных ловушек. Как применять эти проверки при торговле новыми токенами — в гайде по снайпингу мемкоинов.
# 7. Философия Zero-Trust в экосистеме Bitcoin Compass
Платформа Bitcoin Compass изначально спроектирована по институциональному принципу Zero-Custody & Client-Side Encryption:
- Терминал никогда не запрашивает права на вывод средств (Withdrawal Permissions) при подключении API бирж Bybit, Binance, OKX или MEXC. Торговые операции требуют исключительно права Read & Trade.
- Все ключи и пользовательские сессии шифруются локально в вашем браузере алгоритмом AES-256 и никогда не передаются на сервер в открытом виде.
- Для новичков, которые еще не освоили холодную безопасность, доступен полноценный режим симуляции, позволяющий тестировать арбитражные связки и сканеры стакана с нулевым финансовым риском.
Резюме: В крипте вы сами себе банк. Но это означает, что вы сами себе и служба безопасности, и инкассация, и аудит. Держите 80% депозита на холодном железе, никогда не подписывайте транзакции в спешке и относитесь к каждому всплывающему окну подписи как к потенциальной попытке опустошить ваш счет.