פגיעות התגלתה בשרת telnetd מחבילת GNU InetUtils. פגיעות זו מאפשרת חיבור עבור כל משתמש, כולל משתמש root, ללא אימות סיסמה. טרם הוקצה מזהה CVE. הפגיעות קיימת מאז גרסה 1.9.3 (2015) של InetUtils ונותרה ללא תיקון בגרסה הנוכחית 2.7.0. תיקון זמין בתיקונים (1, 2).
הבעיה נגרמת מהעובדה שכדי לבדוק את הסיסמה, תהליך telnetd קורא לכלי "/usr/bin/login", ומעביר כארגומנט את שם המשתמש שצוין על ידי הלקוח בעת ההתחברות אל... שרתכלי השירות "login" תומך באפשרות "-f", המאפשרת כניסה ללא אימות (אפשרות זו מיועדת לשימוש כאשר המשתמש כבר אומת). לכן, על ידי החלפת האפשרות "-f" בשם המשתמש, ניתן להתחבר ללא אימות סיסמה.
עם חיבור רגיל, לא ניתן להשתמש בשם משתמש כמו "-f root", אך ל-Telnet יש מצב חיבור אוטומטי המופעל על ידי האפשרות "-a". במצב זה, שם המשתמש אינו נלקח משורת הפקודה, אלא מועבר דרך משתנה הסביבה USER. כאשר כלי השירות login נקרא, ערך משתנה הסביבה הזה הוחלף ללא בדיקה נוספת וללא תווי בריחה מיוחדים. לכן, כדי להתחבר כמשתמש root, פשוט הגדירו את משתנה הסביבה USER ל-"-f root" והתחברו לשרת Telnet באמצעות האפשרות "-a": $ USER='-f root' telnet -a server_name
השינוי שהציג את הפגיעות נוסף לקוד telnetd במרץ 2015 וטיפל בבעיה שמנעה את קביעת שם המשתמש במצב התחברות אוטומטית ללא אימות Kerberos. כפתרון, נוספה תמיכה בהעברת שם המשתמש עבור מצב התחברות אוטומטית דרך משתנה סביבה, אך בדיקת אימות עבור שם המשתמש ממשתנה הסביבה נשכחה.
מקור: OpenNet.ru
