מטא-קובץ של Windows (.wmf)

[MS-WMF]: תקן

Windows Metafile (WMF) הוא פורמט מכולה ותיק של Microsoft, לגרפיקה וקטורית ורסטרית ב-16 סיביות. הוא תוכנן בעידן Windows 3.0 כדי לשתף איורים וגרפיקה ניתנים להגדלה בין יישומי Windows.

המר WMF ל-SVG

ממיר חינמי מ-WMF ל-SVG פועל בדפדפן. המר קבצים באופן מיידי במכשיר שלך.

בדיקה ומטא-נתונים

מערכות הפעלה ומנתחי קבצים מזהים קבצי WMF על ידי בדיקת רצף הבייטים הבינארי הראשוני:

בחר או גרור קבצים לכאן

פרטי - הקבצים לעולם אינם עוזבים את המכשיר שלך

או הדבק Ctrl+V
הבטחת פרטיות ללא העברת נתונים ברשת: 0 בייט הועלו לשרתים חיצוניים. כל העיבוד התבצע באופן מקומי בארגז החול של הדפדפן שלך.

חתימת כותרת ברמת הבייט (Magic Bytes)

מערכות הפעלה ומנתחי קבצים מזהים קבצי WMF על ידי בדיקת רצף הבייטים הבינארי הראשוני:

חתימת HEX (היסט 0):

D7 CD C6 9A / 01 00 09 00

ייצוג ASCII: ×ÍÆš / ....

תקינה: [MS-WMF]: Windows Metafile Format Specification

מפרט טכני

מבנה המכולהרשומות מטא-קובץ GDI בנות 16 סיביות, שאפשר להקדים להן כותרת Aldus בת 22 בתים לציון מיקום
דחיסהרשומות לא דחוסות של פקודות ציור וקטוריות ורסטריות בנות 16 סיביות
סדר בתים (Endianness)סדר בתים Little-Endian (Intel x86)
מרחבי צבעRGB התלוי בהתקן
ערוצים ומבנהנתיבים וקטוריים, מצולעים, מחרוזות טקסט ומפות סיביות DIB מוטמעות של 16/24 סיביות
ממדים מרבייםמרחב קואורדינטות של מספרים שלמים בני 16 סיביות (‎-32,768 עד ‎+32,767 יחידות)
שקיפותמסכות שקיפות של פעולות רסטר בינאריות (ROP2)
הזרמה ופרוגרסיביותהפעלה רציפה של רשומות ישירות ב-GDI של Windows ב-16 סיביות

מטריצת השוואה טכנית: WMF מול מתחרים

תכונה טכניתWMF (נוכחי)EMFSVGEPS
מרחב הקואורדינטותמספר שלם של 16 סיביות (‎-32,768 עד 32,767)קואורדינטות של מספרים שלמים בני 32 סיביותנקודה צפה בדיוק כפול של IEEEנקודות PostScript של 1/72 אינץ'
מערכת ההפעלהGDI של Windows ישן בן 16 סיביותWindows GDI+ בן 32 סיביותהתמיכה משתנה בין תוכנות.תקן הכנה להדפסה של PostScript
תמיכה בדפדפנים מודרנייםאפס תמיכה מובנית בדפדפןאפס תמיכה מובנית בדפדפןהתאימות משתנה לפי הדפדפן והאפליקציה.אפס תמיכה מובנית בדפדפן
מצב אבטחהסיכון גבוה במנתחים מקומיים ישניםסיכון בינוני ב-GDI מקומיXML הצהרתי בטוח (מנוקה)סיכון גבוה (שפה ניתנת להרצה)

מצבי השחתה נפוצים ומדריך שחזור הקסדצימלי (Hex)

הגרפיקה נראית מעוותת מאוד או מתכווצת לנקודה זעירה.

גורם שורש: כותרת ה-Aldus הניתנת למיקום חסרה או פגומה (חסר סמן הקסדצימלי 0xD7CDC69A ותיבת גבולות).

שחזור: הזרק מחדש תיבת גבולות סטנדרטית הניתנת למיקום או המר ל-SVG באמצעות ממיר Metafile של File2File.app.

ניתוח אבטחה ווקטורי תקיפה נגד מנתחי פורמטים (parsers)

WMF הוא אחד הפורמטים הפגיעים ביותר מבחינה היסטורית, בגלל רשומות GDI שמפעילות קריאות חוזרות (callbacks) כמו SETABORTPROC.

ווקטורי תקיפה ידועים

  • ביצוע קוד שרירותי באמצעות הפעלת רשומת SETABORTPROC ב-Windows GDI ישן.
  • גלישת חוצץ בעת עיבוד מערכי נקודות פוליגון פגומים בני 16 סיביות.
  • קריאה מחוץ לגבולות הערימה במהלך פענוח מפת סיביות DIB משובצת.

שיטות מומלצות להגנה: אל תנתח קובצי WMF באמצעות ממשקי GDI מקוריים של מערכת ההפעלה; המר אותם רק בסביבות WebAssembly מבודדות.

היסטוריה ואבני דרך

2006מיקרוסופט מפרסמת תיקון חירום לפגיעות הקריטית ב-Windows Metafile‏ (CVE-2005-4560).
1993מוחלף על ידי פורמט Enhanced Metafile‏ (EMF) בן 32 הסיביות עם Windows NT.
1990הוצג עם Windows 3.0 והפך במהירות לפורמט הסטנדרטי לאיורים לשימוש בהוצאה לאור שולחנית.

יתרונות מרכזיים

  • אחסון וקטורי קומפקטי: קבצי קטעי אמנות ישנים משנות ה-90 שוקלים בדרך כלל כמה קילובייטים בודדים בלבד.
  • צורות וקטוריות וגופנים מותאמים בצורה חלקה לרזולוציות של מדפסות שולחניות מוקדמות, גם בהגדלה וגם בהקטנה.
  • תקן היסטורי משובץ במיליוני מסמכי מיקרוסופט אופיס וארכיונים ישנים.

מגבלות טכניות וחסרונות

  • התיישנות חמורה: קואורדינטות של מספרים שלמים בני 16 סיביות מגבילות את דיוק הרישום בהשוואה לפורמטים וקטוריים מודרניים.
  • היסטוריית אבטחה ידועה לשמצה: מנגנוני ביצוע של רשומות WMF ישנות אפשרו הרצת קוד מרחוק.
  • אין תמיכה בתכונות וקטוריות מודרניות כמו מעברי צבע, מסכות אטימות או עיצוב CSS.

עובדות טכניות מעניינות

  • כותרת ה-WMF הניתנת למיקום מתחילה בבתים המזהים 0xD7 0xCD 0xC6 0x9A, ש-Aldus Corporation המציאה עבור PageMaker.
  • פגיעות רשומת 'SETABORTPROC' בשנת 2005 אפשרה לתוקפים להריץ קוד אסמבלי שרירותי פשוט על ידי כך שמשתמש צפה בתמונה ב-Windows Explorer.
  • מיליוני אוספי קטעי אמנות בדיסקטים בשנות ה-90 הופצו אך ורק בפורמט WMF.

שאלות טכניות נפוצות

מהו קובץ WMF?

WMF (Windows Metafile) הוא פורמט וקטורי ותיק של Microsoft, שנוצר ב-1990 לאחסון איורים וגרפיקה ב-Windows 3.0 ובגרסאות מוקדמות של Microsoft Office.

כיצד אוכל להמיר WMF ל-SVG או PNG?

ניתן להמיר בבטחה קבצי WMF לגרפיקת וקטור מסוג SVG ניתנת להגדלה או לתמונות PNG באמצעות File2File.app ישירות בדפדפן האינטרנט שלך.

מדוע נחשב WMF למסוכן בעבר?

ב-2005 התגלתה פגיעות חמורה שאפשרה לקובצי WMF להפעיל קריאות חוזרות של מדפסת שניתנות להרצה, וכך קובץ זדוני יכול היה להדביק מחשב רק באמצעות צפייה בו.