מאיפה באות בעיות אבטחה בתוכנה?

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

בוודאי שכמות בעיות האבטחה שמתגלות קשורה לכמות השימוש בקוד, אבל זה לא הגורם המרכזי. באיזו שהיא רמה, זה כבר לא משנה אם משתמשים בקוד 10 מיליון אנשים 100 מיליון.
מה שיותר משפיע זה:
1. היציבות של הקוד: בעית אבטחה = באג, לקוד שלא משתנה לא נכנסים באגים חדשים, לכן כמות בעיות האבטחה (הקיימות, בלי קשר אם התגלו או לא) יורדת.
2. התכנון של המערכת:
במערכת עם תכנון לקוי, יש לך יותר בעיות אבטחה מפונקציות.
3. האיכות של הקוד.
4. כמות הביקורת שהקוד מקבל.

אם לתת דוגמאות:
חלונות XP בת 6, ועדיין מתגלות בה בעיות אבטחה.
הבעיות נובעות מאיכות קוד נמוכה ומבעיות תכנון, והן ממשיכות להתגלות למרות היציבות של המערכת (רובם המכריע של השינויים הם תיקוני באגים, לא תכונות חדשות).

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

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

Counterize2 – עדכון

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

אפשר להוריד אותו כאן.

קוד פתוח

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

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

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

כיף לקבל אימיילים מאנשים שמשתמשים בקוד שלי, גם אם אני בעצמי לא משתמש בו.

אסטריסק: או איך לחרפן את האוייב

באוגוסט פינגווין אתמול, היתה הרצאה מעניינת על אסטריסק, שהעביר גלעד בן יוסף.
אסטריסק היא פלטפורמה גמישה מאוד לטלפוניה, שמשוחררת כמובן ברשיון קוד פתוח (GPL).
היא יכולה לשמש כמערכת ל:

* מענה קולי (הגעתם לתא של..)
* מרכזית טלפונים
* נתב שיחות (לחץ 101 כדי להגיע אל)
* שרת SMS, כלומר להוציא ולקבל הודעות sms, על קוי בזק (כמו בטלפונים הקויים החדשים)

    ועוד ועוד.
    להמשיך לקרוא אסטריסק: או איך לחרפן את האוייב

    FireStats

    ניסיתי, באמת שניסיתי לשפר את קאונטרייז, אבל, אם להיות עדין, הקוד שלו זוועתי.
    העדפתי כבר לנצל את ההזמנות כדי ללמוד CSS, JavaScript, Ajax וPHP, ולכן החלטתי לכתוב תוסף סטטיסטיקות חדש, שיהיה האמא של תוספי הסטטיסטיקות באשר הם!
    שמו של הרך הנולד הוא FireStats, ואני אשמח לקבל תרגומים בעברית לשם הזה – התרגום הזוכה יזכה בעותק חינם של FireStats!

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

    הדגמה חיה של FireStats.

    דף הבית של FireStats.

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

    גנוקי (גנו-נוקיה), הוא שרת קטן שמאפשר לחבר מכשיר סלולארי למחשב, ולשלוח איתו הודעות SMS.
    הוא מאפשר התחברות דרך חיבור סריאלי, USB ובלו-טות' במגוון פרוטוקולים, ככה שהוא תומך בהרבה מאוד מכשירים.
    ההתקנה מורכבת יחסית, ולא מתאימה למתחילים.

    נשמע חמוד, אני אנסה להשמיש את ה3510 הישן שלי לטובת העניין.
    יכול להיות נחמד לקבל הודעות SMS מהשרת.

    דרך דביאן אדמין