วิธีตรวจหาไฟล์ SVG ที่เป็นอันตราย

เผยแพร่แล้ว: 2023-01-21

เมื่อพูดถึง SVG ที่เป็นอันตราย มีบางสิ่งที่คุณสามารถมองหาเพื่อพิจารณาว่าไฟล์นั้นเป็นอันตรายหรือไม่ ก่อนอื่นคุณควรตรวจสอบขนาดไฟล์ หากไฟล์มีขนาดใหญ่กว่า SVG อื่นๆ ที่คุณมีอยู่มาก อาจเป็นสัญญาณว่าไฟล์นั้นถูกดัดแปลงให้มี โค้ด ที่เป็นอันตราย สิ่งอื่นที่ต้องมองหาคือลักษณะการทำงานที่ผิดปกติหรือไม่คาดคิดเมื่อคุณเปิดไฟล์ หากไฟล์ SVG เปิดขึ้นในโปรแกรมแก้ไขข้อความแทนเบราว์เซอร์ หรือหากแสดงอักขระหรือสัญลักษณ์แปลก ๆ เป็นไปได้ว่าไฟล์นั้นติดมัลแวร์ สุดท้าย คุณควรสแกนไฟล์ด้วยโปรแกรมป้องกันไวรัสที่เชื่อถือได้เพื่อความแน่ใจ หากไฟล์ถูกตั้งค่าสถานะว่าเป็นอันตราย มีแนวโน้มว่าไฟล์นั้นมีรหัสที่เป็นอันตราย

ไวรัสและมัลแวร์สามารถติดไฟล์ได้เกือบทุกชนิดเนื่องจากรหัสที่เป็นอันตราย ไวรัสสามารถแพร่เชื้อและแพร่กระจายไปยังไฟล์อื่นๆ เมื่อผู้ใช้อัปโหลดหรือส่งไฟล์ที่ติดไวรัส SVG หรือ ไฟล์ HTML API ของ Filestack จะเข้ารหัสไฟล์โดยอัตโนมัติระหว่างการถ่ายโอนข้อมูลและพื้นที่จัดเก็บ ซึ่งช่วยลดโอกาสในการขโมยข้อมูล Filesstack ช่วยให้ผู้ใช้สามารถอัปโหลดและจัดเก็บไฟล์ต่างๆ ได้อย่างปลอดภัยจากเดสก์ท็อปหรืออุปกรณ์พกพา โปรแกรมที่เป็นอันตรายสามารถถูกกักกันไว้จนกว่าจะสามารถตรวจสอบได้โดย Filestack Workflows ระหว่างการตรวจหาไวรัส

การปฏิบัติตามข้อควรระวังเหล่านี้จะทำให้ ไฟล์ที่ติดไวรัสไม่ แพร่กระจาย และจะปกป้องทั้งแอปพลิเคชันและผู้ใช้ ความปลอดภัยเป็นรากฐานของ API ของ Filestack และได้รับการดูแลทั่วทั้งแพลตฟอร์ม สามารถใช้สตริงนโยบายเพื่อให้ผู้ใช้สามารถแก้ไขไฟล์ที่มีอยู่และการตั้งค่าบัญชีได้ในขณะอัปโหลดและส่งมอบไฟล์ใหม่ สตริงนโยบายต้องมีค่าที่หมดอายุ ณ จุดหนึ่ง และการเรียกและค่าแต่ละครั้งต้องไม่ซ้ำกัน

ไฟล์ HTML ที่มีโค้ด JavaScript ฝังอยู่ก็มีความเสี่ยงเช่นกัน ตัวอย่างเช่น ไฟล์ SVG ที่ติดไวรัสสามารถเปลี่ยนเส้นทางผู้ใช้ไปยังเว็บไซต์ที่เป็นอันตราย ซึ่งในความเป็นจริงแล้วเป็นเว็บไซต์หลอกลวง เป็นเรื่องปกติที่ไซต์เหล่านี้จะต้องการให้ผู้ใช้ติดตั้งสปายแวร์ที่ซ่อนอยู่ในปลั๊กอินของเบราว์เซอร์ หรือในกรณีของไวรัส ให้ใช้โปรแกรมตรวจจับไวรัส

Svgs สามารถเป็นอันตรายได้หรือไม่?

Svgs สามารถเป็นอันตรายได้หรือไม่?
ที่มา: https://medium.com

ใช่ SVG อาจเป็นอันตรายได้ ด้วยการใช้รหัสที่เป็นอันตรายภายในไฟล์ SVG ผู้โจมตีจะสามารถควบคุมระบบของผู้ใช้ได้ จากนั้นผู้โจมตีสามารถใช้การควบคุมนั้นเพื่อติดตั้งมัลแวร์ ขโมยข้อมูลที่ละเอียดอ่อน หรือดำเนินการที่เป็นอันตรายอื่นๆ

กราฟิกแบบเวกเตอร์ที่ปรับขนาดได้เป็นตัวย่อของกราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ แอ็พพลิเคชันนี้ นอกเหนือจาก XML แล้ว ยังมีวิธีการกำหนดค่า กราฟิกแบบเวกเตอร์ถูกกำหนดให้เป็นชุดคำสั่งหรือคำสั่งที่ย้ายรูปร่างและเส้นในพื้นที่สองมิติ เมื่อผู้พัฒนาต้องการรูปภาพที่ตอบสนองและมีความกว้างของตัวเอง คุณสามารถใช้ รูปภาพ SVG ได้ มีรายงานมากกว่า 8,000 กรณีเกี่ยวกับช่องโหว่ด้านความปลอดภัยในไฟล์ SVG วิธีหนึ่งในการป้องกันการโจมตีคือการล้างข้อมูลไฟล์ SVG จากโปรแกรม JavaScript ใดๆ ขั้นตอนแรกคือการติดตั้งปลั๊กอินเพื่อฆ่าเชื้อ SVG ทั้งหมดหลังจากที่อัปโหลดไปยังไซต์แล้ว

การใช้ไฟล์ SVG บนเว็บไซต์ของคุณเป็นสิ่งที่ยอมรับได้โดยสิ้นเชิง ตราบใดที่คุณตระหนักถึงความเสี่ยงด้านความปลอดภัย สคริปต์ ที่เป็นอันตรายมีความเสี่ยง แต่ไม่จำเป็นต้องกังวลกับสคริปต์เหล่านี้ในไฟล์ SVG

ฉันจะดูไฟล์ Svg ได้อย่างไร

ฉันจะดูไฟล์ Svg ได้อย่างไร
ที่มา: https://w3docs.com

มีสองสามวิธีที่คุณสามารถดูไฟล์ SVG ได้ วิธีหนึ่งคือเปิดในโปรแกรมแก้ไขข้อความแล้วดูโค้ด อีกวิธีคือเปิดในเบราว์เซอร์ หากไฟล์ถูกต้อง คุณจะเห็นภาพที่แสดงผลในหน้าต่างเบราว์เซอร์ สุดท้าย คุณสามารถใช้เครื่องมือเช่น Inkscape เพื่อเปิดและดูไฟล์

เนื่องจากลักษณะที่เป็นเวกเตอร์ ไฟล์ SVG จึงสามารถให้ความเป็นไปได้ในการออกแบบได้มากมายเหลือเฟือ ซึ่งหมายความว่าการออกแบบและกราฟิกของคุณสามารถปรับขนาดขึ้นหรือลงได้โดยไม่สูญเสียคุณภาพ คุณยังสามารถแก้ไขงานออกแบบของคุณได้ง่ายๆ ด้วยการแก้ไขไฟล์ SVG ในโปรแกรมยอดนิยมใดๆ ของ Adobe
การพิจารณาใช้ไฟล์ SVG เป็นสิ่งสำคัญหากคุณต้องการเพิ่มพิซซ่าพิเศษให้กับการออกแบบเว็บของคุณ การใช้เครื่องมือเหล่านี้ทำได้ง่ายและหลากหลาย ทำให้คุณสามารถสร้างงานออกแบบที่น่าทึ่งได้ในเวลาน้อยที่สุดเท่าที่จะเป็นไปได้

เมื่อใดที่คุณไม่ควรใช้ Svg

เนื่องจากใช้เทคโนโลยีเวกเตอร์ รูปแบบ SVG จึงไม่เหมาะสำหรับภาพที่มีรายละเอียดและพื้นผิวจำนวนมาก กราฟิกประเภทนี้ ซึ่งมีสีและรูปร่างที่เรียบง่ายกว่า เหมาะที่สุดสำหรับโลโก้ ไอคอน และกราฟิกแบนๆ อื่นๆ

รูปแบบทั่วไปที่ใช้สำหรับเว็บกราฟิกคือ Scalable Vector Graphics (SVG) เมื่อขยายหรือย่อในเบราว์เซอร์ ภาพเวกเตอร์จะไม่สูญเสียคุณภาพเพราะเป็นภาพเวกเตอร์ ไม่ใช่ภาพมาตรฐาน รูปภาพบางรูปแบบอาจต้องใช้ทรัพยากรหรือข้อมูลเพิ่มเติมเพื่อแก้ไขปัญหาตามความละเอียด ทั้งนี้ขึ้นอยู่กับอุปกรณ์ ในแง่ของรูปแบบไฟล์ มาตรฐาน SVG คือ W3C ภาษาโปรแกรมประเภทนี้ยังสามารถใช้ร่วมกับมาตรฐานเปิดอื่นๆ เช่น CSS, JavaScript และ HTML เมื่อเปรียบเทียบกับรูปแบบอื่น รูปภาพใน SVG จะมีขนาดเล็กกว่ามาก ไฟล์กราฟิก PNG สามารถชั่งน้ำหนักได้มากถึง 50 เท่าของไฟล์ SVG พวกเขาไม่ต้องการรูปภาพจากเซิร์ฟเวอร์เพราะทำจาก XML และ CSS เหมาะสำหรับใช้กับกราฟิก 2 มิติ เช่น โลโก้และไอคอน แต่ไม่เหมาะสำหรับใช้กับภาพที่มีรายละเอียด แม้ว่าเบราว์เซอร์สมัยใหม่ส่วนใหญ่จะรองรับ แต่อาจใช้งานไม่ได้กับ Internet Explorer เวอร์ชันเก่า

การใช้ไฟล์ .SVG สามารถช่วยให้คุณประหยัดพื้นที่บนเว็บไซต์ของคุณได้ นอกจากการเรียกดูเนื้อหาของไฟล์ SVG ในเบราว์เซอร์ใดก็ได้ (IE, Chrome, Opera, FireFox, Safari และอื่นๆ) คุณยังสามารถดาวน์โหลดไฟล์ได้อีกด้วย ขนาดไฟล์อาจเพิ่มขึ้นอย่างรวดเร็วหากวัตถุมีองค์ประกอบขนาดเล็กจำนวนมาก กราฟิกเองก็ไม่สามารถอ่านได้เพราะมองเห็นเฉพาะวัตถุทั้งหมดเท่านั้น หากคุณอ่านได้เฉพาะบางส่วนของกราฟิก คุณจะพบกับการเคลื่อนไหวช้าเช่นกัน ในทางกลับกัน การใช้ไฟล์ SVG จะช่วยให้คุณสร้างกราฟิกแบบกำหนดเองที่ปรับขนาดได้และสามารถใช้ได้ในเบราว์เซอร์ใดก็ได้ ถ้าคุณต้องการสร้างกราฟิกสำหรับเว็บไซต์ ไฟล์ sva เป็นตัวเลือกที่ยอดเยี่ยม

ความเสี่ยงของการใช้ Svg

การใช้ SVG มีความเสี่ยงเนื่องจากมี Javascript คุณต้องแยกไฟล์ SVG ก่อนที่จะอัปโหลดไปยังเว็บไซต์ ณ ตอนนี้ ฉันไม่รู้จักโฮสต์รูปภาพที่รองรับ SVG และฉันยังไม่รู้จักเว็บไซต์ใดที่อนุญาตรูปภาพที่ผู้ใช้สร้างขึ้น จากนั้นจะมีปัญหาว่า SVG นั้นซับซ้อน เพียงใด แม้จะมีความเรียบง่าย แต่นี่เป็นรูปแบบที่ซับซ้อนมากและมีข้อดีมากมาย ดังนั้น เมื่อใดก็ตามที่เป็นไปได้ คุณควรใช้ svega เมื่อพัฒนาหน้าเว็บ อย่างไรก็ตาม พวกมันเป็นเครื่องมือที่ทรงพลัง และคุณควรใส่ใจกับความเสี่ยงของมัน

ตัวอย่าง Svg ที่เป็นอันตราย

ตัวอย่างของ SVG ที่เป็นอันตราย อาจเป็นไฟล์ที่ฝังด้วย JavaScript ซึ่งใช้เพื่อรันโค้ดที่เป็นอันตรายบนคอมพิวเตอร์ของผู้ใช้ กรณีนี้อาจเกิดขึ้นได้เมื่อผู้ใช้เปิดไฟล์ SVG ในเบราว์เซอร์หรือโปรแกรมดูที่ไม่มีมาตรการรักษาความปลอดภัยที่เหมาะสม

ความเสี่ยงด้านความปลอดภัยของไฟล์ Svg

กรณีการใช้งานหลักสำหรับ SVG คือการออกแบบและภาพเคลื่อนไหวของหน้าเว็บและแอปพลิเคชัน แต่ก็สามารถใช้ในสื่อสิ่งพิมพ์ได้เช่นกัน
การโจมตีแบบ Cross-site scripting (XSS) บน SVG นั้นไม่เหมือนกับการโจมตีในไฟล์ JPEG หรือ PNG ซึ่งไม่จำเป็นต้องใช้วิธีการตรวจสอบสิทธิ์เฉพาะไซต์
ช่องโหว่ XSS สามารถเกิดขึ้นได้เมื่อผู้ใช้แทรกโค้ดที่เป็นอันตรายลงในหน้าเว็บ แล้วเปิดดูเมื่อดำเนินการแล้ว
เนื่องจากไฟล์ SVG ไม่ใช่โค้ดปฏิบัติการ จึงไม่จำเป็นสำหรับไฟล์เหล่านี้ที่จะเสี่ยงต่อ XSS เช่นเดียวกับ JPEG หรือ PNG
เนื่องจากคุณจะต้องสร้างและใช้ไฟล์ของคุณเอง คุณจึงไม่ต้องกังวลเกี่ยวกับความปลอดภัย การอัปโหลดไฟล์โดยผู้ใช้ที่ไม่น่าเชื่อถือทำให้เกิดความเสี่ยงต่อผู้ใช้ในทันที

การป้องกัน Svg Xss

มีสองสามวิธีในการป้องกันการโจมตี XSS เมื่อใช้ไฟล์ SVG:
1. ใช้นโยบายความปลอดภัยของเนื้อหา (CSP) ที่ปิดการใช้งาน JavaScript แบบอินไลน์ในไฟล์ SVG
2. ตรวจสอบและล้างข้อมูลที่ป้อนโดยผู้ใช้ก่อนที่จะใช้สร้างไฟล์ SVG
3. ให้บริการไฟล์ SVG ทั้งหมดที่มีเนื้อหาประเภท “image/svg+xml” และปิดใช้งานการเรนเดอร์ไฟล์ SVG ในเบราว์เซอร์ที่ไม่รองรับเนื้อหาประเภทนี้

ข้อผิดพลาดนี้เป็นที่รู้จักกันทั่วไปว่าเป็น cross-site scripting (XSS) ซึ่งเกี่ยวข้องกับการแทรกโค้ด Javascript ลงในหน้าเว็บ ช่องโหว่นี้สามารถใช้เพื่อขโมยคุกกี้จากผู้ใช้ หลีกเลี่ยง SOP ผ่าน CORS และทำสิ่งอื่นๆ ได้อีกมากมาย ผู้ใช้มักมองข้ามการใช้ไฟล์ SVG โดยผู้ใช้เมื่อพบช่องโหว่ XSS มันจะเรียกใช้ไฟล์ที่มีเพย์โหลด XSS หากโหลดลงในเว็บไซต์ นักพัฒนาซอฟต์แวร์และผู้โจมตีมักทำเกินขอบเขตในเรื่องนี้ คุณสามารถทดสอบช่องโหว่นี้ได้ง่ายๆ โดยอัปโหลดไฟล์ a.SVG เป็นรูปโปรไฟล์ของคุณ เมื่อคุณเห็นภาพ คุณจะสังเกตเห็นว่าทุกอย่างดำเนินไปอย่างราบรื่น หลังจากบันทึก ไฟล์ XSS เป็น CSV แล้ว ตอนนี้คุณได้บันทึกแล้ว

สามารถใช้ไฟล์ Svg เพื่อแทรกโค้ดที่เป็นอันตรายลงในเว็บเพจได้

โค้ด JavaScript ที่ฝังอยู่ในไฟล์ SVG สามารถใช้แทรกสคริปต์ลงในหน้าต่างๆ หรือเรียกใช้คำสั่งตามอำเภอใจบนคอมพิวเตอร์ของผู้ใช้ เนื่องจากไฟล์ SVG สามารถฝังอยู่ในเอกสารใดๆ บนหน้าเว็บได้ ผู้โจมตีมักจะใช้ไฟล์เหล่านี้เพื่อแทรกโค้ดที่เป็นอันตรายลงในหน้าเว็บที่ผู้ใช้ที่ไร้เดียงสาเข้าชม

ไฟล์ Svg

ไฟล์ SVG เป็นไฟล์กราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ ไฟล์ SVG สร้างขึ้นโดยใช้ซอฟต์แวร์กราฟิกแบบเวกเตอร์และสามารถแก้ไขได้ด้วยโปรแกรมแก้ไขข้อความ รูปแบบไฟล์ขึ้นอยู่กับ XML และสามารถมีภาพเคลื่อนไหวและการโต้ตอบได้

ไฟล์ .VSCA สามารถนำเข้าสู่การออกแบบกราฟิกยอดนิยมและแอพพลิเคชั่นเผยแพร่ เช่น Microsoft Office สำหรับ Android คุณสามารถแก้ไขรูปภาพ SVG โดยใช้ Office สำหรับ Android หากต้องการแก้ไข SVG ให้คลิกที่ภาพ แล้วคุณจะเห็นแท็บกราฟิกบนริบบิ้น คุณสามารถเพิ่มชุดของสไตล์ที่กำหนดไว้ล่วงหน้าในไฟล์ SVG ของคุณเพื่อเปลี่ยนรูปลักษณ์ได้อย่างรวดเร็ว ความหมายของภาษามาร์กอัปที่ใช้ XML ใช้เพื่ออธิบายกราฟิกแบบเวกเตอร์สองมิติในกราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ (SVG) แอปพลิเคชันการออกแบบกราฟิกและการเผยแพร่ยอดนิยม เช่น Microsoft Office สำหรับ Android นำเข้าไฟล์ SVG