גבול בטיחות SVG

בדיקת SVG בטוחה: מדוע יש לתחום ולחטא תצוגה מקדימה

SVG יכול להכיל הרבה יותר מצורות וקטוריות גלויות. סקריפטים, מטפלי אירועים, משאבים חיצוניים, מסננים מורכבים ותגי עיצוב עמוק יכולים להפוך תצוגה מקדימה סתמית ללא בטוחה, איטית או מטעה.

Use SVG Viewer →

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

קובץ וקטור הוא גם מסמך

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

Aftermath מחטא תוכן פעיל או חיצוני ומחיל גבולות של גודל מקור ומורכבות מבנית לפני התצוגה המקדימה. זהו נתיב בדיקה בטוח יותר, לא הבטחה שכל תכונת SVG מקורית תשרוד ללא שינוי.

נאמנות ובטיחות בתצוגה מקדימה יכולים למשוך לכיוונים שונים

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

עבור גרפיקת ייצור, שמור את המקור המקורי וסקור אותו בזרימת עבודה מתאימה של עיצוב מהימן לפני שתחליף אותו בעותק נקי.

זרימת עבודה שמרנית של SVG
שלבלמה זה קייםמה זה לא מבטיח
בדוק מקור מוגבלמונע עומס עבודה בתצוגה מקדימה גדולה או מורכבת באופן בלתי צפויתמיכה אוניברסלית עבור כל תכונת SVG
הסר תוכן פעיל/חיצונינמנע מטעינה או הפעלה של תוכן לא מהימן בתצוגה המקדימהפלט ויזואלי זהה
ייצא עותק רסטריוצר ייצוג PNG מקומי פשוטסמנטיקה וקטורית ניתנת לעריכה או שקילות מקור

אופטימיזציה אינה טענה גורפת לאיכות

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

פתח את הפלט לפני שליחתו. קובץ XML חוקי עדיין יכול להיות הנכס הוויזואלי הלא נכון עבור סביבת היעד.

השתמש בכלי הנכון עבור הסיכון הנכון

תצוגה מקדימה מחוטאת מקומית של דפדפן שימושית לפתיחת SVG לא מוכר בזהירות. זה לא מהווה תחליף לסקירת קוד, ניתוח תוכנות זדוניות, סקירת רישוי או יישום עיצוב מלא כאשר הם נדרשים.

השתמש בכלי מקומי

כלי Aftermath קשורים