
چگونه قبل از ارسال ارز دیجیتال، سمپاشی آدرس را شناسایی کنیم
سمزدن آدرس یک کلاهبرداری آدرس مشابه است که تاریخچه کیف پول شما را به دام تبدیل میکند، بنابراین شما یک آدرس آشنا را کپی میکنید و وجوه واقعی را به یک مهاجم ارسال میکنید. شناسایی آن به تشخیص آثار تاریخچه مسموم شده مانند انتقال با ارزش صفر یا توکنهای جعلی بستگی دارد، سپس مجبور کردن یک روند تأیید آدرس کامل قبل از هر ارسال معنادار.
نکات کلیدی
- سمزدن آدرسبا کاشت یک آدرس مشابه کار میکندآدرسرا به تاریخچه کیف پول یاکاوشگر بلاکشما وارد میکند تا بعداً آن را کپی کنید و وجوه را به اشتباه ارسال کنید.
- دو اثر رایجترین توکنهای جعلی هستند که شبیه به توکنهای اصلی (USDC/USDT) و ورودیهای انتقال با ارزش صفر هستند که رکوردهای قانعکننده "ارسال شده" را بدون جابجایی ارزش ایجاد میکنند.
- بررسیهای "4 اول / 4 آخر" یک کنترل واقعی نیستند زیرا آدرسهای زینتی میتوانند برای مطابقت با آن بخشهای قابل مشاهده تولید شوند.
- برای انتقالهای بالاتر از آستانه درد شما، یک ارسال آزمایشی کوچک به همان آدرس تأیید شده دقیقاً بیمه ارزان است حتی اگر به معنایپرداخت گازدو بار باشد.
چگونه سمزدن آدرس شما را فریب میدهد
سمزدن آدرس داستانی از نقض کلید خصوصی نیست. زنجیره همان کاری را انجام میدهد که همیشه انجام میدهد و مهاجم از یک اشتباه در روند بهرهبرداری میکند: رفتار کردن با یک فید تراکنش عمومی بهعنوان اینکه یک دفترچه آدرس معتبر است. به همین دلیل است که این موضوع در دسته وسیعتری از کلاهبرداریهای کیف پول کریپتو قرار میگیرد و چگونه میتوان از آنها اجتناب کرد، حتی اگر هیچ چیز "کیف پول" را هک نکند.
مکانیک ساده است. یک مهاجم یک آدرس زینتی ایجاد میکند که بهطور بصری شبیه به یک مقصد قانونی است که قبلاً از آن استفاده کردهاید. سپس آنها آن آدرس مشابه را در مکانهایی که مردم از آن کپی میکنند، بهویژه نمای تاریخچه تراکنش در یک برنامه کیف پول یا یک برگه کاوشگر بلاک که از قبل باز مانده است، نشان میدهند. وقتی کاربر بعداً یک پرداخت تکراری یا برداشت از صرافی انجام میدهد و از تاریخچه کپی-پیست میکند، آدرس مهاجم آنجا نشسته است و منتظر است.
راهنماییهای پشتیبانی Trezor بهوضوح درباره مدل تهدید است: نیازی به نگرانی درباره "کلیدهای خصوصی" در یک سناریوی پایه سمزدن آدرس نیست. ضرر زمانی اتفاق میافتد که وجوه به گیرنده اشتباه ارسال شود زیرا کاربر خط اشتباه را کپی کرده یا خیلی کم از آدرس کیف پول را تأیید کرده است.این کلاهبرداری مقیاسپذیر است زیرا مهاجمان میتوانند بهطور ارزان به تاریخچه شما بنویسند. Trezor به شبکههایاتریوم
و دیگرEVMبهعنوان اهداف رایج اشاره میکند و زنجیرههای کمهزینه مانندپالیگان،آوالانچوزنجیره BNBرا جذاب میداند زیرا اسپم کردن بسیاری از آدرسها ارزان است. این تغییر ذهنیت است: تاریخچه کیف پول شما یک نوار غیرقابل اعتماد است که هر کسی میتواند سعی کند "چاپ" کند.الگوهای رایج سمزدن برای شناساییدو الگو بارها و بارها در زنجیرههای EVM ظاهر میشوند زیرا آنها اثر UI دقیقی را ایجاد میکنند که مهاجم میخواهد: یک ورودی قابل قبول که میتواند بعداً کپی شود.
الگوی اول مسیر توکن جعلی است. مهاجم یک قرارداد توکن بیارزش را مستقر میکند که از یک نماد یا نام آشنا استفاده میکند، مانند USDC یا USDT، سپس انتقالهایی را ارسال میکند که شبیه به فعالیت واقعی هستند. Trezor یک نشانه رایج را توصیف میکند: پس از یک انتقال قانونی (بهعنوان مثال، 5,300 USDC)، مهاجم یک انتقال توکن جعلی ارسال میکند که همان مقدار را نمایش میدهد تا تاریخچه شبیه به تکرار چیزی باشد که کاربر قبلاً انجام داده است. Revoke.cash همان ایده را بهعنوان "به نظر برسانید که شما توکنها را به یک آدرس خاص ارسال کردهاید در حالی که واقعاً این کار را نکردهاید"، بنابراین خط گیرنده به طعمه تبدیل میشود.
الگوی دوم مسیر انتقال با ارزش صفر است. این یک تراکنش "ناموفق" نیست. این اغلب یک رویداد عمدتاً معتبر است که برای مسموم کردن UI شما وجود دارد. Revoke.cash توضیح میدهد که چرا میتواند بدون تأیید هیچ چیز معناداری موفق شود: در توکنهای EVM که از منطق transferFrom استفاده میکنند، بررسی این است که مقدار ≤ مجوز، و 0 حتی زمانی که مجوز 0 است، عبور میکند. نتیجه یک ورودی "ارسال شده" با ظاهری تمیز و آدرس گیرندهای است که به یک آدرس واقعی نزدیک است، اما ارزش آن صفر است.
این الگوها میتوانند با یک حمله گرد و غبار همپوشانی داشته باشند به این معنا که هر دو اسپم ارزان هستند که در تاریخچه شما قرار میگیرد. تفاوت در نیت است. گرد و غبار اغلب برای ردیابی یا خوشهبندی آدرسها استفاده میشود، در حالی که سمزدن آدرس بهطور خاص برای وادار کردن شما به کپی-پیست کردن مقصد اشتباه طراحی شده است.
بررسیهای آدرس که واقعاً کار میکنند
یک دفاع قابل استفاده باید در لحظه دقیق که مردم دچار مشکل میشوند زنده بماند: کلاهبرداری کپی پیست آدرس در حین ارسال روتین. این بدان معناست که بررسی نمیتواند "نگاهی به چند کاراکتر اول و آخر بیندازید." Revoke.cash بهصراحت میگوید که کاراکترهای اول/آخر 4 کافی نیستند زیرا کلاهبرداران میتوانند آدرسهایی تولید کنند که با آن بخشها مطابقت داشته باشند. راهنمایی Trezor فراتر میرود: تنها راه برای اطمینان این است که هر کاراکتر را بررسی کنید.
یک روند عملی شبیه به یک چکلیست عملیات است، نه یک چک احساس. هدف این است که یک آدرس منبع حقیقت را مجبور کنید، سپس آن را از ابتدا تا انتها قبل از امضا تأیید کنید.
1. شناسایی کنید که آیا آدرس از تاریخچه آمده است. اگر مقصد از یک لیست تراکنش کپی شده باشد، بهطور پیشفرض آن را مشکوک در نظر بگیرید و جریان را از یک منبع تمیز دوباره شروع کنید. 2. مقصد را از منبع حقیقت بکشید. برای یک واریز صرافی، این صفحه واریز صرافی است که برای این ارسال تازه باز شده است. برای یک شخص، این یک پیام تازه از گیرنده یا یک نام ENS است اگر هر دو طرف از آن استفاده کنند. 3. آدرس کامل را مقایسه کنید، نه یک تکه.
مقایسه را در جایی انجام دهید که سخت باشد جعل شود، ایدهآل صفحه تأیید کیف پول سختافزاری اگر از یکی استفاده میکنید. 4. تاریخچه اخیر را برای آثار مسموم کردن قبل از ارسال اسکن کنید. بهطور خاص به دنبال یک ورودی "ارسال شده" با ارزش صفر یا یک انتقال توکن شامل یک نام توکن مشکوک مشابه در اطراف آخرین باری که به آن طرف پرداخت کردهاید، بگردید. 5. از یک قاعده اندازه استفاده کنید.
اگر مقدار معنادار است، یک تراکنش آزمایشی کوچک به همان آدرس تأیید شده دقیقاً ارسال کنید، سپس فقط پس از رسیدن آزمایش، مقدار کامل را ارسال کنید.
این همچنین جایی است که "چگونه یک تراکنش را قبل از امضا تأیید کنیم" مهم است. مرحله تأیید فقط گیرنده نیست. این شبکه، دارایی و صفحه تأیید نهایی است که نشان میدهد وجوه واقعاً کجا میروند.
روشهای ایمنتر برای استفاده مجدد از آدرسها
بیشتر ضررها در انتقالهای خستهکننده اتفاق میافتند، نه موارد عجیب و غریب. کاربر در حال انتقال استیبلکوینها به یک صرافی، پرداخت به همان طرف مقابل دوباره، یا جابجایی وجوه بین کیف پولها است. راه حل این است که دیگر تاریخچه تراکنش را بهعنوان یک لیست مخاطبین در نظر نگیرید.
برای واریزها و برداشتهای صرافی، عادت ایمنترین این است که تکراری و کمی آزاردهنده باشد: هر بار صفحه واریز صرافی را باز کنید و آدرس را از آنجا کپی کنید، بهجای اینکه از یک آدرس قدیمی از تاریخچه کیف پول خود استفاده کنید. Revoke.cash بهصراحت این موضع "هرگز از تاریخچه کیف پول یا کاوشگر بلاک بهعنوان منبع حقیقت استفاده نکنید" را برای واریزها توصیه میکند.
برای پرداختهای تکراری به همان شخص، تمیزترین روند این است که آدرس را در جایی ذخیره کنید که توسط اشخاص ثالث تصادفی قابل نوشتن نباشد. برخی کیف پولها از دفترچه آدرس یا لیستهای سفید پشتیبانی میکنند و برخی صرافیها از لیستهای مجاز آدرس برداشت پشتیبانی میکنند. کلید این است که رکورد توسط شما ایجاد شود، نه توسط هر چیزی که در زنجیره ظاهر میشود.
برای انتقالهای خود بین کیف پولهای خود، همان قاعده اعمال میشود. Trezor بهطور خاص در مورد کپی کردن حتی آدرس خود از تاریخچه تراکنش هنگام جابجایی وجوه از یک صرافی متمرکز به یک دستگاه Trezor هشدار میدهد. از صفحه دریافت برای کیف پول مقصد استفاده کنید و آن را در دستگاه تأیید کنید.
این همچنین جایی است که پرچمهای UI مهم هستند. Trezor Suite شامل یک مکانیزم فیلتر است که تراکنشهای مشکوک به سمزدن را در تاریخچه محو میکند و آنها را بهعنوان تأیید نشده علامتگذاری میکند. آن برچسبها باید بهعنوان یک توقف سخت در نظر گرفته شوند، نه یک پیشنهاد، زیرا کل هدف کلاهبرداری این است که شما به آنچه UI نشان میدهد اعتماد کنید.
کنترل آسیب و عادتهای پیشگیری
یک ورودی تاریخچه مسموم شده دلیلی برای وحشت در مورد سرقت کلید نیست. راهنمایی Trezor بهوضوح بیان میکند که سمزدن آدرس نیازی به نشت کلید خصوصی ندارد. کار فوری جلوگیری از لغزش در روند در ارسال بعدی است.
1. استفاده از تاریخچه بهعنوان منبع آدرس را متوقف کنید. اگر ورودی مشکوکی ظاهر شد، فرض کنید که مهاجم در حال تلاش برای کاشت کپی-پیست بعدی شما است. 2. انتقالهای علامتگذاری شده یا توضیحناپذیر را نادیده بگیرید. Trezor توصیه میکند که تراکنشهای علامتگذاری شده بهعنوان مشکوک توسط Trezor Suite را نادیده بگیرید و تراکنشهایی را که نمیتوانید توضیح دهید، نادیده بگیرید. 3. مقاصد "خوب شناخته شده" خود را بازسازی کنید. برای صرافیها، آدرسهای واریز را از UI صرافی دوباره کپی کنید. برای افراد، آدرس را از باند دیگر دوباره تأیید کنید. 4. برای اندازه، اجرای دو مرحلهای را اعمال کنید. Trezor توصیه میکند که قبل از مقدار زیاد، یک تراکنش آزمایشی کوچک انجام دهید، با این توافق صریح که ممکن است دو بار گاز پرداخت کنید. 5. زنجیرههای کمهزینه را بهعنوان محیطهای با نویز بالاتر در نظر بگیرید. Trezor اشاره میکند که پالیگان، آوالانچ و زنجیره BNB اغلب هدف قرار میگیرند زیرا اسپم کردن بسیاری از آدرسها در مقیاس ارزان است.
واقعیت از منظر تاجر این است که این اسپم با فرکانس بالا است، نه یک مورد حاشیهای. لجر بیش از 270 میلیون تلاش انتقال با ارزش صفر را در سراسر اتریوم و زنجیره BNB و 83 میلیون دلار ضرر تأیید شده ذکر میکند. روششناسی پشت این تجمیعها در بخش ارائه شده ارائه نشده است، اما نکته جهتدار این است: حمله ارزان است و تنها به یک بخش کوچک از قربانیان نیاز دارد تا به اشتباه ارسال کنند.
نزدیک به پایان هر چکلیست امنیت کیف پول، همان موضوع کلی دوباره مطرح میشود: کلاهبرداریهای کیف پول کریپتو و چگونگی جلوگیری از آنها. مسمومیت آدرس نسخهای است که اجرای بیدقت را مجازات میکند، بنابراین عادت پیشگیری این است که "آدرس کامل را تأیید کنید، سپس برای اندازه ارسال تست کنید" بهطور خودکار مانند بررسی اندازه و مکان قبل از یک معامله شود.
منابع
ترزور
Revoke.cash
پرسشهای متداول
اسکمی به نام مسمومیت آدرس چیست؟
یک اسکیم مسمومیت آدرس یک آدرس مشابه را در تاریخچه کیف پول یا اکسپلورر بلاک شما قرار میدهد تا شما بعداً آن را کپی کرده و وجوه واقعی را به مهاجم ارسال کنید. این روش معمولاً از توکنهای جعلی یا انتقال با ارزش صفر برای ایجاد ورودیهای تاریخچه قانعکننده استفاده میکند. بلاکچین ممکن است به طور عادی کار کند در حالی که کاربر توسط رابط کاربری فریب میخورد.
آیا یک انتقال با ارزش صفر میتواند به تنهایی وجوه من را سرقت کند؟
یک انتقال با ارزش صفر ارزش را جابجا نمیکند، اما میتواند یک رکورد "ارسال شده" ایجاد کند که تاریخچه شما را مسموم کرده و زمینه را برای یک ارسال اشتباه بعدی فراهم میکند. در زنجیرههای EVM، این میتواند از طریق منطق transferFrom موفق شود حتی زمانی که مجوز صفر باشد زیرا 0 کمتر از یا برابر با 0 است. ضرر زمانی اتفاق میافتد که شخصی بعداً آدرس دریافتکننده مسموم شده را کپی کند.
آیا بررسی ۴ کاراکتر اول و آخر یک آدرس کیف پول کافی است؟
خیر. Revoke.cash هشدار میدهد که کلاهبرداران میتوانند آدرسهای زینتی ایجاد کنند که با ۴ کاراکتر اول و آخر که در بسیاری از رابطهای کاربری کیف پول میبینید، مطابقت داشته باشد. تأیید کامل آدرس، بهویژه در صفحه تأیید کیف پول سختافزاری، کنترلی است که واقعاً شکاف را میبندد.
اگر مسمومیت آدرس را در تاریخچه تراکنش خود ببینم، آیا کلید خصوصی من به خطر افتاده است؟
ضروری نیست. Trezor بیان میکند که نیازی به نگرانی در مورد نشت کلیدهای خصوصی در یک سناریوی پایه مسمومیت آدرس وجود ندارد. خطر ارسال وجوه به دریافتکننده اشتباه به دلیل کپیبرداری یا تأیید ناکافی است.
چگونه میتوانم از مسمومیت آدرس هنگام ارسال به یک صرافی یا استفاده مجدد از یک آدرس جلوگیری کنم؟
آدرسهای مقصد را از تاریخچه تراکنش خود یا یک زبانه اکسپلورر بلاک قدیمی استخراج نکنید. هر بار آدرس واریز را از صفحه واریز صرافی کپی کنید، یا از یک لیست مجاز/دفترچه آدرس که خودتان ایجاد کردهاید استفاده کنید. برای انتقالهای بزرگ، Trezor توصیه میکند که ابتدا یک ارسال آزمایشی کوچک انجام دهید حتی اگر به معنای پرداخت گاز دو بار باشد.