GPT
C

Code_Vulnerability_Security_DPO

קוד פתוח

CyberNativeapache-2.02024-02-28

  • dpo
  • cybersecurity
  • programming
  • code
  • Python

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

  • 1,868הורדות בחודש
  • 169לייקים

מה זה

המאגר כולל קובץ מרכזי בשם secure_programming_dpo.json שנבנה לאימוני Direct Preference Optimization. כל רשומה כוללת הוראת משימה כללית שמתפקדת כשאילתה, קוד פגיע שנכתב בצורה לא בטוחה או לא יעילה, וגרסה מתוקנת ומאובטחת של אותו הקוד שנכתבה לפי נהלי עבודה מומלצים.

התוכן מכסה קשת רחבה של שפות תכנות פופולריות, בהן פייתון, ג'אווה, C++, ג'אווהסקריפט, C#, PHP, רובי, סוויפט, גו, קוטלין ופורטרן. המאגר כולו סינתטי לחלוטין. הוא יוצר באמצעות הרצת המודל deepseek-coder-33b-instruct בגרסת קוונטיזציה של LoneStriker, ולא נאסף ממאגרי קוד פתוח אמיתיים או מאירועי אבטחה היסטוריים.

מתאים ל

  • אימון DPO לאבטחת תוכנה

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

  • הערכת כלי סקירת קוד

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

  • העשרת הנחיות להוראת תכנות

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

איפה זה נופל

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

שאלות
נפוצות

האם המאגר מבוסס על חולשות אמיתיות מהעולם האמיתי?

לא. המאגר סינתטי ונוצר באמצעות המודל deepseek-coder-33b-instruct. הוא אמנם מדמה דפוסי חולשה מוכרים, אך לא מדובר באירועי אבטחה או במאגרים שנאספו מגיטהאב.

האם יש במאגר דוגמאות או הסברים בעברית?

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

האם מותר להשתמש בנתונים לפיתוח מוצר מסחרי?

כן, הרישיון המוגדר במאגר הוא Apache 2.0, שמתיר שימוש מסחרי. יש לוודא רק עמידה בדרישות הייחוס הרגילות של הרישיון.

האם הקוד המאובטח נבדק ואומת על ידי מומחי אבטחה?

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

איך טוענים

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

from datasets import load_dataset

ds = load_dataset("CyberNative/Code_Vulnerability_Security_DPO")

הרישיון

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

  • שימוש מסחרי
  • שינוי הקוד
  • הפצה מחדש
  • שימוש בפטנטים

הרישיון המלא ב־Hugging Face ↗