!UnrealIRCd 3.2.8.1 Backdoored

[במקור: http://www.freeclipartnow.com/d/7728-1/Alice-finding-tiny-door-behind-curtain.jpg] 

לפני זמן לא רב, התוודעתי לקוד הבא, שפורסם באופן אנונימי ב-Explo.it, אני מדבר על הקוד הבא:
http://www.exploit-db.com/exploits/13853/

מפרסם הקוד טוען כי ע"י שימוש בקוד הנ"ל ניתן להריץ פקודות על כל שרת IRC מסוג Unreal (גירסא, 3.2.8.1).
מהסתכלות בקוד עצמו, לא מצאתי שום דבר שמעיד על כך, זאת אומרת, לא ראיתי שום חולשה שנוצלה באותו קוד
שאכן תגרום לשרת לבצע את הפקודות שנשלחות ע"י אותו קוד, והרי ברור שה-IRCd לבד לא יבצע את הפקודות
האלה על דעת עצמו, לא?

מסתבר שטעיתי :), לא רק שהשרת כן יריץ את אותן הפקודות, הוא גם יעשה זאת בשמחה. מסתבר שלפני כשבעה
חודשים, מספר חבר'ה פרצו לאחד משרת ה-FTP שעליהם אוחסנו הקודים של Unreal, ושתלו בהם Backdoor!
 
לפני יומיים Syzop (ושאר הצוות של Unreal) פרסם בפורומים של Unreal את הפוסט הבא:

 
This is very embarrassing...

We found out that the Unreal3.2.8.1.tar.gz file on our mirrors has been replaced quite a while ago with a version with a backdoor (trojan) in it.
This backdoor allows a person to execute ANY command with the privileges of the user running the ircd. The backdoor can be executed regardless of any user
restrictions (so even if you have passworded server or hub that doesn't allow any users in).

It appears the replacement of the .tar.gz occurred in November 2009 (at least on some mirrors). It seems nobody noticed it until now.

Obviously, this is a very serious issue, and we're taking precautions so this will never happen again, and if it somehow does that it will be noticed quickly.
We will also re-implement PGP/GPG signing of releases. Even though in practice (very) few people verify files, it will still be useful for those people who do.
 

בהמשך ההודעה הוא מציע שתי דרכים לברר איך אפשר (בתור מנהל שרת) לדעת האם השרת אכן נגוע (במידה ואתם
מריצים את הגרסה הנגועה: Unreal3.2.8.1), הדרך הראשונה היא לברר מה ה-Hash של הקובץ שממנו פרסתם את
שרת ה-IRCd, במידה והוא שווה ל:
752e46f2d873c1679fa99de3f52a274d

אתם נגועים. 

הדרך השניה שבה ניתן לברר האם אתם נגועים, היא הרצת הפקודה הבאה:
grep DEBUG3_DOLOG_SYSTEM include/struct.h

במידה והפלט שלה הוא:
#define DEBUG3_LOG(x) DEBUG3_DOLOG_SYSTEM (x)
#define DEBUG3_DOLOG_SYSTEM(x) system(x)
 
אתם נגועים גם.
מה שניתן לעשות במצב כזה הוא כמובן להוריד ולקמפל את השרת מחדש. (לא לפני שבדקתם את הגרסה שהורדתם...)

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

כמובן שלא עבר זמן רב ו-HD Moore דאג לכתוב מודול ל-Metasploit שמקל על ניצול החשיפה.
 
 
שבעה חודשים לקח לקהילה למצוא את החשיפה הזאת, זה מעלה את השאלה (שאגב, התשובה לה, לדעתי, ברורה מאוד),
האם ישנם עוד מוצרים, אולי אפילו יומ-יומיים ונפוצים יותר, שגם בהם שתולים דברים כאלה או אחרים?
 
מה אתם חושבים? 






תגובות על '!UnrealIRCd 3.2.8.1 Backdoored':



#1 

איתמר (אורח):
תוסיף את זה
http://pastebin.ca/1883036
14.06.2010 20:41:34

#2 

cp77fk4r:
ראיתי את זה, אין סיבה להכניס את זה- פשוט ניסו למכור את זה לחבילת ה-CANVAS של-ac1db1tch3z, אבל תודה רבה בכל אופן :)

אגב, ממש מפתיע שהחבר'ה האלה עדיין בסביבה. הם חיים יותר מדי זמן בשביל Blackhats ;)
14.06.2010 20:49:18

#3 

איתמר (אורח):
אני חושב שהם יותר צחקו על זה שהם רק מצאו את זה עכשיו וכהוכחה שזה שלהם הם הוסיפו את המודל בצחוק שהם רצו למכור לimmunity.
14.06.2010 21:47:07

#4 

m1ch43l1014 (אורח):
אחלה פוסט !
14.06.2010 22:53:43

#5 

cp77fk4r:
יכול להיות איתמר- הפסקתי לעקוב אחריהם איפשהו ב-2004 :)

ומיכאל- תודה רבה.
אשמח אם תביעו את דעתכם לגבי השאלה בסוף הפוסט.
15.06.2010 00:44:16

#6 

m1ch43l1014 (אורח):
יש מצב שיש עוד מוצרים גם הsun הייתה עם חור אבטחה בJVM.למשל גם בchrome יש את השליחת פרטים אישים של הקליינט.לדעתי יש דברים שנעשים בסתר אבל לא בכל מקום לכן צריך לפתוח עיינים :)
15.06.2010 01:45:11

#7 

cp77fk4r:
אין לי מושג על מה אתה מדבר ב-Chrome, שלית פרטים אישיים של הקליינט? אתה מדבר על ה-User-Agent? זה נמצא בכל דפדפן...

וכן, יש עוד הרבה סיפורים, כמו ה-Rootkit של Energizer:
http://www.symantec.com/connect/fr/blogs/trojan-found-usb-battery-charger-software
15.06.2010 10:34:16

#8 

m1ch43l1014 (אורח):
לא אני לא מדבר על הUA אני מדבר על זה שיש דברים שהם שולחים למסדים שלהם.אבל לא רק הם למשל ראיתי תוכנה שהיא כחול לבן והיא שולחת פרטים למסד של שרת התוכנה
15.06.2010 12:26:00

#9 

cp77fk4r:
אתה מדבר על המידע שנשלח במסגרת Safebrowsing? אם לא- תפרט קצת יותר...
15.06.2010 12:57:00

#10 

iosolidar (אורח):
הייתה מצפה מאנשים טכניים לבדוק חתימות, מי לעזעזל מתקין את השרתים הללו?
18.06.2010 16:45:42

#11 

cp77fk4r:
א'- מדובר באחד משרתי ה-IRC היותר פופולרים ונפוצים שיש.

ב'- הדבר היחידי שפורסם עם החבילה היה ה-HASH שלה, אבל אם יש לאותם פורצים גישה לשרתי ה-FTP אני מאמין שלא הייתה להם בעיה לשנות את ה-HASH שמוצג באתר...

Syzop הוסיף באתר שהם מעכשיו מפיצים את החבילה דרך מנגנוני PGP/GPG, ככה שזה אמור לפתור את הבעיה.
18.06.2010 17:45:47

#12 

anonymous (אורח):
אחלה כתבה, אני מעריך את היזמות וההשקעה שלך מאוד אפיק.
לגבי השאלה בסוף הפוסט, אני מניח שכן, במיוחד במוצרי קוד סגור, עדיף לעשות בדיקת HASH אבל כמו שאמרת אם היה להם גישה לשרת יכלו לשנות גם את הHASH המוצג באתר, בכללי רוב העידכונים בתוכנות בדרך כלל נובע מסיבות אבטחה וגילוי חולשות שנמצאו בהן, ואנחנו ממהרים לעדכן. לפעמיים לעדכן ולחדש מוצר מהר מאוד לא מומלץ..הסיגנון האישי שלי לאבטח את המחשב שאני נמצא בו כך שגם אם התגלה חולשה מסויימת במוצר שאני משתמש בו, יהיה קשה לממש אותו ובנוסף להישאר בלתי גלוי. וכשהעדכון למוצר נבדק ואין עליו שום אמרה שלילית או שום כתבה כמו שהצגת כאן, אני מרגיש חופשי לעדכן. בסופו של דבר כמו שגדולי אבטחת המידע אומרים, אין כזה דבר מחשב מוגן. במיוחד שיש כל כך אספקטים.
19.06.2010 02:24:56

#13 

נתנאל שיין (אורח):
חבל שלומדים רק מטעויות
שימוש קל ב- IDS היה מונע בעיה של שינוי לא ידוע בקבצים.
19.06.2010 15:42:50

#14 

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

ופה עוד גוף שלישי עשה זאת. מי אמרת שמוזילה לא מחדירה קוד זדוני אל תוך הדפדפן שלה, אם ורק תרצה? כמובן שיש כאן פארנויות, והן לא בריאות בסך הכל, אבל זה רק מראה עד כמה שאנחנו פתטים ועיוורים מתוך בחירה. קוד פתוח הוא בסופו של דבר, לא ערב לשום דבר.
19.06.2010 21:01:38

#15 

cp77fk4r:
צודקים בהחלט iTK98 ו-נתנאל. ו-Anonymous, תודה רבה על התגובה!
19.06.2010 21:22:14

#16 

iTK98:
רק מחזק את הצורך שלנו היום (במעבר להפרדה של משתמשים, משתמש על ומשתמשים רגילים) את הצורך בשימוש ב- MAC - mandatory access control. כך גם אפלקציות זדוניות לא יוכלו לגשת לחלקים במחשב שלא הותרו להם מלכתחילה.
19.06.2010 22:18:54

#17 

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

או שלא הבנתי אותך נכון?
20.06.2010 13:13:17

#18 

iTKse (אורח):
אני מדבר על החלק לאחר החדרת הקוד. נניח ויש לי מערכת שהחדירו אליה קוד זדוני, ניתן למזער את הנזק שהקוד עלול לגרום בעזרת מערכת הרשאות נוספת העובדת על בסיס MAC, ולא על בסיס השיטה "הישנה" של הרשאות משתמשים בלבד.

מיקרוסופט לדעתי מאוד מאחור בנושא (למרות שאין לי נסיון כלל עם חלונות 7, אז יכול להיות שאני טועה) אבל היום בהפצות העיקריות יש לך מערכת MAC אובונטו ו-סוזה עובדים עם AppArmor והפצות מבוססות RH כגון פדורה עובדות עם SELinux שלדעתי חזקה יותר אך גם כן מסובכת יותר.

MAC הינה שכבת הגנה נוספת שהופכת להיות הכרחית בימנו - לדעתי בכל מקרה.
20.06.2010 13:36:30

#19 

cp77fk4r:
K, מסכים איתך בהחלט.
מיקרוסופט הכניסה מנגנון שמזכיר את הפעילות של SELinux מויסטה בשם Mandatory Integrity Control - לא יצא לי להשתמש בו.
20.06.2010 15:31:44



הוסף את תגובתך:
כינוי:
תגובה:
קוד אבטחה:
העתק לכאן את הקוד:
 
Digital Whisper © 2009 - 2017 - כל הזכויות שמורות ל-אפיק קסטיאל ול-ניר אדר.