فلش تتر / پارت 1

Mestercomuter Mestercomuter Mestercomuter · 9 ساعت پیش · خواندن 13 دقیقه

 

چند وقتی بود در خواست های عجیب و خطرناکی میشد تو ایمیلم و ... و خوب تصیم گرفتم  که امروز آموزش رایگان این مبحث رو شروع کنم 

این مقاله بعد از پارت ۲ یا ۳ اولین مقاله تخصصی و آموزش رایگان این کار در ایران محسوب میشه نبوده تا قبل ما صرفا یک تعداد ویدیو اینستاگرامی و یوتیوبی بوده و تمام اما اینجا میخوای یادش بگیریم پیش‌نیازش اینه که از ابتدا تا انتها این مقاله کامل بخونید پس فکر نکنید که خوب برید از دو سه به بعد بیاید چون باز مثل دوستان حباب بانکی مون سوال کنید میگم فلان پارتو بخون ۱۰ بار بخون ۱۰۰ بار بخون ! قرار همه چیز رو کامل از 0 تا حالا نه 100 ولی ۹۰ یا ۸۰ بگیم آدم باشید دیگه 😐 بعد بلاگم دنبال کنید دونیت هم بدید آنقدر ناخون خشک نباشین .

بریم سراغ آموزش :

 

احتمالاً تا حالا اسم Flash USDT یا همون «تتر فلش» به گوشتون خورده.
توی کانال‌های تلگرامی، سایت‌های مختلف و حتی بعضی ویدیوهای آموزشی، چیزهایی مثل این تبلیغ میشه:
«با Flash USDT می‌تونی تتر بفرستی که چند روز توی کیف پول بمونه.»
یا:
«تتر فلش روی بلاکچین ثبت میشه و بعد از مدتی ناپدید میشه.»
یا حتی ادعاهای عجیب‌تر:
«تتر واقعی تولید کن، بدون اینکه موجودی واقعی داشته باشی.»
خب، اینجا باید یک سؤال ساده بپرسیم:
واقعاً چنین چیزی در بلاکچین وجود داره؟
جواب کوتاه:
نه.
چیزی به اسم «USDT واقعی ولی موقت» که مثلاً ۳۰ یا ۹۰ روز معتبر باشه و بعد خودش از بلاکچین پاک بشه، وجود نداره.
اما داستان از اینجا جالب میشه؛ چون چیزی که مردم به اسم Flash USDT می‌شناسن، می‌تونه با روش‌های مختلف کاری کنه که یک مقدار USDT جعلی یا یک تراکنش ناموفق، برای کاربر شبیه یک انتقال واقعی به نظر برسه.
و دقیقاً همین قسمت باعث شده این کلاهبرداری هنوز هم قربانی داشته باشه.

 

 

قهوه بده بیا ادامه مطلب 

 

☕ حمایت از بلاگ

با خرید قهوه، به تولید محتوای امنیتی کمک کنید

حمایت مالی

Flash USDT دقیقاً چیه؟

قبل از هر چیز باید یک سوءتفاهم رو برطرف کنیم.
Flash USDT یک استاندارد رسمی تتر نیست.
Tether خودش چیزی با عنوان Flash USDT ارائه نکرده.
در واقع این اسم بیشتر یک اصطلاح بازاری برای چند مدل مختلف

 کلاهبرداری یا جعل تراکنش استفاده میشه.
رایج‌ترین حالت اینه که یک نفر یک توکن جعلی می‌سازه و اسم و نماد اون رو می‌ذاره:
Tether USD
و:
USDT
حتی ممکنه لوگوی تتر رو هم روی اون بذاره.
ولی اسم و لوگو هیچ اهمیتی نداره.
در بلاکچین چیزی که واقعاً اهمیت داره Contract Address هست.
یعنی ممکنه دو توکن هر دو اسمشون USDT باشه، 

ولی چون قراردادشون متفاوت هست، در واقع دو دارایی کاملاً متفاوت هستند.

پس Flash USDT چه نوع حمله‌ایه؟

اگر بخوایم از دید امنیتی دسته‌بندی کنیم، Flash USDT رو نمی‌شه یک 

حمله واحد مثل SQL Injection یا XSS دونست.

بیشتر با یک Fraud / Social Engineering + Blockchain Impersonation طرف هستیم.

یعنی بخش فنی ماجرا با بلاکچین و توکن سروکار داره

ولی بخش اصلی حمله روی اعتماد انسان انجام میشه

مهاجم کاری می‌کنه که قربانی فکر کنه:

«من پول رو دریافت کردم.»

در حالی که چیزی که دیده:

USDT واقعی نیست

یا تراکنش نهایی نشده

یا اصلاً تراکنش واقعی وجود نداره

یا چیزی که می‌بینه فقط در رابط کاربری جعل شده

و بعد قربانی در مقابل اون پول کالای واقعی خدمات یا ارز دیجیتال واقعی تحویل میده.

یک نکته خیلی مهم: اسم USDT قابل اعتماد نیست!

فرض کنید داخل کیف پول شما نوشته:

10,000 USDT

آیا یعنی واقعاً ۱۰ هزار تتر دارید؟

نه.

کیف پول صرفاً اطلاعاتی را که از شبکه و قراردادهای توکن دریافت می‌کند نمایش می‌دهد.

در استانداردهای توکنی مثل ERC-20، هر قرارداد می‌تواند متغیرهایی مثل name، symbol و balanceOf داشته باشد. حتی قرارداد رسمی تتر هم همین ساختار توکنی را دارد.

بنابراین یک قرارداد جعلی هم می‌تواند خودش را با نام:

USDT

معرفی کند.

ولی این قرارداد هیچ ارتباطی با Tether واقعی نداره.


چه چیزهایی ممکنه در Flash USDT تغییر کنه؟

بستگی به نوع کلاهبرداری داره.

۱. موجودی نمایشی

مثلاً کیف پول نشان می‌ده:

10,000 USDT

اما این مقدار مربوط به یک توکن جعلی هست.


نام و Symbol توکن

مهاجم می‌توانه توکن خودش رو طوری تعریف کنه که مثلاً:

name = Tether USD

و:

symbol = USDT

باشه.

این کار باعث می‌شه کاربر عادی سریع متوجه جعلی بودن توکن نشه.


مقدار Transfer

ممکن هست یک Transfer Event مربوط به توکن جعلی ایجاد شه.

مثلاً:

From → To

و مقدار:

10,000

در Explorer دیده شه.

اما باید ببینیم این Event توسط کدوم Contract ایجاد شده.

اگر قرارداد، قرارداد رسمی USDT نباشه، دیدن کلمه USDT به‌تنهایی هیچ ارزشی نداره.


۴. وضعیت تراکنش
در بعضی سناریوها اصلاً انتقال نهایی نشده.
ممکن است تراکنش در مرحله Pending باشد و کیف پول یا رابط کاربری آن را به شکلی نمایش دهد که کاربر تصور کند پرداخت انجام شده.
اگر تراکنش وارد بلاک نشود، در نهایت آن انتقال به عنوان یک تغییر دائمی در State شبکه باقی نمی‌ماند.
اما یک سؤال مهم‌تر:
این تراکنش فیک چطور از شبکه عبور می‌کنه؟
اینجا باید یک اشتباه رایج رو اصلاح کنیم.
بعضی‌ها فکر می‌کنند Flash USDT یک تراکنش جادویی می‌سازه که:
از کیف پول → وارد شبکه → به مقصد → بعد یهو برمی‌گرده.
بلاکچین اینطوری کار نمی‌کنه.
بیایید مسیر یک تراکنش واقعی را ببینیم.
مسیر یک تراکنش واقعی USDT
فرض کنیم شما واقعاً 100 USDT دارید و می‌خواهید برای شخص دیگری ارسال کنید.
تقریباً این مسیر را داریم:
Wallet

Transaction Construction

Digital Signature

RPC Node

Network / Transaction Pool

Block Producer / Validator

Block Inclusion

State Update

Token Contract

Recipient Balance
وقتی تراکنش واقعاً تأیید و در بلاک ثبت شد، وضعیت شبکه تغییر می‌کند.
در مورد یک توکن استاندارد، قرارداد توکن وضعیت موجودی‌ها را نگهداری می‌کند.
در ساده‌ترین حالت ذهنی می‌توانیم این اتفاق را این‌طور تصور کنیم:
sender balance -= amount
و:
receiver balance += amount
البته پیاده‌سازی واقعی بسته به شبکه و قرارداد متفاوت است.
حالا Flash USDT کجای این مسیر تقلب می‌کنه؟
اینجا قسمت جالب ماجراست.
در واقع یک روش واحد وجود ندارد.
چند سناریو مختلف وجود دارد


سناریو اول: توکن جعلی
این یکی از رایج‌ترین روش‌هاست.
مهاجم یک Smart Contract جدید ایجاد می‌کند.
مثلاً:
FakeUSDT
ولی اسمش را می‌گذارد:
Tether USD
و Symbol را:
USDT
بعد مقداری از این توکن را به آدرس قربانی می‌فرستد.
این تراکنش می‌تواند واقعاً روی بلاکچین ثبت شده باشد!
و این دقیقاً جایی است که خیلی‌ها اشتباه می‌کنند.
می‌گویند:
«داداش تراکنش روی Blockchain Explorer هست! پس واقعیه.»
نه.
ممکنه تراکنش واقعی باشه، ولی توکن داخلش جعلی باشه.
این دو تا با هم فرق دارند.

یعنی تراکنش واقعی ولی پول جعلی

این یکی از مهم‌ترین نکات Flash USDT است.

ممکن است:

Transaction = واقعی

ولی:

Token = جعلی

باشد.

مثلاً شما در Explorer یک Transfer می‌بینید:

10000 USDT

اما اگر Contract Address را بررسی کنید، متوجه می‌شوید که این انتقال توسط قرارداد رسمی USDT انجام نشده.

پس بلاکچین دروغ نگفته.

بلاکچین واقعاً گفته:

«این آدرس ۱۰ هزار واحد از این توکن را به آن آدرس منتقل کرد.»

مشکل اینجاست که کاربر فکر کرده:

«این توکن همان USDT شرکت Tether است.»

در حالی که نیست.


سناریو دوم: تراکنش Pending و بعد Drop می‌شود
حالت دوم کاملاً متفاوت است.
کاربر یک تراکنش را Broadcast می‌کند.
تراکنش وارد لایه‌ای می‌شود که می‌توانیم به زبان ساده به آن Transaction Pool یا Mempool بگوییم.
در این لحظه ممکن است تراکنش هنوز داخل بلاک قرار نگرفته باشد.
پس:
Broadcast شدن ≠ Confirm شدن
این دو تا را نباید با هم اشتباه بگیریم.
ممکن است کیف پول برای چند لحظه چیزی شبیه:
Pending
نمایش دهد.
اما اگر تراکنش:
رد شود
منقضی شود
توسط شبکه کنار گذاشته شود
یا اصلاً در بلاک قرار نگیرد
آن State Change دائمی که کاربر انتظار داشته اتفاق نمی‌افتد.
پس چیزی واقعاً «از بلاکچین نپریده».
اصلاً از اول به شکل نهایی وارد State بلاکچین نشده بوده.

پس چرا بعضی‌ها می‌گن «یهو پرید»؟
چون چیزی که کاربر می‌دید الزاماً همان چیزی نبوده که Blockchain به عنوان State نهایی ثبت کرده.
ممکن است:
Wallet UI
چیزی را نمایش داده باشد که هنوز نهایی نشده.
یا:
Fake Token
با نام USDT نمایش داده شده باشد.
یا:
Fake Explorer / Fake Wallet
اطلاعات ساختگی نشان داده باشد.
یا حتی:
Screenshot / Video
به عنوان مدرک پرداخت استفاده شده باشد.
به همین دلیل عبارت «پرید» از نظر فنی کمی گمراه‌کننده است.
در بلاکچین واقعی، یک انتقال نهایی USDT قرار نیست بعد از چند روز به خاطر «Flash بودن» خودبه‌خود ناپدید شود.


آیا USDT Flash از اول وجود داشته؟

اینجا باید مراقب یک ادعای رایج در اینترنت باشیم.

خیلی از سایت‌ها یک سال مشخص را به عنوان «اولین Flash USDT» اعلام می‌کنند، اما برای این ادعا یک تاریخ رسمی و قابل اتکا از طرف Tether یا شبکه‌های بلاکچینی وجود ندارد.

بنابراین نمی‌شود با اطمینان گفت:

«اولین Flash USDT دقیقاً در سال X ساخته شد.»

چیزی که می‌توانیم با اطمینان بیشتری بگوییم این است که توکن‌های جعلی و سوءاستفاده از نام و نماد توکن‌های معروف سال‌هاست وجود دارند و اصطلاح «Flash USDT» در سال‌های اخیر به عنوان یک برچسب بازاری برای این نوع کلاهبرداری‌ها بسیار رایج شده است.

حتی در ۲۰۲۵ و ۲۰۲۶ هم همچنان درخواست ساخت چنین ابزارهایی برای توسعه‌دهندگان گزارش شده است.

پس بهتر است در مقاله به جای یک تاریخ ساختگی بنویسیم:

«نمی‌توان یک تاریخ دقیق و رسمی برای اولین Flash USDT تعیین کرد؛ اما نسخه‌های مختلف این کلاهبرداری سال‌هاست وجود دارند و اصطلاح Flash USDT در سال‌های اخیر بسیار رایج شده است.»

چرا بعد از این همه سال هنوز وجود داره؟

چون مشکل اصلی تکنولوژی نیست.

مشکل اعتماد انسانه.

بلاکچین دقیقاً همان چیزی را ثبت می‌کند که قرارداد انجام داده.

ولی بلاکچین نمی‌گوید:

«این توکن از طرف Tether معتبر است.»

این وظیفه کاربر، کیف پول، صرافی یا سرویس دریافت‌کننده است که Contract Address را بررسی کند.

از طرف دیگر ساخت یک توکن جدید روی بسیاری از شبکه‌ها کار سختی نیست.

مهاجم می‌تواند توکنی بسازد که:

اسمش مشابه USDT باشد

Symbol آن USDT باشد

لوگوی مشابه داشته باشد

تعداد زیادی واحد داشته باشد

و حتی تراکنش‌های واقعی روی بلاکچین ایجاد کند

اما تمام این‌ها هنوز به معنی USDT واقعی نیست.

پس چرا کیف پول جلویش را نمی‌گیرد؟

چون کیف پول‌ها قرار نیست هر توکنی را که کسی ایجاد می‌کند ممنوع کنند.

یک Blockchain عمومی است.

هر کسی می‌تواند یک Token Contract ایجاد کند.

مشکل زمانی ایجاد می‌شود که رابط کاربری کیف پول، اطلاعاتی مثل:

USDT

را بدون اینکه کاربر Contract Address را بررسی کند، جلوی چشمش قرار دهد.

به همین دلیل بعضی کیف پول‌ها و سرویس‌ها از Token Lists و سیستم‌های شناسایی دارایی استفاده می‌کنند.

اما باز هم:

اعتماد نهایی باید به Contract Address و وضعیت واقعی شبکه باشد، نه اسم توکن.


چطور بفهمیم USDT واقعی است؟

سه چیز را همیشه چک کنید:

۱. شبکه

مثلاً:

TRON

Ethereum

BNB Chain

Polygon

و غیره.

۲. Contract Address

این مهم‌ترین بخش است.

اسم:

USDT

کافی نیست.

۳. Transaction Status

باید ببینید تراکنش واقعاً در شبکه ثبت و نهایی شده یا فقط Pending است.

و البته باید بررسی کنید که همان قرارداد رسمی USDT روی همان شبکه درگیر انتقال بوده است.


یک اشتباه مرگبار در معاملات P2P

فرض کنید کسی برای شما یک اسکرین‌شات می‌فرستد:

10,000 USDT Sent

و حتی TXID هم می‌دهد.

نباید سریع معامله را تمام کنید.

خودتان TXID را در Explorer رسمی و معتبر شبکه بررسی کنید.

بعد بررسی کنید:

From

To

Token Contract

Amount

Status / Confirmations

اگر هر کدام مشکل داشت، معامله را متوقف کنید.


پس «تراکنش فیک» واقعاً فیکه یا واقعی؟

این قسمت را اگر فقط یک چیز از مقاله یادتان بماند، همین باشد:

Fake USDT لزوماً به معنی Fake Transaction نیست.

ممکن است تراکنش کاملاً واقعی باشد.

ولی دارایی‌ای که منتقل شده:

Fake Token

باشد.

از طرف دیگر ممکن است اصلاً تراکنش نهایی نشده باشد.

و در مدل‌های پیشرفته‌تر حتی ممکن است چیزی که کاربر می‌بیند، اصلاً اطلاعات واقعی شبکه نباشد.

پس سه مفهوم را از هم جدا کنید:

Fake Transaction

Fake Token

Fake Display

این‌ها یکی نیستند.


در اکثر سناریوها چیزی که پشت این اسم قرار دارد یکی از این‌هاست:

توکن جعلی

یا

تراکنش تأییدنشده

یا

جعل رابط کاربری

یا

جعل اطلاعات Explorer

و تمام مدل‌های موفق این کلاهبرداری در نهایت روی یک اشتباه انسانی حساب می‌کنند:

اینکه کاربر ظاهر یک پرداخت را با خود پرداخت اشتباه بگیرد.

در بلاکچین، چیزی که مهم است لوگو نیست.

اسم نیست.

اسکرین‌شات نیست.

حتی یک عدد بزرگ کنار عبارت USDT هم به تنهایی کافی نیست.

چیزی که باید بررسی شود:

Network + Contract Address + Transaction Status + Sender + Receiver

است.

دونیت اگر بدید قول میدم با قهوه هایی که ازتون میگیرم بیشتر بیدار باشم پارت دوم ساخت یک مدل نترس فلش رو اینجا بزارم حال کنید اگه نه باید صبر کنید حوصلم بکشه 🙃🤦‍♂ دیگه میل خودتونه درخواست زیاد داشتید قهوه هم بگیرید 

 

☕ سوخت‌رسانی به هکر

بجان خودم قهوه نخری، شب‌بیداریامو حلالت نمی‌کنم! 🤧

خرید قهوه و نجات شب‌بیداری