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

16 בנובמבר 2011

46 תגובות


 


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

 

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

 

 

אחד הכלים החשובים ביותר בכל סביבת פיתוח – היא הפקדים של טלריק, בכל סביבה שבה אני עובד (win form, web, wpf, silverlight) אני משתדל שיהיה לי את היכולת להשתמש בפקדים שלהם.

 

כמובן שהפקדים עולים כסף (ובכלל לא זול – בסביבות 1000$ עבור סביבה אחת – אבל זה שווה כל שקל), חשוב שיהיה ברור שאני לא מעודד לגנוב אותם חלילה – מטרתי בפוסט זה היא רק להראות עד כמה חשוב לכתוב קוד נכון.

 

בימים אלו יצא לי לראשונה להשתמש בחבילה של wpf controls שלהם, ובכל הפעלה של האפליקצייה קבלתי את ההודעה המעצבנת הבאה:

 

 

telerik trial

 

 

באיזשהו שלב בזמן הפיתוח נמאס לי לקבל את הודעת השגיאה – התחלתי לחפש ב – reflector (שגם איתו יש סיפור מצחיק – בהמשך אספר) איפה הם עושים את הבדיקה האם להציג את הודעת השגיאה, אחרי כרבע שעה של שיטוטים מצאתי את הקוד הבא:

 

 



internal static void Verify(FrameworkElement targetControl)


{


    if ((!IsInDesignMode &&


        (Application.Current != null)) &&


        (Application.Current.Resources["Telerik.Windows.Controls.Key"] == null))


    {


        VerifyImpl(targetControl);


        AssemblyProtection.Validate();


    }


}


 

הם קוראים לפונקצייה בכל ctor של פקד.

 

כל מה שהייתי צריך לעשות כדי להפסיק לקבל את ההודעה הוא להוסיף את הקוד הבא:

 



<Application.Resources>


    <my:String x:Key="Telerik.Windows.Controls.Key">someKey</my:String>


</Application.Resources>


 

 

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

 

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

 

 

רציתי גם לספר על ה – reflector (וזה שהם לוקחים כסף) – אבל לצערי כבר אין לי זמן, אז זה יחכה כבר לפוסט הבא.

הוסף תגובה
facebook linkedin twitter email

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *

46 תגובות

  1. יוני16 בנובמבר 2011 ב 23:01

    גדול 🙂

    הגב
  2. עצלן קרקע17 בפברואר 2012 ב 18:42

    אולי זו לא עצלנות, אולי הם פשוט לא מתייחסים ללקוח שלהם כרמאי בפוטנציה?

    הגב
  3. Shlomo18 בפברואר 2012 ב 19:59

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

    הגב
  4. Shlomo19 בפברואר 2012 ב 13:34

    ברור שקנינו (3 רשיונות).

    הפוסטים נדברים על איכות קוד

    הגב
  5. משה26 בפברואר 2012 ב 17:08

    ענק!

    (ובסיסי)

    אבל במילא עם Reflector יכולת לנסות ליצור Key של עצמך. לא ?

    הגב
  6. דורון לוי אוהב חרדים טובים ושונא חרדים רעים23 במאי 2012 ב 14:14

    איזו עברית גרועה יש לך – כמעט כמו המוסר הגרוע שלך. על "לא תגנוב" שמעת?

    הגב
  7. Shlomo23 במאי 2012 ב 20:02

    לקחתי לתשומת לבי את ההערה על העברית, אני מניח שקראת את אחד מהפסקאות הראשונות בפוסט:

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

    הגב
  8. דורון לוי אוהב חרדים טובים ושונא חרדים רעים24 במאי 2012 ב 13:57

    "פיסקה" היא נקבה. קצת כבוד ללשון הקודש! חוץ מזה, אתה נשמע כך כמו אדם לא חכם ולא משכיל (וחבל כי זה בבירור לא המצב).

    לגבי ענין הגניבה – לא שכנעת אותי… כמה נאיבי לחשוב שאתה לא מסייע לעוברי עבירה בכתיבת הפוסט הזה ודומיו.

    הגב
    1. moncler doudoune homme20 בנובמבר 2013 ב 15:39

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

      הגב
      1. hxuhhdxdbtjs21 בדצמבר 2013 ב 10:32

        למר בר שמע,
        חביב ביותר לראות מטומטמים שכמותך המתקנים אחרים לכדי שגיאות של חוסר הבנה מוחלטת!

        פסיקה – ב="פ" שוואית הינה מתן פסק דין בבית המשפט או בעולם המחשבים זהו interupt – הרמת "דגל" (semaphor) למערכת למשוך ערך
        פיסקה – "פ" בחיריק, הינה קבוצת משפטים.

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

        הגב
  9. Shlomo24 במאי 2012 ב 21:12

    לגבי העברית – שוב אתה צודק (אולי כדאי שאתחיל לכתוב באידיש)

    לגבי עניין הגניבה – אני בעמדתי ואתה בעמדתך – כך שחבל להמשיך לתווכח.

    הגב
  10. דודי ב. נהריה25 במאי 2012 ב 12:11

    לדורון לוי אוהב חרדים טובים ושונא חרדים רעים:
    אם אני מבין אותך נכון, אפשר בהחלט להחליף את המילה "חרדים" ב"אנשים" וזה עדיין יאפיין אותך כמו שצריך. נכון?

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

    נקודה למחשבה.

    הגב
  11. יואב2 ביוני 2012 ב 9:05

    זה כבר לא reflector , יש כלי זהה בשם xspy

    הגב
  12. יואב2 ביוני 2012 ב 9:08

    התבלבתי בשם, ilspy זה שם הכלי שמחליף את reflector

    הגב
  13. shai25 ביוני 2012 ב 13:49

    ככה זה, אלוהים וגנבים תמיד עובד טוב

    הגב
  14. Shlomo25 ביוני 2012 ב 16:38

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

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

    בכל הכבוד
    שלמה גולדברג – הרב דוטנט

    הגב
  15. חילוני גמור..5 ביולי 2012 ב 14:59

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

    הגב
  16. תומר קיסר5 ביולי 2012 ב 15:27

    דורון לוי לך שיאבחנו אותך

    הגב
  17. Ang 19 בספטמבר 2012 ב 18:56

    שלמה אתה תותח!!!!!!!!!! 🙂
    אני מדבר נטו על החדות ויכולת המחשבה!
    לא חלילה על האפשרות לגזל!
    סלע – תותחים! (כן – אני סטודנט!)

    הגב
  18. ירון22 בספטמבר 2012 ב 14:04

    דווקא לטלריק יש תחליף חינם ל-REFLECTOR.
    Just Decompile.
    שווה.

    הגב
  19. לא אבשלום קור11 באוקטובר 2012 ב 19:46

    מגוחכת ולא מגוכחת…

    הגב
  20. קוקי29 באוקטובר 2012 ב 14:13

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

    הגב
  21. לירון20 בפברואר 2013 ב 9:43

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

    הגב
  22. Shlomo20 בפברואר 2013 ב 12:35

    מסתבר שאין שום הבדל בפונקציונליות.

    הגב
  23. נתי25 בפברואר 2013 ב 4:40

    אולי פשוט לעזוב את דוטנט ? למה לגעת בזה ?

    הגב
  24. חן3 במרץ 2013 ב 3:48

    אני לא משתמש בטלריק אלא ב- Dev Express שנים. אני חושב שכל הכבוד לשלמה על השיתוף בידע העצום שלו, ומי שלא נעים לו באמת שלא יקרא ובמקום לבקר אנשים שכל אחד הסתכל על עצמו. אף אחד אינו מושלם ולא לכל האנשים יש כוונות לא טובות.

    שבוע טוב,
    חן 🙂

    הגב
  25. שונא טרולים טובים ושונא טרולים רעים8 במרץ 2013 ב 2:26

    והמבין יבין

    הגב
  26. ארז לרנר17 באפריל 2013 ב 5:44

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

    הגב
  27. נועם7 במאי 2013 ב 4:17

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

    הגב
  28. רון26 במאי 2013 ב 3:43

    יפה מאוד ! כל הכבוד לך !

    הגב
  29. אבשלום קוד28 במאי 2013 ב 4:40

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

    הגב
  30. יהב3 ביוני 2013 ב 7:35

    נועם אתה ממש לא צודק!

    הגב
  31. יהב3 ביוני 2013 ב 7:35

    נועם אתה ממש לא צודק!

    הגב
  32. אלירם9 ביוני 2013 ב 4:52

    לא אבשלום קור כתב/ה: מגוחכת ולא מגוכחת…
    והוא צודק לגמרי. גם אני משתהה שניה לפני שאני כותב את המילה מגוחך ואז אני נזכר שבכתיב הנכון בתוך כל ההטיות המגוחכות מסתתרת המלה ח"כ.

    הגב
  33. ליאור14 ביוני 2013 ב 9:56

    שלמה יפה מאד
    אני דווקא חושב שטוב להעלות דברים כאלה של קידוד לא טוב וחוסר תשומת לב לפרטים (במיוחד בנושאי אבטחת מידע)
    תמשיך ככה

    הגב
  34. hawk15 בספטמבר 2013 ב 9:24

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

    הגב
  35. ליאור16 בספטמבר 2013 ב 10:12

    בהרבה מקרים זה לא מעצלנות, אלא אסטרטגיה.
    מי שרוצה לפרוץ, יפרוץ. ככה זה. מה שנעשה פה זה keeping the honest people honest

    הגב
  36. יאיר ישראל חרעוץ23 בספטמבר 2013 ב 4:28

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

    הגב
  37. אסף1 באוקטובר 2013 ב 5:56

    אני מציע לך לבדוק ב-EULA (הסכם שימוש) של גרסת הניסיון של טלריק. יש מצב שמה שאתה עושה (מפרסם מעקף כזה) הוא לא חוקי.

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

    הגב
  38. האקר7 באוקטובר 2013 ב 6:28

    אל תפרוץ לתוכנה של שקל וחצי
    תעשה משהו יותר מועיל

    הגב
  39. אסף2 בנובמבר 2013 ב 8:34

    אתה מדבר על עצלנות של אחרים, אבל אתה עצלן גם, בסוף הפוסט אתה מתלונן ש-reflector לא חינמי, אבל לא טרחת לבצע חיפוש של שתי דקות בגוגל לפתרון מקביל חינמי.
    לדוגמה http://ilspy.net/

    הגב
  40. ליעד5 בנובמבר 2013 ב 7:03

    שלמה,
    באותה המידה, כשאתה משתמש ברפלקטור (הרי הקוד של דוט נט הוא לא באמת באמת מקומפל לאסמבלי אלא לשפת ביניים) היית יכול לראות גם אם פונקצית הווריפיקציה היתה ממש בודקת את מהות המפתח – ואו אז היה יותר קל לפרוץ וליצור מפתח מזוייף.

    לדעתי, הכי טוב היה מין הסתם לשים את קוד הוריפיקציה בשרת, ואני מניח שזה לא רציונלי בזמן פיתוח לדרוש מהמשתמש להיות מחובר לאינטרנט כל הזמן כי הרי עובדים לפעמים ב offline.
    ולכן, (אני מקווה, לפחות) רק כשהאפליקציה רצה ממש באינטרנט, יש קוד אג'קס שבודק שהמפתח תקין אל מול השרתים של טלריק.
    ככה שבאופן כללי, לא ברור כל כך המהות של הפוסט הזה… לא מדובר בפיתוח קוד נכון פה, כי מה עוד הם יכלו לעשות כנגד רפקטורינג?

    הגב
  41. duttMalo14 בנובמבר 2013 ב 7:55

    פקדים עולים המון כסף, ולא שווים כלום.

    עוברים לקוד פתוח

    הגב