تصريح هو وظيفة موسعة للتفويض بموجب معيار ERC-20. ببساطة، يمكنك التوقيع للموافقة على عناوين أخرى لنقل رمزك. المبدأ هو أنك تستخدم توقيعًا للإشارة إلى أن العنوان المخول يمكنه استخدام رموزك من خلال هذا التوقيع، ثم يأخذ العنوان المخول توقيعك للقيام بتفاعل التصريح على السلسلة والحصول على تصريح الاستدعاء ويمكنه تحويل الأصول الخاصة بك. يتم تقسيم توقيع احتيال التصريح من خارج السلسلة عادة إلى ثلاث خطوات:
(1) يقوم المهاجم بتزوير روابط الصيد الاحتيالي أو مواقع الصيد الاحتيالي لتحفيز المستخدمين على التسجيل من خلال المحفظة (بدون تفاعل مع العقد، بدون سلسلة كتل).
كائن التوقيع: DAI/USDC/WETH وغيرها من رموز ERC20 (هنا هو DAI)
حامل:// عنوان التوقيع
spender:// عنوان الصياد
رقم تشفير: 0
صلاحية: 1988064000 // وقت انتهاء الصلاحية
allowed:true
إذا تم التوقيع، سيحصل الغشاش على التوقيع (فترة قيم r، s، v) المستخدمة لسرقة DAI/USDC/WETH وغيرها من الرموز ERC20 (هنا، DAI) من الضحية. عندما يتفاعل الغشاش مع وظيفة الإذن يجب استخدامها).
(2) يقوم المهاجم بالاتصال بوظيفة التصريح لإكمال التفويض.
https://etherscan.io/tx/0x1fe75ad73f19cc4c3b658889dae552bb90cf5cef402789d256ff7c3e091bb662
(3) يقوم المهاجم بالاتصال بوظيفة transferFrom لنقل أصول الضحية وإكمال الهجوم.
دعني أوضح أولا الفرق بين النقل والنقل من. عند نقل ERC20 مباشرة، نقوم عادة بدعوة وظيفة النقل في عقد ERC20، ويُستخدم عادة النقل من عند تفويض طرف ثالث لنقل ERC20 في محفظتنا إلى عناوين أخرى.
https://etherscan.io/tx/0x9c02340896e238fc667c1d84fec78af99b1642c986fe3a81602903af498eb938
توضيح إضافي: هذا التوقيع هو توقيع خارج السلسلة الرئيسية بدون رسوم غازية. بعد أن يحصل المهاجم عليه، سيقوم بتنفيذ إذن ونقل من تفاعلات في السلسلة الرئيسية، لذا لا يمكن رؤية سجل الإذن في سجل السلسلة الرئيسية لعنوان الضحية. يمكن رؤية ذلك في عنوان المهاجم. بشكل عام، هذا التوقيع للاستخدام مرة واحدة ولا يخلق مخاطر احتيالية متكررة أو مستمرة.
تم إطلاق عقد ذكي باسم Permit2 من قبل Uniswap في نهاية عام 2022 لراحة المستخدمين. إنه عقد موافقة على الرموز الذي يسمح بمشاركة وإدارة موافقة الرموز في تطبيقات متميزة. في المستقبل، ومع تكامل المزيد والمزيد من المشاريع مع Permit2، يمكن لعقد Permit2 تحقيق تجربة أكثر توحيدًا في إدارة الموافقات في نظام البيئة التطبيقية وتوفير تكاليف المعاملات على المستخدمين.
قبل ظهور تصريح2، كان تبادل الرموز على Uniswap يتطلب تفويض (الموافقة) ثم التبادل (التبديل)، والذي يتطلب عمليتين ورسوم الغاز لعمليتين. بعد إطلاق تصريح2، يمكن للمستخدمين تفويض جميع حصصهم إلى عقد تصريح2 الخاص بـ Uniswap دفعة واحدة، ويتطلب كل استرداد لاحق توقيعًا خارج السلسلة فقط.
على الرغم من أن Permit2 يحسن تجربة المستخدم، إلا أنه يتبعه هجمات احتيال الصيد المستهدفة لتواقيع Permit2. على غرار احتيال توقيع Permit خارج السلسلة، يعد Permit2 أيضًا احتيال توقيع خارج السلسلة. تنقسم هذه الهجمة بشكل رئيسي إلى أربع خطوات:
(1) الشرط الأساسي هو أن محفظة المستخدم قد استخدمت Uniswap قبل أن تتعرض لعملية احتيال وأذنت بحد الرمز إلى عقد Permit2 الخاص بـ Uniswap (سيسمح Permit2 للمستخدم بتفويض الرصيد الكامل للرمز افتراضيًا).
https://etherscan.io/tx/0xd8f0333b9e0db7175c38c37e490379bde5c83a916bdaa2b9d46ee6bff4412e8f
(2) يقوم المهاجم بتزوير روابط صيد السمك أو صفحات صيد السمك لدفع المستخدمين إلى التوقيع. يحصل المهاجم على معلومات التوقيع المطلوبة، التي تشبه التوقيع الخارجي لصيد السمك.
(3) يقوم المهاجم بدعوة وظيفة التصريح في عقد Permit2 لإكمال الترخيص.
https://etherscan.io/tx/0xd8c3f55dfbc8b368134e6236b296563f506827bd5dc4d6c0df39851fd219d658
(4) يقوم المهاجم بالاتصال بوظيفة transferFrom من عقد Permit2 لنقل أصول الضحية واستكمال الهجوم.
https://etherscan.io/tx/0xf6461e003a55f8ecbe919a47b3c0dc6d0f068e48a941658329e35dc703138486
ملحق: عادة ما تكون هناك عناوين متعددة حيث يتلقى المهاجمون الأصول. عادةً ما يكون أحد المستلمين بأكبر كمية هو المهاجم الذي ينفذ الاحتيال، والآخرين هم عناوين سوداء تقدم خدمة الاحتيال كخدمة (مزودي خدمات الاحتيال كخدمة DaaS). عنوان، مثل PinkDrainer، InfernoDrainer، AngelDrainer، الخ).
eth_sign هو طريقة توقيع مفتوحة يمكنها توقيع أي تجزئة. المهاجم يحتاج فقط لبناء أي بيانات خبيثة تحتاج إلى التوقيع (مثل تحويل الرمز، استدعاء العقد، الحصول على إذن، إلخ) وتحريض المستخدم على التوقيع من خلال eth_sign. يمكن إتمام الهجوم.
سيقدم MetaMask تحذيرًا بالمخاطر عند توقيع eth_sign. تم تعطيل هذه الوظيفة أو توفير تحذيرات من محافظ Web3 مثل imToken و OneKey. يُوصى بأن يقوم جميع مصنعي المحافظ بتعطيل هذه الطريقة لمنع المستخدمين من التعرض للهجمات بسبب نقص الوعي الأمني أو التراكم التقني الضروري.
personal_sign و signTypedData هما طرق توقيع شائعة الاستخدام. عادةً ما يحتاج المستخدمون إلى التحقق بعناية مما إذا كان المبادر، اسم النطاق، محتوى التوقيع، إلخ آمنة. إذا كانت محفوفة بالمخاطر، يجب أن يكونوا أكثر يقظة.
بالإضافة إلى ذلك، إذا تم استخدام personal_sign و signTypedData كـ "تواقيع معمية" مثل ما تم ذكره أعلاه، فإن المستخدم لن يتمكن من رؤية النص الواضح، مما يجعله سهل الاستخدام من قبل عصابات الصيد الاحتيالي، والتي ستزيد أيضًا من مخاطر الصيد الاحتيالي.
من خلال تزوير موقع ويب خبيث أو تعليق حصان على موقع الويب الرسمي للمشروع، يحث المهاجمون المستخدمين على تأكيد العمليات مثل تعيين الموافقة للجميع، والموافقة، وزيادة الموافقة، وزيادة السماح، للحصول على تفويض عمليات أصول المستخدم، وارتكاب السرقة.
(1) setApprovalForAll
أخذ حادث الصيد الخيول PREMINT كمثال، ملف js (https://s3-redwood-labs.premint.xyz/theme/js/boomerang.min.jsعلى موقع المشروع تم حقنه بشفرة خبيثة. ملف js خبيثhttps://s3-redwood-labs-premint-xyz.com/cdn.min.js?v=1658050292559سيتم إنشاء (البوابة) ديناميكيًا. يتم بدء الهجوم بهذا النص الخبيث.
لأن المستخدم لم يكتشف المخاطر في الوقت المناسب، قام بتأكيد عملية setApprovalForAll وتسرب بشكل غير مقصود إذن العملية للأصول، مما أدى إلى سرقة الأصول.
(2) الموافقة
مشابه لـ setApprovalForAll، قام المستخدم بتأكيد عملية الموافقة، ما أدى إلى تسرب تفويض العملية للأصل، مما أدى إلى سرقة الأصل.
الموافقة على عدم التفويض:
https://etherscan.io/tx/0x4b0655a5b75a9c078653939101fffc1d08ff7e5c89b0695ca6db5998214353fa
المهاجم ينقل الأصول من خلال transferFrom:
https://etherscan.io/tx/0x0dedf25777ff5483bf71e70e031aacbaf50124f7ebb6804beb17aee2c15c33e8
مبدأ الهجوم لوظائف زيادة الموافقة وزيادة السماح مشابه لهذا. بشكل افتراضي، الحد الأقصى للمهاجم لتشغيل رموز عنوان الضحية هو 0. ومع ذلك، بعد الحصول على إذن من هاتين الوظيفتين، يزيد المهاجم الحد لرموز الضحية. حد التشغيل، وبعد ذلك يمكن نقل كمية الرموز.
(3)زيادة الموافقة
زيادة الموافقة على سوء التفويض:
https://etherscan.io/tx/0x7ae694080e2ad007fd6fa25f9a22ca0bbbff4358b9bc84cc0a5ba7872118a223
المهاجم يقوم بنقل الأصول من خلال transferFrom:
https://etherscan.io/tx/0x15bc5516ed7490041904f1a4c594c33740060e0f0271cb89fe9ed43c974a7a69
(4)زيادة البدل
زيادة إذن السماح غير المصرح به:
https://etherscan.io/tx/0xbb4fe89c03d8321c5bfed612fb76f0756ac7e99c1efaf7c4d99d99f850d4de53
المهاجم يقوم بتحويل الأصول من خلال transferFrom:
https://etherscan.io/tx/0xb91d7b1440745aa07409be36666bc291ecc661e424b21b855698d488949b920f
تعد عملية الاحتيال بتلويث العناوين واحدة من طرق الاحتيال المتفشية مؤخرًا أيضًا. يراقب المهاجم المعاملات على السلسلة ثم يزور عناوين شريرة استنادًا إلى عنوان المنافس في المعاملات التاريخية للمستخدم المستهدف. عادةً ما تكون أول 4 إلى 6 أرقام وآخر 4 إلى 6 أرقام متعلقة بالخصم الصحيح. عناوين الطرفين متطابقة، ثم يتم استخدام هذه العناوين المزورة الشريرة لتحويل مبالغ صغيرة أو رموز غير قيمة إلى عنوان المستخدم المستهدف.
إذا قام المستخدم المستهدف بنسخ عنوان المعارض من أوامر المعاملات التاريخية للتحويل في المعاملات اللاحقة بسبب عادات شخصية ، فمن المرجح جدًا أن تتم نقل الأصول بشكل خاطئ إلى عنوان خبيث بسبب الإهمال.
في 3 مايو 2024، تم اختراق 1155WBTC، بقيمة تزيد عن 70 مليون دولار أمريكي، بسبب طريقة احتيال الاستقطاب في هذا العنوان.
العنوان الصحيح: 0xd9A1b0B1e1aE382DbDc898Ea68012FfcB2853a91
العنوان الخبيث: 0xd9A1C3788D81257612E2581A6ea0aDa244853a91
المعاملة العادية:
https://etherscan.io/tx/0xb18ab131d251f7429c56a2ae2b1b75ce104fe9e83315a0c71ccf2b20267683ac
تلوث العنوان:
https://etherscan.io/tx/0x87c6e5d56fea35315ba283de8b6422ad390b6b9d8d399d9b93a9051a3e11bf73
المعاملة المنحرفة:
https://etherscan.io/tx/0x3374abc5a9c766ba709651399b6e6162de97ca986abc23f423a9d893c8f5f570
في الوقت الحاضر ، نفذت العديد من المحافظ والمكونات الإضافية للأمان تدريجيا تذكيرات مرئية بالمخاطر لقوائم التصيد السوداء وطرق التصيد الاحتيالي الشائعة ، كما عرضت معلومات التوقيع بشكل كامل أكثر فأكثر ، مما أدى إلى تحسين قدرة المستخدمين العاديين على تحديد هجمات التصيد الاحتيالي. ومع ذلك ، فإن التقنيات الهجومية والدفاعية تتنافس دائما ضد بعضها البعض وتتطور باستمرار. كما تظهر باستمرار المزيد من أساليب التصيد الاحتيالي السرية ، لذلك نحن بحاجة إلى أن نكون أكثر يقظة. يعد استخدام CREATE2 لتجاوز اكتشاف القائمة السوداء للمحافظ والمكونات الإضافية للأمان طريقة شائعة نسبيا مؤخرا.
Create2 هو رمز تشغيل تم إدخاله خلال ترقية Ethereum 'Constantinople' الذي يسمح للمستخدمين بإنشاء عقود ذكية على Ethereum. يولد رمز الإنشاء الأصلي عنوانًا جديدًا بناءً على عنوان الخالق ورقم تسلسلي. يتيح Create2 للمستخدمين حساب العنوان قبل نشر العقد. Create2 هي أداة قوية للغاية لمطوري Ethereum، حيث تتيح التفاعل المتقدم والمرن مع العقود، وحساب عنوان العقد استنادًا إلى المعلمات مسبقًا، والمعاملات خارج السلسلة، والنشر والتكيف المرن لتطبيقات التوزيع النوعية المحددة.
بينما يجلب Create2 فوائد، إلا أنه يخلق مخاطر أمنية جديدة. يمكن استغلال Create2 لإنشاء عناوين جديدة بدون تاريخ من التحويلات الخبيثة، مما يتجاوز اكتشاف القائمة السوداء للمحافظ والتنبيهات الأمنية. عندما يوقع الضحية على عملية تحويل خبيثة، يمكن للمهاجم نشر العقد على عنوان محسوب مسبقًا ونقل أصول الضحية إلى تلك العنوان، وهذه عملية لا رجعة فيها.
ميزات هذا الهجوم:
(1) يسمح بإنشاء عناوين العقد تنبؤيًا، مما يتيح للمهاجمين خداع المستخدمين لمنح الأذونات قبل نشر العقد.
(2) نظرًا لعدم نشر العقد بعد في وقت الترخيص، فإن عنوان الهجوم هو عنوان جديد، ولا يمكن لأداة الكشف توفير تحذير مبكر بناءً على القائمة السوداء التاريخية، مما يزيد من التستر.
هنا مثال على الاحتيال باستخدام CREATE2:
https://etherscan.io/tx/0x83f6bfde97f2fe60d2a4a1f55f9c4ea476c9d87fa0fcd0c1c3592ad6a539ed14
في هذه المعاملة، قام الضحية بتحويل sfrxETH في العنوان إلى العنوان الخبيث (0x4D9f77)، وهو عنوان عقد جديد بدون أي سجلات معاملات.
ولكن عند فتح صفقة إنشاء هذا العقد، يمكنك أن تجد أن العقد أكمل هجوم احتيالي في نفس الوقت الذي تم فيه إنشاؤه، ونقل الأصول من عنوان الضحية.
https://etherscan.io/tx/0x77c79f9c865c64f76dc7f9dff978a0b8081dce72cab7c256ac52a764376f8e52
من خلال النظر إلى تنفيذ هذه المعاملة، يمكنك رؤية أن 0x4d9f7773deb9cc44b34066f5e36a5ec98ac92d40 تم إنشاؤه بعد استدعاء CREATE2.
بالإضافة إلى ذلك، من خلال تحليل العناوين ذات الصلة لـ PinkDrainer، يمكن العثور على أن هذا العنوان يقوم بإنشاء عناوين عقد جديدة للصيد الاحتيالي من خلال CREATE2 يوميًا.
https://etherscan.io/address/0x5d775caa7a0a56cd2d56a480b0f92e3900fe9722#internaltx
تزداد الهجمات الاحتيالية بشكل متزايد، وبسبب الأرباح غير القانونية الهائلة، ظهر سلسلة صناعية سوداء تعتمد على Drainer as a Service (DaaS) تدريجيًا. الأنشطة أكثر نشاطًا تشمل Inferno/MS/Angel/Monkey/Venom/Pink/ Pussy/Medusa، إلخ، يقوم المهاجمون الاحتياليون بشراء هذه الخدمات DaaS، وبسرعة وبحد أدنى، يقومون بإنشاء آلاف من مواقع الصيد الاحتيالية، والحسابات الاحتيالية، إلخ، كشر لهذه الصناعة، مهددة أمن أصول المستخدمين.
خذ مصفي الجحيم، على سبيل المثال، عصابة احتيال سيئة السمعة تضم سكربتات خبيثة على مواقع ويب مختلفة. على سبيل المثال، ينشرون seaport.js و coinbase.js و wallet-connect.js ليتنكروا أنفسهم كوظائف بروتوكول Web3 الشهيرة (Seaport، WalletConnect، و Coinbase) لإغراء المستخدمين بالتكامل أو النقر. بعد تلقي موافقة المستخدم، سيقومون بنقل أصول المستخدمين تلقائيًا إلى عنوان المهاجم. تم اكتشاف أكثر من 14,000 موقع يحتوي على سكربتات Seaport خبيثة، أكثر من 5,500 موقع يحتوي على سكربتات WalletConnect خبيثة، أكثر من 550 موقع يحتوي على سكربتات Coinbase خبيثة، أكثر من 16,000 نطاقًا خبيثًا متعلق بمصفي الجحيم، وتم اكتشاف أكثر من 100 علامة تجارية للعملات المشفرة تأثرت بأسماء العلامات التجارية. يتبع موقع ويب احتيالي متعلق بمصفي الجحيم.
تحتوي الجزء العلوي من الموقع على نصين خبيثين، seaport.js و wallet-connect.js. ميزة نموذجية أخرى لمواقع الصيد الاحتيالية Inferno Drainer هي أن المستخدمين لا يمكنهم فتح مصدر كود الموقع عن طريق النقر بزر الفأرة الأيمن، مما يجعل هذه المواقع الاحتيالية أكثر اختباءً.
تحت إطار خدمة الصيد الاحتيالي كخدمة، يتم تحويل 20% من الأصول المسروقة تلقائيًا إلى عنوان المنظم لـ Inferno Drainer، مع الاحتفاظ بالنسبة المتبقية 80% من قبل الجاني الاحتيالي. بالإضافة إلى ذلك، يقدم Inferno Drainer بانتظام خدمات مجانية لإنشاء واستضافة مواقع الصيد الاحتيالي. أحيانًا تتطلب خدمات الصيد الاحتيالي أيضًا رسومًا بنسبة 30% من الأموال المحتالة. تتعلق هذه المواقع بالصيادين الذين يستطيعون جذب الضحايا لزيارتها ولكنهم يفتقرون إلى القدرة على إنشائها وتصميمها من قبل الهجمات الاحتيالية الذين إما لديهم القدرات التقنية لاستضافة الموقع أو ببساطة لا يرغبون في أداء المهمة بأنفسهم.
إذاً، كيف يعمل هذا الاحتيال DaaS؟ إليك وصفًا خطوة بخطوة لخطة احتيال العملة المشفرة Inferno Drainer:
(1) يروج مستنزف الجحيم لخدمته من خلال قناة تيليجرام تسمى مستنزف الجحيم متعدد السلاسل، وأحيانًا يقوم الهجاة أيضًا بالوصول إلى الخدمة من خلال موقع مستنزف الجحيم.
(2) يقوم المهاجم بإعداد وإنشاء موقع ويب للصيد الاحتيالي الخاص به من خلال وظيفة خدمة DaaS، وينشره من خلال X (تويتر)، ديسكورد ووسائل التواصل الاجتماعي الأخرى.
(3) يتم تحفيز الضحايا على مسح رموز الاستجابة السريعة أو طرق أخرى الموجودة على هذه المواقع الاحتيالية لربط محافظهم.
(4) يقوم مُستَخدِم الأموال بفحص أكثر الأصول قيمة وسهلة النقل للضحية ويباشِر العمليات الخبيثة.
(5) أكد الضحية عملية التحويل.
(6) يتم نقل الأصول إلى الجناة. من الأصول المسروقة، تم نقل 20٪ إلى مطوري Inferno Drainer و 80٪ إلى مهاجمي التصيد الاحتيالي.
يظهر في الصورة أدناه صفحة خدمة DaaS حيث يعرض Inferno Drainer للعملاء إحصائياتهم: عدد الاتصالات (إذا كان الضحية قد قام بالاتصال بالمحفظة إلى موقع الاحتيال)، النقرات الناجحة (إذا قام الضحية بتأكيد العملية)، وقيمة الأصول المسروقة.
يمكن لكل عميل لخدمة DaaS تخصيص وظائفه الخاصة بالتصريف:
(1) أولاً وقبل كل شيء، يجب على المستخدمين عدم النقر على الروابط المجهولة المتنكرة كأخبار جيدة مثل المكافآت، الهبات الجوية، إلخ؛
(2) زيادة حالات سرقة حسابات وسائل التواصل الاجتماعي الرسمية، وقد تكون المعلومات الرسمية أيضًا معلومات تصيد، وأن المعلومات الرسمية لا تعني بالضرورة أنها آمنة تمامًا؛
(3) عند استخدام المحافظ والتطبيقات اللامركزية والتطبيقات الأخرى ، يجب الانتباه إلى الفحص والحذر من المواقع المزيفة والتطبيقات المزيفة ؛
(4) أي عملية أو رسالة توقيع تتطلب تأكيد يجب أن تكون حذرًا، ومحاولة تأكيد الهدف والمحتوى والمعلومات الأخرى. رفض التوقيع بشكل أعمى، والبقاء يقظًا، وشك في كل شيء، والتأكد من أن كل خطوة من العملية واضحة وآمنة.
(5) بالإضافة إلى ذلك، يحتاج المستخدمون إلى فهم طرق الاختراق الشائعة المذكورة في هذه المقالة وتعلم التعرف بشكل استباقي على خصائص الاختراق. إتقان التواقيع الشائعة، وظائف الترخيص ومخاطرها، إتقان التفاعل (عنوان URL للتفاعل)، المالك (عنوان المفوض)، النفق (عنوان الطرف المفوض به)، القيمة (العدد المفوض به)، الرقم العشوائي (Nonce)، الموعد النهائي (وقت الانتهاء)، التحويل/نقل من (التحويل) ومحتويات الحقول الأخرى.
Пригласить больше голосов
تصريح هو وظيفة موسعة للتفويض بموجب معيار ERC-20. ببساطة، يمكنك التوقيع للموافقة على عناوين أخرى لنقل رمزك. المبدأ هو أنك تستخدم توقيعًا للإشارة إلى أن العنوان المخول يمكنه استخدام رموزك من خلال هذا التوقيع، ثم يأخذ العنوان المخول توقيعك للقيام بتفاعل التصريح على السلسلة والحصول على تصريح الاستدعاء ويمكنه تحويل الأصول الخاصة بك. يتم تقسيم توقيع احتيال التصريح من خارج السلسلة عادة إلى ثلاث خطوات:
(1) يقوم المهاجم بتزوير روابط الصيد الاحتيالي أو مواقع الصيد الاحتيالي لتحفيز المستخدمين على التسجيل من خلال المحفظة (بدون تفاعل مع العقد، بدون سلسلة كتل).
كائن التوقيع: DAI/USDC/WETH وغيرها من رموز ERC20 (هنا هو DAI)
حامل:// عنوان التوقيع
spender:// عنوان الصياد
رقم تشفير: 0
صلاحية: 1988064000 // وقت انتهاء الصلاحية
allowed:true
إذا تم التوقيع، سيحصل الغشاش على التوقيع (فترة قيم r، s، v) المستخدمة لسرقة DAI/USDC/WETH وغيرها من الرموز ERC20 (هنا، DAI) من الضحية. عندما يتفاعل الغشاش مع وظيفة الإذن يجب استخدامها).
(2) يقوم المهاجم بالاتصال بوظيفة التصريح لإكمال التفويض.
https://etherscan.io/tx/0x1fe75ad73f19cc4c3b658889dae552bb90cf5cef402789d256ff7c3e091bb662
(3) يقوم المهاجم بالاتصال بوظيفة transferFrom لنقل أصول الضحية وإكمال الهجوم.
دعني أوضح أولا الفرق بين النقل والنقل من. عند نقل ERC20 مباشرة، نقوم عادة بدعوة وظيفة النقل في عقد ERC20، ويُستخدم عادة النقل من عند تفويض طرف ثالث لنقل ERC20 في محفظتنا إلى عناوين أخرى.
https://etherscan.io/tx/0x9c02340896e238fc667c1d84fec78af99b1642c986fe3a81602903af498eb938
توضيح إضافي: هذا التوقيع هو توقيع خارج السلسلة الرئيسية بدون رسوم غازية. بعد أن يحصل المهاجم عليه، سيقوم بتنفيذ إذن ونقل من تفاعلات في السلسلة الرئيسية، لذا لا يمكن رؤية سجل الإذن في سجل السلسلة الرئيسية لعنوان الضحية. يمكن رؤية ذلك في عنوان المهاجم. بشكل عام، هذا التوقيع للاستخدام مرة واحدة ولا يخلق مخاطر احتيالية متكررة أو مستمرة.
تم إطلاق عقد ذكي باسم Permit2 من قبل Uniswap في نهاية عام 2022 لراحة المستخدمين. إنه عقد موافقة على الرموز الذي يسمح بمشاركة وإدارة موافقة الرموز في تطبيقات متميزة. في المستقبل، ومع تكامل المزيد والمزيد من المشاريع مع Permit2، يمكن لعقد Permit2 تحقيق تجربة أكثر توحيدًا في إدارة الموافقات في نظام البيئة التطبيقية وتوفير تكاليف المعاملات على المستخدمين.
قبل ظهور تصريح2، كان تبادل الرموز على Uniswap يتطلب تفويض (الموافقة) ثم التبادل (التبديل)، والذي يتطلب عمليتين ورسوم الغاز لعمليتين. بعد إطلاق تصريح2، يمكن للمستخدمين تفويض جميع حصصهم إلى عقد تصريح2 الخاص بـ Uniswap دفعة واحدة، ويتطلب كل استرداد لاحق توقيعًا خارج السلسلة فقط.
على الرغم من أن Permit2 يحسن تجربة المستخدم، إلا أنه يتبعه هجمات احتيال الصيد المستهدفة لتواقيع Permit2. على غرار احتيال توقيع Permit خارج السلسلة، يعد Permit2 أيضًا احتيال توقيع خارج السلسلة. تنقسم هذه الهجمة بشكل رئيسي إلى أربع خطوات:
(1) الشرط الأساسي هو أن محفظة المستخدم قد استخدمت Uniswap قبل أن تتعرض لعملية احتيال وأذنت بحد الرمز إلى عقد Permit2 الخاص بـ Uniswap (سيسمح Permit2 للمستخدم بتفويض الرصيد الكامل للرمز افتراضيًا).
https://etherscan.io/tx/0xd8f0333b9e0db7175c38c37e490379bde5c83a916bdaa2b9d46ee6bff4412e8f
(2) يقوم المهاجم بتزوير روابط صيد السمك أو صفحات صيد السمك لدفع المستخدمين إلى التوقيع. يحصل المهاجم على معلومات التوقيع المطلوبة، التي تشبه التوقيع الخارجي لصيد السمك.
(3) يقوم المهاجم بدعوة وظيفة التصريح في عقد Permit2 لإكمال الترخيص.
https://etherscan.io/tx/0xd8c3f55dfbc8b368134e6236b296563f506827bd5dc4d6c0df39851fd219d658
(4) يقوم المهاجم بالاتصال بوظيفة transferFrom من عقد Permit2 لنقل أصول الضحية واستكمال الهجوم.
https://etherscan.io/tx/0xf6461e003a55f8ecbe919a47b3c0dc6d0f068e48a941658329e35dc703138486
ملحق: عادة ما تكون هناك عناوين متعددة حيث يتلقى المهاجمون الأصول. عادةً ما يكون أحد المستلمين بأكبر كمية هو المهاجم الذي ينفذ الاحتيال، والآخرين هم عناوين سوداء تقدم خدمة الاحتيال كخدمة (مزودي خدمات الاحتيال كخدمة DaaS). عنوان، مثل PinkDrainer، InfernoDrainer، AngelDrainer، الخ).
eth_sign هو طريقة توقيع مفتوحة يمكنها توقيع أي تجزئة. المهاجم يحتاج فقط لبناء أي بيانات خبيثة تحتاج إلى التوقيع (مثل تحويل الرمز، استدعاء العقد، الحصول على إذن، إلخ) وتحريض المستخدم على التوقيع من خلال eth_sign. يمكن إتمام الهجوم.
سيقدم MetaMask تحذيرًا بالمخاطر عند توقيع eth_sign. تم تعطيل هذه الوظيفة أو توفير تحذيرات من محافظ Web3 مثل imToken و OneKey. يُوصى بأن يقوم جميع مصنعي المحافظ بتعطيل هذه الطريقة لمنع المستخدمين من التعرض للهجمات بسبب نقص الوعي الأمني أو التراكم التقني الضروري.
personal_sign و signTypedData هما طرق توقيع شائعة الاستخدام. عادةً ما يحتاج المستخدمون إلى التحقق بعناية مما إذا كان المبادر، اسم النطاق، محتوى التوقيع، إلخ آمنة. إذا كانت محفوفة بالمخاطر، يجب أن يكونوا أكثر يقظة.
بالإضافة إلى ذلك، إذا تم استخدام personal_sign و signTypedData كـ "تواقيع معمية" مثل ما تم ذكره أعلاه، فإن المستخدم لن يتمكن من رؤية النص الواضح، مما يجعله سهل الاستخدام من قبل عصابات الصيد الاحتيالي، والتي ستزيد أيضًا من مخاطر الصيد الاحتيالي.
من خلال تزوير موقع ويب خبيث أو تعليق حصان على موقع الويب الرسمي للمشروع، يحث المهاجمون المستخدمين على تأكيد العمليات مثل تعيين الموافقة للجميع، والموافقة، وزيادة الموافقة، وزيادة السماح، للحصول على تفويض عمليات أصول المستخدم، وارتكاب السرقة.
(1) setApprovalForAll
أخذ حادث الصيد الخيول PREMINT كمثال، ملف js (https://s3-redwood-labs.premint.xyz/theme/js/boomerang.min.jsعلى موقع المشروع تم حقنه بشفرة خبيثة. ملف js خبيثhttps://s3-redwood-labs-premint-xyz.com/cdn.min.js?v=1658050292559سيتم إنشاء (البوابة) ديناميكيًا. يتم بدء الهجوم بهذا النص الخبيث.
لأن المستخدم لم يكتشف المخاطر في الوقت المناسب، قام بتأكيد عملية setApprovalForAll وتسرب بشكل غير مقصود إذن العملية للأصول، مما أدى إلى سرقة الأصول.
(2) الموافقة
مشابه لـ setApprovalForAll، قام المستخدم بتأكيد عملية الموافقة، ما أدى إلى تسرب تفويض العملية للأصل، مما أدى إلى سرقة الأصل.
الموافقة على عدم التفويض:
https://etherscan.io/tx/0x4b0655a5b75a9c078653939101fffc1d08ff7e5c89b0695ca6db5998214353fa
المهاجم ينقل الأصول من خلال transferFrom:
https://etherscan.io/tx/0x0dedf25777ff5483bf71e70e031aacbaf50124f7ebb6804beb17aee2c15c33e8
مبدأ الهجوم لوظائف زيادة الموافقة وزيادة السماح مشابه لهذا. بشكل افتراضي، الحد الأقصى للمهاجم لتشغيل رموز عنوان الضحية هو 0. ومع ذلك، بعد الحصول على إذن من هاتين الوظيفتين، يزيد المهاجم الحد لرموز الضحية. حد التشغيل، وبعد ذلك يمكن نقل كمية الرموز.
(3)زيادة الموافقة
زيادة الموافقة على سوء التفويض:
https://etherscan.io/tx/0x7ae694080e2ad007fd6fa25f9a22ca0bbbff4358b9bc84cc0a5ba7872118a223
المهاجم يقوم بنقل الأصول من خلال transferFrom:
https://etherscan.io/tx/0x15bc5516ed7490041904f1a4c594c33740060e0f0271cb89fe9ed43c974a7a69
(4)زيادة البدل
زيادة إذن السماح غير المصرح به:
https://etherscan.io/tx/0xbb4fe89c03d8321c5bfed612fb76f0756ac7e99c1efaf7c4d99d99f850d4de53
المهاجم يقوم بتحويل الأصول من خلال transferFrom:
https://etherscan.io/tx/0xb91d7b1440745aa07409be36666bc291ecc661e424b21b855698d488949b920f
تعد عملية الاحتيال بتلويث العناوين واحدة من طرق الاحتيال المتفشية مؤخرًا أيضًا. يراقب المهاجم المعاملات على السلسلة ثم يزور عناوين شريرة استنادًا إلى عنوان المنافس في المعاملات التاريخية للمستخدم المستهدف. عادةً ما تكون أول 4 إلى 6 أرقام وآخر 4 إلى 6 أرقام متعلقة بالخصم الصحيح. عناوين الطرفين متطابقة، ثم يتم استخدام هذه العناوين المزورة الشريرة لتحويل مبالغ صغيرة أو رموز غير قيمة إلى عنوان المستخدم المستهدف.
إذا قام المستخدم المستهدف بنسخ عنوان المعارض من أوامر المعاملات التاريخية للتحويل في المعاملات اللاحقة بسبب عادات شخصية ، فمن المرجح جدًا أن تتم نقل الأصول بشكل خاطئ إلى عنوان خبيث بسبب الإهمال.
في 3 مايو 2024، تم اختراق 1155WBTC، بقيمة تزيد عن 70 مليون دولار أمريكي، بسبب طريقة احتيال الاستقطاب في هذا العنوان.
العنوان الصحيح: 0xd9A1b0B1e1aE382DbDc898Ea68012FfcB2853a91
العنوان الخبيث: 0xd9A1C3788D81257612E2581A6ea0aDa244853a91
المعاملة العادية:
https://etherscan.io/tx/0xb18ab131d251f7429c56a2ae2b1b75ce104fe9e83315a0c71ccf2b20267683ac
تلوث العنوان:
https://etherscan.io/tx/0x87c6e5d56fea35315ba283de8b6422ad390b6b9d8d399d9b93a9051a3e11bf73
المعاملة المنحرفة:
https://etherscan.io/tx/0x3374abc5a9c766ba709651399b6e6162de97ca986abc23f423a9d893c8f5f570
في الوقت الحاضر ، نفذت العديد من المحافظ والمكونات الإضافية للأمان تدريجيا تذكيرات مرئية بالمخاطر لقوائم التصيد السوداء وطرق التصيد الاحتيالي الشائعة ، كما عرضت معلومات التوقيع بشكل كامل أكثر فأكثر ، مما أدى إلى تحسين قدرة المستخدمين العاديين على تحديد هجمات التصيد الاحتيالي. ومع ذلك ، فإن التقنيات الهجومية والدفاعية تتنافس دائما ضد بعضها البعض وتتطور باستمرار. كما تظهر باستمرار المزيد من أساليب التصيد الاحتيالي السرية ، لذلك نحن بحاجة إلى أن نكون أكثر يقظة. يعد استخدام CREATE2 لتجاوز اكتشاف القائمة السوداء للمحافظ والمكونات الإضافية للأمان طريقة شائعة نسبيا مؤخرا.
Create2 هو رمز تشغيل تم إدخاله خلال ترقية Ethereum 'Constantinople' الذي يسمح للمستخدمين بإنشاء عقود ذكية على Ethereum. يولد رمز الإنشاء الأصلي عنوانًا جديدًا بناءً على عنوان الخالق ورقم تسلسلي. يتيح Create2 للمستخدمين حساب العنوان قبل نشر العقد. Create2 هي أداة قوية للغاية لمطوري Ethereum، حيث تتيح التفاعل المتقدم والمرن مع العقود، وحساب عنوان العقد استنادًا إلى المعلمات مسبقًا، والمعاملات خارج السلسلة، والنشر والتكيف المرن لتطبيقات التوزيع النوعية المحددة.
بينما يجلب Create2 فوائد، إلا أنه يخلق مخاطر أمنية جديدة. يمكن استغلال Create2 لإنشاء عناوين جديدة بدون تاريخ من التحويلات الخبيثة، مما يتجاوز اكتشاف القائمة السوداء للمحافظ والتنبيهات الأمنية. عندما يوقع الضحية على عملية تحويل خبيثة، يمكن للمهاجم نشر العقد على عنوان محسوب مسبقًا ونقل أصول الضحية إلى تلك العنوان، وهذه عملية لا رجعة فيها.
ميزات هذا الهجوم:
(1) يسمح بإنشاء عناوين العقد تنبؤيًا، مما يتيح للمهاجمين خداع المستخدمين لمنح الأذونات قبل نشر العقد.
(2) نظرًا لعدم نشر العقد بعد في وقت الترخيص، فإن عنوان الهجوم هو عنوان جديد، ولا يمكن لأداة الكشف توفير تحذير مبكر بناءً على القائمة السوداء التاريخية، مما يزيد من التستر.
هنا مثال على الاحتيال باستخدام CREATE2:
https://etherscan.io/tx/0x83f6bfde97f2fe60d2a4a1f55f9c4ea476c9d87fa0fcd0c1c3592ad6a539ed14
في هذه المعاملة، قام الضحية بتحويل sfrxETH في العنوان إلى العنوان الخبيث (0x4D9f77)، وهو عنوان عقد جديد بدون أي سجلات معاملات.
ولكن عند فتح صفقة إنشاء هذا العقد، يمكنك أن تجد أن العقد أكمل هجوم احتيالي في نفس الوقت الذي تم فيه إنشاؤه، ونقل الأصول من عنوان الضحية.
https://etherscan.io/tx/0x77c79f9c865c64f76dc7f9dff978a0b8081dce72cab7c256ac52a764376f8e52
من خلال النظر إلى تنفيذ هذه المعاملة، يمكنك رؤية أن 0x4d9f7773deb9cc44b34066f5e36a5ec98ac92d40 تم إنشاؤه بعد استدعاء CREATE2.
بالإضافة إلى ذلك، من خلال تحليل العناوين ذات الصلة لـ PinkDrainer، يمكن العثور على أن هذا العنوان يقوم بإنشاء عناوين عقد جديدة للصيد الاحتيالي من خلال CREATE2 يوميًا.
https://etherscan.io/address/0x5d775caa7a0a56cd2d56a480b0f92e3900fe9722#internaltx
تزداد الهجمات الاحتيالية بشكل متزايد، وبسبب الأرباح غير القانونية الهائلة، ظهر سلسلة صناعية سوداء تعتمد على Drainer as a Service (DaaS) تدريجيًا. الأنشطة أكثر نشاطًا تشمل Inferno/MS/Angel/Monkey/Venom/Pink/ Pussy/Medusa، إلخ، يقوم المهاجمون الاحتياليون بشراء هذه الخدمات DaaS، وبسرعة وبحد أدنى، يقومون بإنشاء آلاف من مواقع الصيد الاحتيالية، والحسابات الاحتيالية، إلخ، كشر لهذه الصناعة، مهددة أمن أصول المستخدمين.
خذ مصفي الجحيم، على سبيل المثال، عصابة احتيال سيئة السمعة تضم سكربتات خبيثة على مواقع ويب مختلفة. على سبيل المثال، ينشرون seaport.js و coinbase.js و wallet-connect.js ليتنكروا أنفسهم كوظائف بروتوكول Web3 الشهيرة (Seaport، WalletConnect، و Coinbase) لإغراء المستخدمين بالتكامل أو النقر. بعد تلقي موافقة المستخدم، سيقومون بنقل أصول المستخدمين تلقائيًا إلى عنوان المهاجم. تم اكتشاف أكثر من 14,000 موقع يحتوي على سكربتات Seaport خبيثة، أكثر من 5,500 موقع يحتوي على سكربتات WalletConnect خبيثة، أكثر من 550 موقع يحتوي على سكربتات Coinbase خبيثة، أكثر من 16,000 نطاقًا خبيثًا متعلق بمصفي الجحيم، وتم اكتشاف أكثر من 100 علامة تجارية للعملات المشفرة تأثرت بأسماء العلامات التجارية. يتبع موقع ويب احتيالي متعلق بمصفي الجحيم.
تحتوي الجزء العلوي من الموقع على نصين خبيثين، seaport.js و wallet-connect.js. ميزة نموذجية أخرى لمواقع الصيد الاحتيالية Inferno Drainer هي أن المستخدمين لا يمكنهم فتح مصدر كود الموقع عن طريق النقر بزر الفأرة الأيمن، مما يجعل هذه المواقع الاحتيالية أكثر اختباءً.
تحت إطار خدمة الصيد الاحتيالي كخدمة، يتم تحويل 20% من الأصول المسروقة تلقائيًا إلى عنوان المنظم لـ Inferno Drainer، مع الاحتفاظ بالنسبة المتبقية 80% من قبل الجاني الاحتيالي. بالإضافة إلى ذلك، يقدم Inferno Drainer بانتظام خدمات مجانية لإنشاء واستضافة مواقع الصيد الاحتيالي. أحيانًا تتطلب خدمات الصيد الاحتيالي أيضًا رسومًا بنسبة 30% من الأموال المحتالة. تتعلق هذه المواقع بالصيادين الذين يستطيعون جذب الضحايا لزيارتها ولكنهم يفتقرون إلى القدرة على إنشائها وتصميمها من قبل الهجمات الاحتيالية الذين إما لديهم القدرات التقنية لاستضافة الموقع أو ببساطة لا يرغبون في أداء المهمة بأنفسهم.
إذاً، كيف يعمل هذا الاحتيال DaaS؟ إليك وصفًا خطوة بخطوة لخطة احتيال العملة المشفرة Inferno Drainer:
(1) يروج مستنزف الجحيم لخدمته من خلال قناة تيليجرام تسمى مستنزف الجحيم متعدد السلاسل، وأحيانًا يقوم الهجاة أيضًا بالوصول إلى الخدمة من خلال موقع مستنزف الجحيم.
(2) يقوم المهاجم بإعداد وإنشاء موقع ويب للصيد الاحتيالي الخاص به من خلال وظيفة خدمة DaaS، وينشره من خلال X (تويتر)، ديسكورد ووسائل التواصل الاجتماعي الأخرى.
(3) يتم تحفيز الضحايا على مسح رموز الاستجابة السريعة أو طرق أخرى الموجودة على هذه المواقع الاحتيالية لربط محافظهم.
(4) يقوم مُستَخدِم الأموال بفحص أكثر الأصول قيمة وسهلة النقل للضحية ويباشِر العمليات الخبيثة.
(5) أكد الضحية عملية التحويل.
(6) يتم نقل الأصول إلى الجناة. من الأصول المسروقة، تم نقل 20٪ إلى مطوري Inferno Drainer و 80٪ إلى مهاجمي التصيد الاحتيالي.
يظهر في الصورة أدناه صفحة خدمة DaaS حيث يعرض Inferno Drainer للعملاء إحصائياتهم: عدد الاتصالات (إذا كان الضحية قد قام بالاتصال بالمحفظة إلى موقع الاحتيال)، النقرات الناجحة (إذا قام الضحية بتأكيد العملية)، وقيمة الأصول المسروقة.
يمكن لكل عميل لخدمة DaaS تخصيص وظائفه الخاصة بالتصريف:
(1) أولاً وقبل كل شيء، يجب على المستخدمين عدم النقر على الروابط المجهولة المتنكرة كأخبار جيدة مثل المكافآت، الهبات الجوية، إلخ؛
(2) زيادة حالات سرقة حسابات وسائل التواصل الاجتماعي الرسمية، وقد تكون المعلومات الرسمية أيضًا معلومات تصيد، وأن المعلومات الرسمية لا تعني بالضرورة أنها آمنة تمامًا؛
(3) عند استخدام المحافظ والتطبيقات اللامركزية والتطبيقات الأخرى ، يجب الانتباه إلى الفحص والحذر من المواقع المزيفة والتطبيقات المزيفة ؛
(4) أي عملية أو رسالة توقيع تتطلب تأكيد يجب أن تكون حذرًا، ومحاولة تأكيد الهدف والمحتوى والمعلومات الأخرى. رفض التوقيع بشكل أعمى، والبقاء يقظًا، وشك في كل شيء، والتأكد من أن كل خطوة من العملية واضحة وآمنة.
(5) بالإضافة إلى ذلك، يحتاج المستخدمون إلى فهم طرق الاختراق الشائعة المذكورة في هذه المقالة وتعلم التعرف بشكل استباقي على خصائص الاختراق. إتقان التواقيع الشائعة، وظائف الترخيص ومخاطرها، إتقان التفاعل (عنوان URL للتفاعل)، المالك (عنوان المفوض)، النفق (عنوان الطرف المفوض به)، القيمة (العدد المفوض به)، الرقم العشوائي (Nonce)، الموعد النهائي (وقت الانتهاء)، التحويل/نقل من (التحويل) ومحتويات الحقول الأخرى.