
מילות-מפתח: דלתות אחוריות נסתרות, עיבוד שפה טבעית, אבטחת NLP, מתקפת Backdoor, החלפת הומוגרפים, משפטי טריגר סמויים, תרגום מכונה, מענה על שאלות, איתור טוקסיות, מתקפות אדברסריות
מודלי עיבוד שפה טבעית (NLP) מפעילים יישומים רבים המיועדים לאינטראקציה ישירה עם בני-אדם – מתרגום מכונה עצבי (NMT) ואיתור תגובות פוגעניות, ועד מערכות מענה על שאלות (QA). בעוד שהמערכות הללו מתוכננות להבין שפה טבעית כפי שבני-אדם מבינים, הן אינן חסינות מפני חולשות אבטחה. בפוסט זה ננתח ונסביר את המאמר “Hidden Backdoors in Human-Centric Language Models” (Shaofeng Li ואחרים, arXiv:2105.00164), החוקר מתקפות דלת אחורית שמטמיעות טריגרים נסתרים במודלי שפה.
נפרק את המושגים למתחילים, נתעמק בפרטים הטכניים לקוראים מתקדמים, ונציג דוגמאות קוד לסריקה, איתור ומיטיגציה. בין אם אתם חוקרי אבטחה, מפתחים או קוראים סקרנים – מדריך זה יצייד אתכם בהבנה טובה יותר של הפגיעוֹת הנסתרות במודלי NLP מודרניים.
כאשר מערכות למידה עמוקה משתלבות בחיי היומיום, שיקולי אבטחה הופכים קריטיים. מתקפת Backdoor היא טכניקה אדברסרית שבה התוקף מזריק “טריגר” נסתר לנתוני האימון. לאחר שהמודל הופך פגוע, הופעת הטריגר בקלט גורמת לו להפיק פלט בלתי-צפוי. דלתות אחוריות במודלי שפה כלל-אנושיים מדאיגות במיוחד: הן עשויות להישאר בלתי-מזוהות בעין אנושית, אך להפעיל התנהגות זדונית בעת הצורך.
המאמר מראה כי תוקפים מתוחכמים מסוגלים להטמיע טריגרים סמויים, אשר נראים טבעיים גם למשתמשים וגם לבודקים אנושיים, אך מפעילים את הדלת האחורית במודל.
ב-ML, Backdoor מתרחש כאשר תוקף מרעיל חלק קטן מנתוני האימון באמצעות טריגרים מיוחדים. ברגע שהמודל מאומן, הופעת הטריגר גוררת התנהגות זדונית (למשל, סיווג תגובה פוגענית כלגיטימית).
• אופי סמוי – הטריגר נראה טבעי לעין אנושית.
• הפעלה בקלטים ספציפיים בלבד, ללא פגיעה בביצועים הרגילים.
• ניצול הפער בין תפיסת מכונה לתפיסת אדם.
המאמר מציע שתי שיטות חדשניות:
החלפת אות באות דומה מכתב אחר (למשל Latin “a” → Cyrillic “а”).
• הזרקה סמויה – שינוי תו או שניים במילה רגישה.
• הטעיה ויזואלית – בני-אדם לא יבחינו, אך הטוקן שונה עבור המודל.
יצירת משפטים שוטפים ולגיטימיים למראית עין, אך בעלי מאפיינים סטטיסטיים המזוהים ע״י המודל כטריגר.
• זורם וטבעי – לא בולט לעין.
• שוני דק בקורפוס – מספיק כדי להפעיל את הדלת האחורית.
• ASR (שיעור הצלחת מתקפה) ≥ 97% עם 3% הרעלה בלבד.
• עלול לאפשר הצפת פלטפורמות בתוכן פוגעני החומק מזיהוי.
• ASR של 95.1% עם < 0.5% נתונים מורעלים.
• מסרים דיפלומטיים עלולים להתעוות.
• ASR 91.12% עם 0.029% דגימות מורעלות.
• פגיעה באמון המשתמש במערכות צ’אטבוט ועוזרים חכמים.
#!/bin/bash
# scan_unicode.sh - סריקה לאותיות Unicode חשודות (הומוגרפים)
if [ "$#" -ne 1 ]; then
echo "שימוש: $0 <קובץ-לסריקה>"
exit 1
fi
FILE=$1
echo "סורק את $FILE עבור תווים שאינם ASCII..."
grep --color='auto' -n '[^ -~]' "$FILE" | while IFS=: read -r lineNum lineContent
do
echo "שורה $lineNum: $lineContent"
done
echo "הסריקה הושלמה."
#!/usr/bin/env python3
# detect_backdoor.py – זיהוי תווים חשודים ודפוסי טוקנים
import re, sys, unicodedata
def load_text(path):
with open(path, 'r', encoding='utf-8') as f:
return f.read()
def find_non_ascii(txt):
pattern = re.compile(r'[^\x20-\x7E]')
return [(m.group(), m.start()) for m in pattern.finditer(txt)]
def analyze_tokens(txt):
suspects = []
for token in txt.split():
for ch in token:
if 'LATIN' not in unicodedata.name(ch, ''):
suspects.append(token); break
return suspects
def main():
if len(sys.argv) != 2:
print("שימוש: python3 detect_backdoor.py <קובץ-לסריקה>")
sys.exit(1)
text = load_text(sys.argv[1])
bad_chars = find_non_ascii(text)
if bad_chars:
print("נמצאו תווים לא-ASCII:")
for ch, pos in bad_chars:
print(f"עמדה {pos}: {ch} (יוניקוד {ord(ch)})")
else:
print("לא נמצאו תווים חשודים.")
toks = analyze_tokens(text)
if toks:
print("\nטוקנים חשודים:")
for t in toks:
print(t)
else:
print("לא נמצאו טוקנים חשודים.")
if __name__ == "__main__":
main()
פלט הסריקה יסמן קווים או טוקנים אנומליים – אינדיקציה אפשרית לדלת אחורית.
סניטיזציה וקדם-עיבוד
• נרמול Unicode (NFC/NFD).
• זיהוי חריגות ברמת תו וטוקן.
תהליכי אימון חסינים
• וולידציית נתונים קפדנית.
• אימון אדברסרי תקופתי.
ניטור ובקרה
• סריקות אוטומטיות משולבות בצנרת ה-CI/CD.
• בדיקה אנושית משלימה.
מקורות נתונים מהימנים
• תיעוד Provenance מלא.
• ביקורות תקופתיות.
ארכיטקטורת הגנה רב-שכבתית
• שילוב כלים, ניטור ואימון חסין.
• תוכנית תגובה לאירועים.
דלתות אחוריות נסתרות במודלי שפה מוכווני-אדם מהוות איום מתוחכם: טריגרים זעירים אך יעילים מסוגלים לעקוף ביקורת אנושית ולערער מערכות קריטיות כמו איתור טוקסיות, NMT ו-QA.
על-ידי שילוב סריקה, אימון אדברסרי, וניהול נתונים קפדני ניתן לצמצם משמעותית את הסיכון. מודעות ופעולה פרואקטיבית הן מפתח להגנה בעולם NLP המתפתח במהירות.
בהבנת המנגנונים הללו ושילוב הכלים והפרקטיקות שהוצגו, תוכלו לשלב אבטחה בכל שלב בצנרת ה-NLP שלכם.
קוד מוצלח והישארו בטוחים!
אם מצאתם את התוכן הזה בעל ערך, תארו לעצמכם מה תוכלו להשיג עם תוכנית ההכשרה המקיפה והאליטיסטית שלנו בת 47 שבועות. הצטרפו ליותר מ-1,200 סטודנטים ששינו את הקריירה שלהם בעזרת טכניקות יחידה 8200.