حملات RPC Spoofing چیست؟
چگونه یک RPC مخرب میتواند اطلاعات کیف پول را دستکاری کند؟
تصور کنید برای استفاده از یک برنامه غیرمتمرکز، پیغامی دریافت میکنید: «برای اتصال سریعتر و دریافت پاداش، شبکه جدید را به کیف پول خود اضافه کنید.» در ادامه، یک آدرس RPC در اختیار شما قرار میگیرد. کاربر تصور میکند RPC صرفاً یک تنظیم فنی برای اتصال به بلاکچین است و خطری ندارد. اما آیا همیشه چنین است؟ RPC یکی از مسیرهای ارتباط کیف پول با شبکه بلاکچین است. اگر این مسیر به سروری ناشناس یا مخرب متصل شود، ممکن است اطلاعاتی که کیف پول دریافت میکند نادرست، ناقص یا دستکاریشده باشند. البته یک نکته مهم وجود دارد: تغییر RPC بهتنهایی به معنی افشای Private Key یا انتقال خودکار دارایی نیست. خطر اصلی به اطلاعات ارائهشده توسط سرور، درخواستهای بعدی و تصمیمهایی مربوط میشود که کاربر براساس آن اطلاعات میگیرد. فهرست مطالب ۱. RPC چیست؟ ۲. نقش RPC در کیف پول ۳. RPC مخرب چه کاری میتواند انجام دهد؟ ۴. محدودیتهای مهاجم ۵. سناریوهای فریب ۶. روشهای شناسایی ۷. اقدامات پس از اتصال به RPC مشکوک ۸. نکات Forensics
۱. RPC چیست؟
RPC مخفف Remote Procedure Call است.
در شبکههایی مانند Ethereum، کیف پول از طریق یک RPC Endpoint میتواند اطلاعات بلاکچین را دریافت کند یا تراکنش امضاشده را برای انتشار ارسال کند.
برای مثال، کیف پول ممکن است از RPC بپرسد:
- موجودی آدرس چقدر است؟
- آخرین شماره بلاک چیست؟
- وضعیت تراکنش چگونه است؟
- مقدار Gas موردنیاز چقدر است؟
- نتیجه اجرای آزمایشی یک فراخوانی چیست؟
این اطلاعات در تجربه کاربری و تصمیمگیری هنگام انجام تراکنش نقش مهمی دارند.
۲. RPC Node چه تفاوتی با کیف پول دارد؟
کیف پول معمولاً مسئول مدیریت کلیدها و امضای تراکنشهاست.
RPC Node اطلاعات شبکه را ارائه میدهد و تراکنشهای امضاشده را دریافت یا منتشر میکند.
ساختار ساده:
User
↓
Wallet Application
↓
RPC Endpoint
↓
Blockchain Network
در این معماری، RPC برای پاسخگویی به درخواستهای عمومی نیازی به دانستن Seed Phrase کاربر ندارد.
اگر سایتی با عنوان تنظیم RPC از شما Seed Phrase درخواست کند، این یک نشانه خطر بسیار جدی است.
۳. RPC مخرب چه تواناییهایی دارد؟
تواناییهای واقعی یک RPC مخرب به نوع درخواست، معماری کیف پول و بررسیهای امنیتی آن بستگی دارد.
اما بهطور کلی ممکن است بتواند:
اطلاعات نادرست ارائه دهد
برای مثال، موجودی یا وضعیت تراکنش را نادرست گزارش کند.
پاسخها را سانسور کند
ممکن است بعضی تراکنشها یا دادهها را در پاسخ نمایش ندهد.
انتشار تراکنش را مختل کند
ممکن است تراکنش امضاشده را به شبکه منتشر نکند یا ارسال آن را به تأخیر بیندازد.
اطلاعات ارتباطی را مشاهده کند
سرور RPC میتواند برخی درخواستهای عمومی کیف پول، آدرسهای مورد پرسوجو و اطلاعات اتصال شبکه را مشاهده کند.
دادههای مورد استفاده در رابط کاربری را تحت تأثیر قرار دهد
اگر کیف پول بدون بررسی مستقل به پاسخ RPC اعتماد کند، ممکن است اطلاعات نادرستی به کاربر نمایش داده شود.
با این حال، سرور RPC نمیتواند صرفاً با ارسال یک پاسخ جعلی، امضای معتبر تراکنش را جعل کند یا قوانین اجماع بلاکچین را تغییر دهد.
۴. آیا RPC میتواند موجودی جعلی نمایش دهد؟
در برخی شرایط، بله.
فرض کنید کیف پول برای دریافت موجودی از یک RPC ناشناس استفاده کند.
سرور میتواند پاسخ نادرستی ارائه دهد.
برای مثال:
Actual Balance:
0.5 ETH
RPC Response:
5 ETH
اما این موضوع به معنای ایجاد پنج ETH واقعی روی بلاکچین نیست.
اگر اطلاعات از طریق یک منبع مستقل و معتبر بررسی شوند، اختلاف قابل شناسایی خواهد بود.
همچنین همه کیف پولها به یک اندازه به یک RPC اعتماد نمیکنند و بعضی از آنها از کنترلها یا سرویسهای مستقل استفاده میکنند.
۵. سناریوی فریب با شبکه جعلی
فرض کنید کاربر در یک شبکه اجتماعی با پیغامی مواجه میشود:
«برای دریافت توکن جدید، این شبکه را به کیف پول اضافه کنید.»
اطلاعات ارائهشده شامل موارد زیر است:
Network Name:
Reward Mainnet
RPC URL:
https://example.invalid/rpc
Chain ID:
...
این اطلاعات صرفاً یک نمونه فرضی هستند.
کاربر شبکه را اضافه میکند و سپس وارد یک وبسایت میشود که از او میخواهد تراکنشی را تأیید کند.
در چنین سناریویی، خطر ممکن است ترکیبی از چند عامل باشد:
- شبکه یا RPC ناشناس
- وبسایت فیشینگ
- اطلاعات گمراهکننده
- درخواست امضای تراکنش
بنابراین نباید کل حمله را فقط به RPC نسبت داد.
۶. آیا Chain ID از حمله جلوگیری میکند؟
Chain ID یکی از عناصر مهم شناسایی شبکه و امضای تراکنش در بسیاری از شبکههای EVM است.
این مقدار به کاهش خطر بازپخش تراکنش میان شبکههای مختلف کمک میکند.
اما Chain ID بهتنهایی اثبات نمیکند RPC مورد استفاده معتبر یا قابل اعتماد است.
ممکن است یک سرور ناشناس خود را برای شبکهای شناختهشده معرفی کند.
بنابراین باید آدرس RPC و مشخصات شبکه نیز از منابع معتبر بررسی شوند.
۷. حمله به دادههای Gas
کیف پولها برای تخمین هزینه تراکنش ممکن است از اطلاعات شبکه و RPC استفاده کنند.
یک RPC مخرب میتواند تخمینهای نادرست ارائه دهد.
نتیجه ممکن است افزایش هزینه پیشنهادی یا اختلال در تجربه انجام تراکنش باشد.
با این حال، میزان واقعی کارمزد پرداختشده تابع تراکنش امضاشده و قواعد شبکه است؛ صرف پاسخ RPC نمیتواند بدون امضای کاربر هر مبلغ دلخواهی را از کیف پول برداشت کند.
به همین دلیل، بررسی جزئیات تراکنش قبل از امضا همچنان ضروری است.
۸. تفاوت RPC Spoofing و Wallet Drainer
این دو مفهوم با یکدیگر تفاوت دارند.
ویژگی
RPC مخرب
Wallet Drainer
هدف اصلی
دستکاری یا کنترل دادههای ارتباط با شبکه
ایجاد امکان انتقال غیرمجاز دارایی
نیاز به Seed Phrase
معمولاً خیر
الزاماً خیر
امکان ارائه اطلاعات جعلی
بله
بسته به زیرساخت
انتقال مستقیم دارایی بدون امضای معتبر
بهتنهایی خیر
وابسته به مجوز یا دسترسی کسبشده
ممکن است یک حمله پیچیده از هر دو روش استفاده کند، اما این دو یکسان نیستند.
۹. چگونه RPC معتبر را تشخیص دهیم؟
اولین اصل، بررسی منبع معرفی RPC است.
اگر یک شبکه معتبر قصد استفاده از RPC اختصاصی داشته باشد، اطلاعات آن معمولاً در مستندات رسمی منتشر میشود.
هنگام افزودن شبکه باید این موارد را بررسی کنید:
Network Name: آیا با شبکه موردنظر مطابقت دارد؟
Chain ID: آیا مقدار آن صحیح است؟
RPC URL: آیا در مستندات معتبر معرفی شده است؟
Currency Symbol: آیا با ارز بومی شبکه سازگار است؟
Block Explorer: آیا آدرس Explorer معتبر است؟
صرف وجود HTTPS به معنی معتبر بودن RPC نیست؛ HTTPS ارتباط را رمزگذاری میکند، اما صداقت سرور را تضمین نمیکند.
۱۰. بررسی مستقل موجودی
اگر موجودی نمایشدادهشده در کیف پول غیرعادی است، آن را از منبع مستقلی بررسی کنید.
برای مثال، میتوانید آدرس عمومی خود را در یک Explorer معتبر وارد کنید.
اگر موجودی نمایشدادهشده در Explorer با کیف پول اختلاف قابل توجهی دارد، باید علت بررسی شود.
البته اختلاف ممکن است ناشی از تأخیر همگامسازی، انتخاب شبکه اشتباه یا مشکل نمایش توکن نیز باشد.
بنابراین اختلاف موجودی بهتنهایی اثباتکننده حمله نیست.
۱۱. اگر به RPC ناشناس متصل شدهایم چه کنیم؟
ابتدا از امضای درخواستهای جدید خودداری کنید.
سپس تنظیمات شبکه را بررسی کنید.
اگر RPC از منبع نامعتبر اضافه شده است، میتوان آن را با Endpoint معتبر جایگزین کرد.
بعد از آن:
۱. موجودی را از منبع مستقل بررسی کنید.
۲. تراکنشهای اخیر را مرور کنید.
۳. مجوزهای توکن را بررسی کنید.
۴. سایتهای متصل و درخواستهای امضاشده را ارزیابی کنید.
۵. اگر اطلاعات محرمانه افشا شدهاند، موضوع را بهعنوان احتمال compromise شدن کیف پول بررسی کنید.
صرف اتصال به RPC ناشناس الزاماً به معنی نیاز فوری به انتقال تمام داراییها نیست؛ تصمیم باید براساس نوع دسترسی و اقدامات انجامشده اتخاذ شود.
۱۲. اهمیت RPC در Blockchain Forensics
موضوع RPC فقط یک هشدار امنیتی برای کاربران نیست.
در تحقیقات تخصصی نیز کیفیت منبع داده اهمیت دارد.
فرض کنید تحلیلگر تمام اطلاعات پرونده را از یک RPC ناشناس دریافت کند.
اگر آن سرور پاسخهای ناقص یا نادرست ارائه دهد، ممکن است تحلیل نیز تحت تأثیر قرار گیرد.
برای افزایش اعتبار بررسی، بهتر است:
- شناسه تراکنشها با منابع مستقل تطبیق داده شوند.
- Block Number و Block Hash ثبت شوند.
- آدرس کامل قراردادها نگهداری شود.
- پاسخهای مهم RPC در صورت نیاز ذخیره شوند.
- ابزار و Endpoint مورد استفاده مستند شود.

۱۳. آیا استفاده از چند RPC بهتر است؟
برای تحقیقات حساس، مقایسه اطلاعات از منابع مستقل میتواند مفید باشد.
اما تعداد زیاد منابع بهتنهایی کافی نیست.
ممکن است چند سرویس در پشت صحنه از زیرساخت داده مشترک استفاده کنند.
به همین دلیل باید استقلال و اعتبار منابع نیز بررسی شود.
۱۴. حفظ شواهد در پرونده RPC مخرب
اگر احتمال میدهید کاربر از طریق یک RPC یا وبسایت جعلی فریب خورده است، این اطلاعات را حفظ کنید:
- RPC URL
- Network Name
- Chain ID
- آدرس وبسایت معرفیکننده
- تصاویر تنظیمات کیف پول
- تاریخ و زمان اتصال
- تراکنشهای امضاشده
- TXIDها
- پیامهای دریافتی از مهاجم
- نسخه کیف پول و سیستمعامل
در پروندههای قضایی، این اطلاعات میتوانند برای بازسازی ترتیب رویدادها اهمیت داشته باشند.
۱۵. پنج توصیه امنیتی
۱. شبکههای ناشناس را صرفاً براساس پیامهای شبکه اجتماعی اضافه نکنید.
۲. RPC را از مستندات معتبر دریافت کنید.
۳. اطلاعات غیرعادی موجودی را با Explorer مستقل بررسی کنید.
۴. هیچ درخواست امضایی را صرفاً به دلیل اتصال به یک شبکه جدید تأیید نکنید.
۵. Seed Phrase و Private Key را برای تنظیم RPC در اختیار هیچ شخص یا وبسایتی قرار ندهید.
پرسشهای متداول
آیا RPC مخرب میتواند Seed Phrase را بخواند؟
در معماری معمول کیف پول، خیر. RPC برای پاسخگویی به درخواستهای شبکه نیازی به Seed Phrase ندارد.
آیا تغییر RPC باعث تغییر دارایی واقعی میشود؟
خیر. تغییر RPC بهخودیخود موجودی واقعی ثبتشده روی بلاکچین را تغییر نمیدهد.
آیا RPC رایگان ناامن است؟
لزوماً خیر. رایگان یا پولی بودن بهتنهایی معیار امنیت نیست. اعتبار ارائهدهنده و صحت اطلاعات اهمیت بیشتری دارد.
آیا VPN از RPC Spoofing جلوگیری میکند؟
VPN میتواند بخشی از ارتباط شبکه را محافظت کند، اما اگر خود کاربر یک RPC مخرب را انتخاب کرده باشد، VPN آن سرور را معتبر نمیکند.
نتیجهگیری
RPC بخش مهمی از زیرساخت ارتباط کیف پول با بلاکچین است.
یک RPC مخرب ممکن است اطلاعات نادرست ارائه دهد، پاسخها را محدود کند یا دادههای ارتباطی کاربر را مشاهده کند.
اما نباید توانایی آن را بیش از حد تصور کرد: RPC بهتنهایی اختیار امضای تراکنش یا دسترسی به Private Key را ایجاد نمیکند.
امنیت واقعی به ترکیب انتخاب Endpoint معتبر، بررسی مستقل دادهها و دقت در امضای تراکنشها وابسته است.
دعوت به اقدام: اگر برای استفاده از یک DApp مجبور به افزودن شبکه یا RPC جدید شدهاید، پیش از انجام تراکنش، مشخصات شبکه و آدرس Endpoint را با منابع رسمی تطبیق دهید.
بلاگها و مقالات
مشاهده همه
Wallet Drainer چیست؟
فرض کنید وارد وبسایتی میشوید که ادعا میکند به مناسبت سالگرد یک پروژه رمزارزی، توکن رایگان توزیع میکند. ظاهر سایت حرفهای است. لوگوی پروژه، تعداد شرکتکنندگان و شمارش معکوس نیز نمایش داده میشود. برای دریافت پاداش فقط باید کیف پول خود را متصل کنید. پس از اتصال، پیغامی برای تأیید یک درخواست ظاهر میشود. کاربر تصور میکند این درخواست صرفاً برای دریافت Airdrop است. اما چند دقیقه بعد، بخشی از دارایی کیف پول او بدون انتظار قبلی منتقل میشود. در چنین شرایطی ممکن است کاربر قربانی یک Wallet Drainer شده باشد. Wallet Drainer به ابزار یا زیرساخت مخربی گفته میشود که برای فریب کاربر و انتقال غیرمجاز دارایی او طراحی شده است. این حمله الزاماً به شکستن رمزنگاری بلاکچین یا سرقت مستقیم Private Key نیاز ندارد. گاهی مهاجم از همان مجوز یا امضایی استفاده میکند که قربانی با تصور دیگری تأیید کرده است.
Crypto Recovery Scam چیست؟
فردی 50,000 USDT در یک کلاهبرداری از دست داده است. برای پیدا کردن راهحل، موضوع را در شبکه اجتماعی یا یک Forum مطرح میکند. چند ساعت بعد پیامی دریافت میکند: «ما یک تیم Blockchain Recovery هستیم. پول شما را پیدا کردهایم و میتوانیم ظرف ۴۸ ساعت آن را برگردانیم.» برای شروع فقط باید: 1,500 USDT Recovery Fee پرداخت کند. قربانی که به دنبال بازگرداندن سرمایه خود است، مبلغ را میپردازد. کمی بعد درخواست دیگری میآید: «دارایی Freeze شده است؛ برای آزادسازی باید Tax پرداخت کنید.» این همان Recovery Scam است؛ یعنی هدفگرفتن فردی که قبلاً قربانی شده است.
Dusting Attack چیست؟
یک روز Wallet خود را باز میکنید و متوجه میشوید مقدار بسیار کوچکی رمزارز دریافت کردهاید. مثلاً: 0.00000... BTC فرستنده را نمیشناسید. هیچ معاملهای هم انجام ندادهاید. مقدار آنقدر ناچیز است که شاید اهمیتی به آن ندهید. اما سؤال اینجاست: چرا یک فرد ناشناس باید برای شما رمزارز ارسال کند؟ یکی از احتمالات، Dusting Attack است. در این روش، مهاجم مقادیر بسیار کوچک رمزارز را به تعداد زیادی Address ارسال میکند و سپس رفتار بعدی آنها را زیر نظر میگیرد. راهنماهای امنیتی منتشرشده در ۲۰۲۶ نیز همچنان Dusting را بهعنوان یک تکنیک برای تحلیل ارتباط میان آدرسها و در برخی سناریوها زمینهسازی برای Phishing معرفی میکنند. Binance.US Help Center
Clipboard Hijacking چیست؟
تصور کنید قصد دارید 10,000 USDT ارسال کنید. آدرس مقصد را از پیام دوست یا صرافی Copy میکنید. وارد Wallet میشوید. Paste میکنید. چند ثانیه بعد Transaction را تأیید میکنید. Blockchain نیز بدون هیچ خطایی تراکنش را ثبت میکند. اما پول به مقصد نمیرسد. چرا؟ چون آدرسی که Paste کردهاید همان آدرسی نبوده که Copy کرده بودید. این سناریو یکی از خطرناکترین نمونههای Clipboard Hijacking است.