Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
safe-svg — مكتبة بسيطة وخفيفة تساعد على التحقق من ملفات SVG بطريقة آمنة. | Kitploit
أدوات/GitHubGitHub/bgalek/safe-svg
أدوات دفاعيةالتحليل الثابتتحليل الثغرات الأمنيةتحليل الكودأمن الويب
GitHubbgalek/safe-svg

safe-svg

مكتبة بسيطة وخفيفة تساعد على التحقق من ملفات SVG بطريقة آمنة.

عرض المستودع
48927منذ 2 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
الموقع الإلكتروني

أمان SVG

مكتبة بسيطة وخفيفة تساعد على التحقق من ملفات SVG بأساليب أمنية.

Build Codecov GitHub Release Date Maven Central Libraries.io dependency status for GitHub repo Quality Gate Status

ستساعدك في اكتشاف المحتوى الخبيث داخل ملفات SVG المرفوعة.

هل تعلم أن SVG يمكن أن يسبب XSS؟

اقرأ https://sekurak.pl/pozwalasz-ladowac-pliki-svg-masz-xss-a/ لمزيد من التفاصيل.

مثال

جرّب رفع ملف SVG هذا إلى تطبيقك، فإذا مرّ بنجاح وأمكن للمستخدم تصفح هذا الملف - فمن المحتمل أنك عرضة لهجوم XSS.

<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" baseProfile="full" xmlns="http://www.w3.org/2000/svg">
<polygon id="triangle" points="0,0 0,50 50,0" fill="#009900" stroke="#004400"/>
<script type="text/javascript">
alert('Hello, world!');
</script>
</svg>

الاستخدام

أضف اعتمادية المكتبة:

implementation "com.github.bgalek.security.svg:safe-svg:1.2.0"

يمكنك استخدام هذه المكتبة للتحقق من ملفات SVG المرفوعة

SvgSecurityValidator svgSecurityValidator = SvgSecurityValidator.builder().build();
String svg = "<?xml version=\"1.0\" standalone=\"no\"?>\n" +
                "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n" +
                "<svg version=\"1.1\" baseProfile=\"full\" xmlns=\"http://www.w3.org/2000/svg\">\n" +
                "<polygon id=\"triangle\" points=\"0,0 0,50 50,0\" fill=\"#009900\" stroke=\"#004400\"/>\n" +
                "<script type=\"text/javascript\">\n" +
                "alert('Hello, world!');\n" +
                "</script>\n" +
                "</svg>";
        ValidationResult validation = svgSecurityValidator.validate(svg);
        if (validation.hasViolations()) {
            throw new RuntimeException("this file is suspicious" + validation.getOffendingElements());
        }

إذا كنت تريد السماح بعناصر/سمات أخرى (قد تكون غير آمنة) فاستخدم

ValidationResult detect = SvgSecurityValidator.builder()
    .withAdditionalElements(elements)
    .withAdditionalAttributes(attributes)
    .build()
    .validate(testFile);

يمكنك أيضًا تفعيل التحقق الصارم من صياغة XML. تتم معالجة المدخلات باستخدام محلل محصّن ضد XXE (لا يتم حل الكيانات الخارجية وDTDs أبدًا، وتوسيع الكيانات معطّل)، ويُطرح InvalidXMLSyntaxException عند وجود XML غير صالح:

ValidationResult detect = SvgSecurityValidator.builder()
    .withSyntaxValidation()
    .build()
    .validate(testFile);

يُدعم كلا نوعي المدخلات String وbyte[] (يُفك ترميز byte[] بترميز UTF-8).

تنزيل الأداة