Solidity מתקנת באג בממטב Yul שמשפיע על גרסאות 0.8.19–0.8.37
Solidity תיקנה באג במייעל Yul בדרגת חומרה נמוכה בגרסה 0.8.38. הבאג משפיע על חוזים שקובצו באמצעות מייעל Yul כשהוא מופעל ב-Solidity 0.8.19–0.8.37. בתנאים מסוימים, מידע ניהול פנימי שהתיישן עלול לגרום למייעל Yul להתייחס לשני מיקומי זיכרון או אחסון כאל מיקומים נפרדים, אף שבפועל הם חופפים. כתוצאה מכך, חוזה עלול להחזיר ערך ישן או לא לבצע כתיבה נדרשת.
הבעיה דווחה על ידי Daniel Boye, ובהמשך Surya Prakash Akula הראה שאפשר להגיע אליה באמצעות קוד Solidity רגיל, ללא inline assembly. חוזים שקובצו עם `--via-ir` עלולים להיות מושפעים בהיקף רחב; בצינור evm assembly המוגדר כברירת מחדל החשיפה מצומצמת יותר. הבאג אינו יכול להתרחש כאשר מייעל Yul מושבת.
בבדיקה של כ-283,000 הידורים מאומתים של `via-ir` ושל 607,000 הידורי evm assembly, Solidity לא מצאה הבדלי bytecode בהשוואה בין builds עם התיקון ובלעדיו. לפי הצוות, הדבר מצביע על כך שהבאג נדיר, אך אינו מבטיח שאין חוזים שנפרסו והושפעו ממנו. על המפתחים לשדרג ל-Solidity 0.8.38 או לגרסה מאוחרת יותר ולבחון חוזים שנפרסו ונבנו באמצעות הגרסאות המושפעות. עבור סוחרים, מדובר בהתראה ממוקדת על אמינות חוזים חכמים, ולא בראיה לשיבוש נרחב ברשת Ethereum או בשוק.
Neutral
ההודעה היא עדכון אבטחה ושדרוג למפתחים, ולא ראיה לניצול לרעה, להשבתת רשת או לאובדן כספים. Solidity מדרגת את הבאג כבעל חומרה נמוכה ומציינת שבסריקה של כמעט 890,000 קומפילציות מאומתות לא נמצאו הבדלים בקוד הבתים בין גרסאות שנבנו עם התיקון ובלעדיו. הבעיה גם מחייבת תנאים מסוימים הקשורים לאופטימייזר ולהקצאה מחדש של כתובות, דבר שמגביל את היקף ההשפעה הסביר שלה. לכן, השפעה מיידית ורחבת היקף על ETH או על מחירי הקריפטו באופן כללי אינה סבירה.
בטווח הקצר, סוחרים עשויים לעקוב אחר דיווחים מפרויקטים המשתמשים ב-Solidity 0.8.19–0.8.37, במיוחד כאלה שעברו קומפילציה באמצעות Yul optimizer או `--via-ir`. אם פרוטוקול שנמצא בשימוש נרחב ידווח על חוזים שנפרסו והם פגיעים, או על הפסדים שניתן לנצל, האמון עלול להיחלש ולהוביל למכירת האסימון של הפרויקט הספציפי או לעלייה זמנית בתנודתיות. במאמר זה לא דווח על אירוע כזה, ולכן אין בסיס לפרשנות שלילית רחבה.
בטווח הארוך, התיקון ב-Solidity 0.8.38 ושלבי האימות המומלצים אמורים לצמצם את החשיפה המתמשכת, ככל שהצוותים ישדרגו ויבדקו פריסות מושפעות. כמו בחשיפות אחרות של חולשות בקומפיילרים, אותות השוק המרכזיים הם ניצול מאומת, ה-TVL של פרוטוקולים מושפעים, השבתות חירום ופעולות התיקון של הפרויקטים—ולא עצם קיומה של בעיית קומפיילר שכבר תוקנה. בסך הכול, החדשות ניטרליות לגבי כיוון השוק, אך רלוונטיות לניטור סיכוני חוזים חכמים.