דאָס איז די דריטע עפּיזאָד אין אַ סעריע פון אַרטיקלען וועגן די מערסט פאַרשפּרייטע סאָרט פון ווייכווארג צושטעל קייט אנפאלן: יענע וואָס מיסברויכן אַ עפנטלעך רעגיסטרי פון עפענען-מקור ווייכווארג קאמפאנענטן. נאכדעם וואס איך האב אנאליזירט אין דעם פריערדיגן עפיזאד "אַנאַטאָמיע פון בייזוויליקע פּאַקאַדזשאַז: וואָס זענען די טרענדס?"ווי אזוי די שלעכטע אקטיארן אריינלייגן בייזוויליקע אויפפירונג אין נייע אדער עקזיסטירנדע פארעפנטלעכטע קאמפאנענטן, זענען מיר גרייט אנצוטון אונזערע פייערלעשער רעקלעך און אויספארשן ווי אזוי מיר קענען ערפאלגרייך בלאקירן בייזוויליקע ווייכווארג וואס ווערט איבערגעגעבן אויף דעם וועג, אדער אלטערנאטיוו, זיך אפגעבן מיט א מעגליך ערנסטן סייבער אינצידענט ווייל מיר האבן גענומען דעם אומרעכטן צוגאנג."
רובֿ זיכערהייט-באַוואוסטזיניקע פּראָפעסיאָנאַלן האָבן געדאַנקען וועגן ווי צו האַנדלען מיט דעם סאַקאָנע. מיר האָבן געהערט זיכערהייט מאַנאַדזשערז זאָגן אָן קיין צווייפל אַז SCA מכשירים זאָגן שוין ווען אַ פּאַקעט ווערסיע איז מאַלווער. אדער אַז זיי זענען אָפּהענגיק אויף באַקאַנטע, העכסט רעצענזירטע ווייכווארג קאָמפּאָנענטן, וואו יעדע מאַלווער וואָלט באַלד דעטעקטירט און אַוועקגענומען ווערן. זיי נוצן אָפֿענע מינערווערטיקע/פּאַטש ווערסיעס צו אויטאָמאַטיש באַקומען וואַלנעראַביליטי פיקסיז, און דאָס איז דער ריכטיקער, רעקאָמענדירטער וועג צו פֿאַרמינערן דעם ריזיקאָ אויף אָפֿענע מקור אָפּהענגיקייטן, נאָכפֿאָלגנדיק די "פּאַטשן פרי, פּאַטשן אָפט”פּרינציפּ.
אין דעם עפּיזאָד וועלן מיר איבערקוקן פארוואס די געדאנקען זענען פאַלש, און ווי אזעלכע מיסקאַנסעפּשאַנז ביישטייערן צו דער פּאָפּולאַריטעט פון דעם אַטאַק מעכאַניזם, און צו אַן איבערוועלטיקנדיקן ריזיקע וואָס אָרגאַניזאַציעס דערפאַרן. מיר וועלן ענדיקן מיט וואָס אַרבעט יאָ, און וואָס איז די מי און רעסורסן וואָס זענען פאַרמישט.
פּראָסט מיסקאַנסעפּשאַנז
בעת אונדזער רייזע מיט ווייכווארג זיכערהייט, האבן מיר געזען די אטאקע טעכניקן זיך אנטוויקלען און א ברייטע קייט פון געדאנקען פון זיכערהייט-באוואוסטזיניגע מענטשן. ארגאניזאציעס פארשטייען אפט נישט וואס ארבעט קעגן דעם סכנה, ממילא וועלן מיר ערשט אויספארשן וואס ארבעט נישט, צוזאמענגענומען אין דער פאלגנדער, נישט פולשטענדיגער, ליסטע פון מיספארשטענדענישן.
אומרעכטע השגה #1: SCA מכשירים מעלדן שוין שלעכטע קאָמפּאָנענטן
טאקע! אבער נאך דעם פאקט... ווען מסתּמא איז עס שוין צו שפּעט אויב דער עלעמענט איז גענוצט געוואָרן אין אַ ווייכווארג בויען, און די שלעכטע אַקטיאָרן האָבן שוין באַקומען אַ פֿוס אין אַ דעוועלאָפּער אָדער CI/CD באַלעבאָס. סודות זענען אפשר אַרויסגעכאפט געוואָרן, נאָך מאַלוואַרע איז דאַונלאָודיד און אינסטאַלירט געוואָרן, און אפשר האָט דער שונא זיך באַוועגט צו דער זייט און שוין באַקומען צוטריט אַנדערשוואו.
ווייכווארג קאמפאזיציע אנאליז (SCA) מכשירים זענען דיזיינט געוואָרן צו אידענטיפיצירן פּאָטענציעלע באַקאַנטע שוואַכקייטן. מאָדערנע מכשירים טוען אַ גרויסע אַרבעט דורך פֿאַרגרעסערן דעם סיגנאַל-ראַש פאַרהעלטעניש, באַשטימען צי די שוואַכקייט איז טאַקע דערגרייכלעך אָדער אויסניצלעך. אָבער זיי זענען נישט נוצלעך קעגן נייַע מאַלווער. טראַכט פון אַ בייזוויליקן קאָמפּאָנענט ווי אַ נול-טאָג שוואַכקייט: נאָר ווען זיין בייזוויליק נאַטור ווערט דעטעקטירט, ווערט דער קאָמפּאָנענט געמאָלדן צום האָלדינג רעגיסטרי, וואָס נאָך אַ איבערבליק דורך אַ זיכערהייט מאַנשאַפֿט ווערט באַשטעטיקט ווי בייזוויליק און אַוועקגענומען פון רעגיסטרי. [קסנומקס].
אין יענעם מאָמענט, די וועלט (אַרייַנגערעכנט SCAס) ווייסט אז אינסטאלירן אדער ניצן דעם קאמפאנענט (אדער עפעס ווערסיע(ס) פון אן עקזיסטירנדיקן קאמפאנענט) איז נישט קיין גוטע זאך. אבער דאס איז ווען דער קאמפאנענט איז נישט פאראן פון רעגיסטריוויסן אז איך האב שוואכקייטן אין דריט-פארטיי קאמפאנענטן, אדער אפילו קאמפאנענטן וואס זענען קאטעגאריזירט געווארן אלס שלעכט דורך די רעגיסטרי איז גוט, אבער ליידער SCA אדער געוויינטלעכע אוידיט מכשירים העלפן נישט אין דעם קאנטעקסט. סיידן די SCA/audit טול קען טאקע וויסן פון פאראויס אז א קאמפאנענט איז שלעכט איידער עס ווערט גענוצט אין אייער ארגאניזאציע.
געדענקט, יעדע לייזונג קעגן בייזע אָפֿן-קוואַל קאָמפּאָנענטן מוז זיי דעטעקטירן אויף-דעם-פליען, צווישן ווען דער קאָמפּאָנענט ווערט פאַרעפֿנטלעכט אין רעגיסטרי און ווען דער קאָמפּאָנענט (ווערסיע) ווערט ערשט גענוצט אין אייער אָרגאַניזאַציע. און דאָס נעמט אַרײַן טראַנזיטיווע קאָמפּאָנענטן.
אומרעכטע השגה #2: קאנטראלירן אינסטאלאציע סקריפטן ביים בויען פארמיידט שלעכטע אויפפירונג פון אפען-קוואל קאמפאנענטן
פארשידענע פּעקל מאַנאַדזשערז פאָרשלאָגן די מעגלעכקייט צו לויפן סקריפּטן (אַרייַנגערעכנט אין די קאָמפּאָנענט טאַרבאַלל [קסנומקס]), פֿאַר לעגיטימע סיבות, ווי צוזאַמענשטעלן די נויטיקע זאַכן אויף פֿאַרשידענע פּלאַטפאָרמעס, שאַפֿן קאָד, אָדער דורכפֿירן טעסטן, און מיר זאָלן אַלע וויסן אַז זיי קענען ווערן מיסברויכט דורך שלעכטע אַקטיאָרן אויב בייזוויליקע סקריפּטן זענען אַרייַנגערעכנט אין די טאַרבאָל, אָדער אויב דער אַטאַקירער קען מאַכן אַ בייזוויליקן סקריפּט לויפֿן אַנשטאָט דעם גוטן.
וויסנדיק דאָס, קענען מיר קאָנפיגורירן דעם פּאַקעט פאַרוואַלטער צו איגנאָרירן סקריפּטן. למשל, מיט NPM די –איגנאָרירן-סקריפּס פאָן (אָדער אַ קאָנפיגוראַציע אייגנשאַפט אין דעם .npmrc טעקע) לאָזט אויס די סקריפּטן בעת דער אינסטאַלאַציע. דאָס קען שאַפֿן עטלעכע פּראָבלעמען ווײַל לויפֿן סקריפּטן איז געוויינטלעך אין פֿיל עקאָסיסטעמען: עטלעכע פּאַקעט מאַנאַדזשערס דערלויבן ניט אַפֿילו דיאַקטיווירן סקריפּט אויספֿירונג (רמז: פּראָמפּט "וועלכע פּעקל פאַרוואַלטער ערלויבן נישט דיאַקטיווירן די אויספֿירונג פֿון אינסטאַל סקריפּטן?” אין אייער באַליבטער קינסטלעכער אינטעליגענץ). אבער דאָס באַשיצט נישט בכלל (מיר דאַרפן דורכפירן אַז די איבערשפּרינגען דיסייבאַל קאָנפיגוראַציע איז אומעטום).
און ווען די בייזוויליקע אויפפירונג געפינט זיך נישט אין די אינסטאל סקריפטן נאר אין די ווייכווארג וואס זאל אויספירן ביי ראנטיים, באשיצט אונז די אפציע אליין נישט.
אומרעכטע השגה #3: ווערסיע פּינינג פאַרהיט שעדלעכע קאָמפּאָנענטן פון אינסטאַלירט ווערן
עס איז דא א קאמפראמיס צווישן פאטשינג פרי און אפט מיט אפענע ווערסיעס (לאָזנדיק דעם פּאַקעט פאַרוואַלטער אויטאָמאַטיש אינסטאַלירן נייע דערהייַנטיקונגען ווען זיי זענען פאַראַן פֿאַר זיכערהייט פיקסיז) און ווערסיע פּינינג (האבן אלע דירעקטע און טראַנזיטיווע אָפּהענגיקייטן פֿאַר אַ ווייכווארג אין אַ פֿיקסירטער ווערסיע). די זיכערהייט פּרינציפּן זענען האַרטנעקיק און מאל קעגנזייַטיג, ווי עס פּאַסירט מיט "פּאַטשן פֿרי, פּאַטשן אָפֿט" און "אַפּגרעידינג זאָל נישט גענומען ווערן לײַכטזיניק"עטלעכע פּעקל פאַרוואַלטער מאַכן אויטאָמאַטישע דערהייַנטיקונגען מיט סערווער ריינדזשאַז אויף דעם רעקאָמענדירטן וועג. גוט אויב איר ווילט אויך באַקומען די בייזע דערהייַנטיקונגען! יאָ, קאָמפּאָנענטן מוזן ווערן דערהייַנטיקט צו באַקומען זיכערהייט פיקסיז וואָס פאַרמאַכן וואַלנעראַביליטיז ווי באַלד ווי מעגלעך, אָבער ... קיינמאָל לאָזן דעם פּעקל פאַרוואַלטער דאָס טאָן אויטאָמאַטיש.
אומרעכטע מיינונג #4: ניצן באַגלייבטע קאָמפּאָנענטן איז זיכער. יעדע בייזע ווערסיע וואָלט באַלד געפֿונען, אַנטפּלעקט און אַוועקגענומען ווערן.
פארוואס איז א קאמפאנענט פארטרויט? אפשר ווייל עס איז זייער פאפולער, מיט אסאך אויגן וואס זוכן שוואכקייטן, א גרויסע צאל ביישטייערער פאר אויפהאלטונג, מיט פארשידענע הויפט אויפהאלטערס וואס איבערקוקן אלע זאכן מיט גרויס פלייס. pull requestsדי ווירקלעכקייט איז גאַנץ אַנדערש. עטלעכע וויכטיקע קאָמפּאָנענטן ווערן אויפגעהאלטן דורך אַן איינציקן, נישט באַצאָלטן דעוועלאָפּער. ברייט גענוצטע פריימווערקס האָבן... אַ פּאָר רעגולערע מיטאַרבעטער, מיט אַ שנעל-פאַרקלענערנדיקער צאָל פון commitס פּער אויפהאלטער (פאָפּולערע פּראָיעקטן האָבן אַ לאַנגע עק פון ביישטייערער וואָס פירן אויס עטלעכע דרייוו-ביי commit און קיינמאָל נישט צוריקקומען). און פּאָפּולערע פּראָיעקטן מיט אַן איינציקן אויפהאלטערס זענען אין גרויסע צאָלן.
שטעלט זיך פאר אז איר זאגט "אָה, מיר ניצן Spring Boot / Angular / React / PyTorch / אפיציעלע באַזע Docker בילדער, אַזוי דער ריזיקאָ וועגן וואָס איר רעדט איז גאַנץ נידעריק." אפשר איז דאָס אמת, מיר זיכערהייט פאַרקויפער שרעק-מאַכערייַ אַלע מאָל, און אַריינמישן זיך אין דעוועלאָפּמענט טימז צו פֿאַרמינדערן אַ דעבאַטירלעכן ריזיקע איז נאַרישקייט. איר זאָלט אפשר זיין פֿאַרפֿירט צו שפּרינגען צום ריזיקע אַקסעפּטאַנס פּאַראַגראַף (אין דער קומענדיקער סעקציע) און אַלץ געטאָן. צום באַדויערן, די מערסט פּאָפּולערע קאָמפּאָנענטן זענען צילן פֿאַר שלעכטע אַקטיאָרן, און למשל, די פּאָפּולערע די פּייטאָרטש ביבליאָטעק איז אַטאַקירט געוואָרן אין דער פאַרגאַנגענהייַט.
"גלייך געפֿונען, אַנטפּלעקט און אַוועקגענומען". עס נעמט טעג פאר א נייעם בייזוויליקן קאמפאנענט צו ווערן אראפגענומען פון דעם עפנטלעכן רעגיסטרי. רעגיסטריז זענען פארזיכטיג וועגן אראפנעמען א קאמפאנענט ווערסיע, פארן גוטן. אונזער ערפארונג איז אז ווען עס ווערט געמאלדן פון אונזער זייט, איז די דורכשניטליכע צייט פארן רעגיסטרי צו אראפנעמען די באטראפענע ווערסיע 39 שעה, מער ווי א טאג און א האלב. עס זענען דא בייזוויליקע קאמפאנענטן וואס ווערן אראפגענומען א וואך נאך אונזער ערשטע מעלדונג אין רעגיסטרי. און אין געוויסע פעלער, ווערט דער קאמפאנענט אראפגענומען נאר נאכדעם וואס א קרבן אדער אן אינצידענט רעאקציע פירמע מעלדט אן אינצידענט וואס האט צו טאן מיט דעם קאמפאנענט.
וואָס אַרבעט נישט קעגן בייזע קאָמפּאָנענטן
יעדער נישט-ספעציפישער צוגאנג וועט דורכפאלן שרעקליך. דאס איז זיכער, איר גיט נישט קיין עפעקטיווע קעגנמאסנאמען פארן ריזיקע פארבונדן מיט דעם סכנה.
בעקאַבאָלעדיק SCA מכשירים דערציילן אייך וועגן באַקאַנטע מאַלווער אָבער האָבן אַ גרויסע עקספּאָוזשער פֿענצטער. סיידן זיי פירן פּראָאַקטיוו דורכ מאַלווער דעטעקשאַן מיט געצוואונגען בלאָקירן פון בייזע קאָמפּאָנענטן, אַרבעטן זיי נישט קעגן דעם סאַקאָנע.
דיאַקטיווירן אינסטאַלאַציע סקריפּטן קען העלפֿן אָבער דאַרף דורכגעפֿירט ווערן אומעטום וואו אַ קאָמפּאָנענט דאַרף אינסטאַלירט ווערן. דאָס זעלבע מיט ווערסיע פּינינג, ווײַל ווערסיעס קענען נישט פּינט ווערן פֿון אַ זיכערן אָנהייב צושטאַנד אויף אייביק.
אננעמען אז פאפולערע קאמפאנענטן באקומען גענוג אויפמערקזאמקייט אז זיי קענען נישט ווערן אינדזשעקטירט מיט אומגעוואונטשענע אויפפירונג אין א סופּליי טשיין אטאקע אן א כמעט גלייכע דעטעקציע צו פארמיידן קיין שאדן איז נאאיוו און ריזיקאליש. איר ווילט דאך נישט לעבן אויפן ברעג, צי נישט?
אויב איר שטעלט זיך אפ ביי דעם פונקט, דעמאָלט ריזיקע אקצעפטאציע איז דאָס איינציקע וואָס איר קענט טאָן: דאָס איז אַ דעcisאײַנפֿאַל וואָס דאַרף דאָקומענטירט ווערן אין אײַער סכּנה מאָדעל/ריזיקע אַסעסמענט, אַרײַנגערעכנט די באַגרינדונג פֿאַר אָננעמען דעם ריזיקע און זײַנע מעגלעכע אימפּליקאַציעס. פֿאַרגרעסערן וויסיקייט דורך קאָמוניקירן עס צו די פאַרוואַלטונג און אַנדערע באַטרעפֿנדיקע פּאַרטייען. עטלעכע קאַנטינדזשאַנסי קען זיין געפלאנט ווען א בייזוויליקע קאמפאנענט ווערט אינסטאלירט אדער אריינגענומען אין אייער ווייכווארג, אבער דאס איז שווער ווייל אטאקירער האבן אסאך וועגן צו גיין. די דעטאלן פון א סופּליי טשיין אטאקע באזירט אויף די נוצן פון א בייזוויליקע קאמפאנענט וועלן דראסטיש ענדערן די עפנטלעכע אפענטלעכקייט פון דעם אינצידענט, וואס איז מסתמא פארלאנגט אונטער אייער ארגאניזאציע'ס רעגולאציעס פריימווערק. איר קענט אויך אדרעסירן קאָמפּענסירנדיקע קאָנטראָלן or טראַנספער ריזיקע למשל מיט פארזיכערונג.
אבער, עס זענען דא קאנטראלן וואס אדרעסירן די סכנה און מען זאל זיי באטראכטן אויב איר זענט נישט צופרידן מיט ריזיקע אקצעפטאציע. ביטע ליינט ווייטער.
וואָס אַרבעט קעגן אַטאַקעס מיט בייזע קאָמפּאָנענטן
סאָליד ווערסיע האַנדלינג
ווערסיע פּינינג מיט קאָנטראָלירטע און אינפאָרמירטע ווערסיע באַמפּס איז דער וועג צו גיין, צו באַלאַנסירן די נויטווענדיקייט פון באַזייַטיקן וואַלנעראַביליטיז אָן באַקומען מאַלווער. אָבער געדענקט מיסקאַנסעפּשאַן #3: ווערסיע פּינינג אַליין איז נישט גענוג צו בלאָקירן בייזוויליקע קאָד וואָס קומט פון נייַע ווערסיעס, ווייַל איר וועט דאַרפֿן אין דער צוקונפֿט צו דערהייַנטיקן ווערסיעס אין יעדער דירעקט אָדער אומדירעקט אָפּהענגיקייט. אין דעם מאָמענט דאַרפט איר באַווייַזן שטאַרק גענוג אַז אַלע מאָדיפיצירטע ווערסיעס אַנטהאַלטן נישט מאַלווער.
פרי ווארענונג
איין צוגאַנג צו דעם פּראָבלעם פון בייזע קאָמפּאָנענטן איז אַ פרי וואָרענונג סיסטעם (דאָ גערופן מאַלוואַרע פרי וואָרענונג אדער MEW), וואו נייע ווערסיעס ארויסגעגעבן (פאר נייע אדער עקזיסטירנדע קאמפאנענטן) ווערן אנאליזירט דורך א דעטעקציע מאטאר, וואס ווען גענוג באווייזן ווערן געפונען קען קלאסיפיצירן די נייע ווערסיע אלס מעגליך בייזוויליג.
אויטאמאציע איז דא וויכטיג, ווייל עס איז אוממעגלעך צו מאנועל איבערקוקן אלע נייע קאמפאנענטן מיטן היינטיגן ארויסגעבונג טעמפא. ממילא דארף דער דעטעקציע מאטאר קאמבינירן א פארשיידנקייט פון טעכניקן, אפשר אריינגערעכנט סטאטישע, דינאמישע, און מעגלעכקייט אנאליז, באניצער רעפוטאציע, און באווייזן וואס קומען פון דיסקרעפנסיעס צווישן די קאמפאנענט מעטאדאטא און די טארבאל אינהאלט, אדער צווישן טארבאל און די קוואל רעפאזיטארי פון וואו דער קאמפאנענט שטאמט לכאורה.
עס איז אַ טונקעלע זאָנע צווישן דער פּובליקאַציע צייט און ווען דער מאָטאָר אַנאַליזירט די אינהאַלט פון די קאָמפּאָנענטן, אָבער עס זאָל נישט זיין מער ווי אַ פּאָר מינוט. די סכעמע קען ווערן מאָדיפיצירט, למשל דורך וואַרטן ביז נייע קאָמפּאָנענטן ווערן אַנאַליזירט איידער מען ערלויבט זיי צו ווערן אינסטאַלירט און גענוצט אין דער ווייכווארג בילד. pipelineס, אדער אנאליזירן זיי אויף פארלאנג ווען נויטיג. א קאמפאנענט ביי א געגעבענער ווערסיע איז אומענדערלעך [קסנומקס], אַזוי דאַרף מען עס אַנאַליזירן בלויז איין מאָל.
פולע אויטאמאטיזאציע איז נישט מעגלעך, און א זיכערהייט איבערבליק פאר מעגליך שלעכטע קאמפאנענטן איז נויטיג. היט זיך פון דידזשיטאַלע פּאַנאַסיאַ פּראָפּאָנענטןקינסטלעכע אינטעליגענץ און מאַשין לערנען זענען נישט גענוג דעוועלאָפּעד צו נעמען דאָס לעצטע וואָרט ווען עס קומט צו באַשטעטיקן צי אַ סאַספּעקטיד קאָמפּאָנענט האט מאַלווער. זיכער, מאַשין לערנען שפּילט אַ שליסל ראָלע אין די דעטעקציע מאָטאָר אין קלאַסיפיצירן די אַרייַנשרייַב קאָמפּאָנענט פון די רויע באַווייַזן קאַפּטשערד, אָבער אַמאָל די קאָמפּאָנענט איז "קוואַראַנטיינד" די לעצטע וואָרט איז אויף די מאַנואַל אָפּשאַצונג דורך אַ זיכערהייט מאַנשאַפֿט מיט דערפאַרונג אין בייזוויליקע קאָמפּאָנענטן. דאָס באַשטעטיקט קיין פּאָטענציעל מאַלווער אָדער רי-קלאַסיפיצירט עס ווי זיכער. און די צייט פּעריאָד איז אין די שעה קייט.
די רעגיסטרי באריכטעט וועגן דער בייזוויליקער ווערסיע/קאָמפּאָנענט; די רעגיסטרי פירט דאַן אויס איר איבערבליק צו באַשטעטיקן און גייט ווייטער צו דער עפנטלעכער אַנטפּלעקונג און אַראָפּנעמען פון דער רעגיסטרי. עטלעכע רעגיסטריעס האַלטן אַ זיכערהייט האַלטונג פּעקל. די צייט ראַם דאָ איז די טעג אָדער וואָכן זינט דער פּובליקאַציע, וואָס איז די 'וואוינען צייט'or'עקספּאָוזשער פֿענצטער'פֿאַר רובֿ שעדלעכע קאָמפּאָנענטן.

איז עס מעגלעך צו וויסן אויב אַ קאָמפּאָנענט ווערסיע איז בייזוויליק?
אַלזאָ, פֿאַר אַ פֿריִע וואָרענונג, דאַרפֿן מיר געבן אַ צופֿרידנשטעלנדיקן ענטפֿער אויף דער פֿראַגע: ווי קען איך וויסן אַז אַ ביבליאָטעק אָדער פּעקל איז (נישט) בייזוויליק? ווי צו זאַמלען גענוג באַווײַזן פֿון בייזוויליק נאַטור? מעגלעך, אָבער שווער, ווײַל די קעגנער נוצן אַ סך פֿינצטערניש צו פֿאַרמײַדן דעטעקציע. עס זענען פֿאַראַן פֿאַרשידענע צוגאַנגען, יעדער מיט מעלות און חסרונות.
סטאַטיק אַנאַליסיס קען אויספארשן אלע אויספיר-וועגן, קאנטראלירן פאר טעכניקעס גענוצט דורך אנפאלער אן לויפן דעם קאמפאנענט, און דורכפירן פאר-פראסעסינג אויפגאבן ווי דע-פארבלאזן אדער דעשיפרירן. ווען אנפאלער פרובירן צו באהאלטן זייערע שלעכטס, זענען פארבלאזן-פארזוכן טאקע א באווייז פון מאלווער (אבער באמערקט אז לעגיטימע קאמפאנענטן פארבלאזן קאוד פארן אויפהיטן אינטעלעקטועלע אייגנטום, וואס איז קעגן "עפענען מקור”). נאָר אַ מינאָריטעט פון העכסט סאָפיסטיקירטע אַטאַקעס מיט שטאַרקער פֿאַרשוואַרצונג דאַרפֿן סאַנדבאָקסינג, אָבער אַזאַ שטאַרקע פֿאַרשוואַרצונג איז אַ סימן פֿון בייזוויליקײַט. ביטע באַמערקט אַז קאַנווענשאַנאַל SAST מכשירים זענען דיזיינד געוואָרן פֿאַר אומאַבזיכטלעכע שוואַכקייטן, נישט פֿאַר שלעכטע כוונות ווי באַקטירן.
דינאַמיש אַנאַליסיס לויפט דעם קאָמפּאָנענט און אויספאָרשט די רעאַקציע דורך אינסטרומענטירן די ראַנטיים, טיפּיש דורך צושטעלן אַ סאַנדבאָקסעד סביבה. בייזוויליקע נאַטור וואָס ווערט טריגערד אונטער געוויסע באַדינגונגען קען דורכגיין אומדעטעקטירט: ביטע באַמערקט אַז מאַלוואַרע קען נוצן אויסמיידונג טעקניקס ווי ווירטואַליזאַציע/סאַנדבאָקס אויסמיידונג צו אַקטיוויזירן נאָר ווען נישט אונטער קאָנטראָל, און אויך אַן אָנווייַזנדיקער סימן פון בייזוויליקער טעטיקייט פֿאַר יעדער סטאַטישער אַנאַליז מאָטאָר.
מעגלעכקייטן אנאליז באַטראַכט וואָס דער קאָמפּאָנענט טוט: וואו עס פֿאַרבינדט זיך, וועלכע טעקעס עס אַקסעסט, וועלכע באַפֿעלן אָדער פּראָגראַמען ווערן געלאָפֿן, דער טערמינאַל אָדער מיטל I/O וואָס ווערט דורכגעפֿירט, אָדער וועלכע סיסטעם רופֿן ווערן אויפֿגערופֿן. די פֿינגערפּרינטינג פֿון נאַטור קען מען פֿאַרגלייכן (פֿאַר אַן עקזיסטירנדיקן קאָמפּאָנענט) איבער ווערסיעס, אַזוי ווען אומגעריכטע נאַטור ווערט דעטעקטירט, קען יענע באַווייַז אויפֿהייבן פֿאַרדאַכט פֿון פּאָטענציעלער בייזוויליקער אַקטיוויטעט וואָס ווערט אײַנגעשפּרייט אין דער נײַער ווערסיע. דער צוגאַנג פֿאָלגט די טריאַזש טריט וואָס זיכערהייט אַנאַליסטן פֿאָלגן ווען זיי טרעפֿן זיך מיט פּאָטענציעלער מאַלוואַרע: אַן דורכקוק מיט סטרינגס אדער ענלעכע מכשירים. די צוגאנג דעטעקטירט בייזוויליקע אויפפירונג אומאפהענגיק פון די אויסרופנדיקע באדינגונגען און ארבעט ווען קיין קוואל קאוד איז נישט פאראן.
קאָנטעקסט אַנאַליסיס זאמלט אינפארמאציע וועגן ווי אזוי דער קאמפאנענט איז ארויסגעגעבן געווארן און דורך וועמען. קאמפיינס פון שלעכטע אקטיארן ניצן אפט א נייעם באניצער אקאונט(ס) וואס זענען נישט אונטערגעווארפן צו קיין שטרענגן וועטערינג פראצעס. נאכפאלגן פארגאנגענע טעטיקייט קען געבן איינבליקן אין דעם אונטערלייגנדיקן באניצער, מערסטנס פאר אנאמאליעס וואס קענען אנווייזן אויף א מעגליכן קאמפראמיס. א רעפוטאציע איז אזוי שווער צו פארדינען און אזוי גרינג צו פארלירן! א באניצער אן קיין פארגאנגענע טעטיקייט איז נייטראל, אבער קארמא יאגט נאך די שלעכטע. העקטיוויסטן, אדער נארמאלע באניצער וועמענס ארויסגעבונג קוואליטעטן ווערן גע'גנב'עט, זאלן זיין קערפול נאכגעפאלגט.
נאך א קאנטעקסטועלע אינפארמאציע איז יעדע דיסקרעפאנסי צווישן דעם קוואל רעפאזיטארי וואס מען האט לכאורה גענוצט צו שאפן דעם קאמפאנענט טארבאל און דעם אינהאלט פונעם טארבאל אליין. און אויך נאכפאלגן גוטע פראקטיקעס, ווי שאפן טעגס אדער ארויסגעבונגען אין דעם קוואל רעפאזיטארי וואס פאסן צו די ווערסיעס פונעם קאמפאנענט ארויסגעגעבן אין דעם עפנטלעכן רעגיסטרי. ווען דער קוואל רעפאזיטארי ביי א באשטימטן commit איז געטאַגד מיט מעלדונג, און פּלוצעם פֿאָלגט נישט איין ווערסיע עס, דאָס אַליין איז אַ שטאַרקע באַווייַז אַז דער קאָמפּאָנענט קען זיין פֿאַרפּעסטיקט: דער שלעכטער אַקטיאָר קען האָבן קאָמפּראָמיטירט דעם חשבון געניצט פֿאַר פּובליקירן דעם קאָמפּאָנענט, אָבער האט נישט קיין שרייב-פּערמישאַנז אין די מקור-קאָד רעפּאָזיטאָרי). פֿילע אַטאַקעס ווערן רוטינמעסיק דעטעקטירט מיט די כּללים: למשל, די לעדזשער אטאקע קען לייכט דעטעקטירט ווערן אויף די ליניעס. קאנטעקסט אנאליז, דעריבער, אידענטיפיצירט אזעלכע אנאמאליעס אין דעם ארויסגעבן פראצעס.
דעפּענדענסי פיירוואַלדינג
אן אנדערער צוגאנג איז צו האבן אן אויספירלעכע ווייסע ליסטע פון קאמפאנענטן פאר אלע אפהענגיקייט גראפן גענוצט אין אייער ווייכווארג, אזוי אין יעדן בילד pipeline אין אייער אָרגאַניזאַציע קענען נאָר באַשטעטיקטע קאָמפּאָנענט ווערסיעס אינסטאַלירט און גענוצט ווערן. די "פירעוואַלל"ווערט דורכגעפירט דורך אן אינערליכן רעגיסטרי וואו די טאַרבאָלס פאר די ערלויבטע קאָמפּאָנענט ווערסיעס ווערן געדינט (געקעשט אדער פּראָקסי). ביטע באַמערקט אז יעדע ווייסע ליסטע וועט נישט ארבעטן סיידן איר האט די טעכנאָלאָגיע צו קלאַסיפיצירן יעדע נייע ווערסיע ווי גאַנץ זיכער אַזוי אַז עס קען ווערן צוגעגעבן צו דער ווייסער ליסטע.
ביטע באַמערקן אַז אַ פריע וואָרענונג (שנעלע דעטעקציע אַזוי שנעל ווי מעגלעך נאָך דער פּובליקאַציע פֿון דער נײַער ווערסיע) דאַרף זײַן קאָמבינירט מיט אַ וועג צו נוצן די אינפֿאָרמאַציע פּראָאַקטיוו צו בלאָקירן דעם קאָמפּאָנענט וואָס באַאײַנפֿלוסט דעם בוי. pipelineס אדער די דעוועלאָפּערס' מאשינען [קסנומקס]מיר רופן דאָס "דעפּענדענסי פיירוואַלינג": א קוואראנטין מעכאניזם צו באשיצן אויטאמאטישע בילדס פון בייזוויליגע פעקלעך. אינערליכע פעקלעך און בילד רעגיסטריז זענען גוט צו איזאלירן ארגאניזאציעס פון עקסטערן שלעכטס, אבער באווייזן שטארק גענוג זענען נויטיג צו מאכן קוואראנטין עפעקטיוו.
ראַנטיים סאַנדבאָקסינג
אן אלטערנאטיווער צוגאנג פאר דעטעקציע ביים ארויסגעבן איז צו אנאליזירן אויפפירונג ביים לויף-צייט. די געדאנק איז צו כאפן די ערווארטעטע אויפפירונג פון דער ווייכווארג און דעטעקטירן (אדער בלאקירן) יעדע אנאמאליע וואס מען געפינט. די דאזיגע אקציע האט דאס פראבלעם פון דארפן אינסטרומענטירן די לויף-צייט פאר מאניטארינג אדער בלאקירן, און עס איז א פארשפרעכנדיקע געדאנק וואס וועט ווערן צוגעגעבן צום ארסענאל פון שוץ מעכאניזמען קעגן דעם בייזוויליקן קאמפאנענט שעדיגונג.
באַשטעטיקן אַ קאָמפּרעהענסיוו סטראַטעגיע
די רעקאָמענדירטע סטראַטעגיע דאַרף קאָמבינירן פֿאַרשידענע טעכניקן אין דעם ווייכווארג אַנטוויקלונג פּראָצעס, נעמענדיג קאָנטראָל איבער די ווערסיע דערהייַנטיקונגען צו בלאָקירן אַרײַנקומענדיקע בייזוויליקע קאָמפּאָנענטן. מיר מוזן אַקאַמאַדירן ווערסיע פּינינג צו ויסמיידן אויטאָמאַטישע ינפעקציע מיט דערהייַנטיקונג ווערסיעס צו באַקומען פיקסיז פֿאַר די וויכטיקע וואַלנעראַביליטיז; אַ שנעלע און עפֿעקטיווע אַסעסמאַנט פון דירעקטע און אינדירעקטע אָפּהענגיקייטן בעת ווערסיע דערהייַנטיקונגען צו האָבן גענוג באַווייַז אַז זיי זענען נישט פֿאַרפֿליכטעט מיט מאַלוואַרע. בילדער פֿון ווייכווארג וואָס אָפּהענגן פֿון באַקאַנטע בייזוויליקע קאָמפּאָנענטן מוזן ווערן בלאָקירט. און אַלץ מוז ווערן דורכגעפֿירט.
ניצט ווערסיע פּינינג, ווען מעגלעך, ווײַל דאָס מאַכט בילדס מער רעפּראָדוסירבאר. ווערסיע פּינינג מיט קאָנטראָלירטע, מאַנועל באַשטעטיקטע ווערסיע באַמפּס, און אַסיסטירט דורך העלפער טעכנאָלאָגיע, זאָל אָפּשאַצן צי דער דערהייַנטיקונג ברענגט מאַלווער אָדער צעברעכט די ווייכווארג, און פאַראייניקן דערהייַנטיקונגען פֿאַר פאַרריכטן וואַלנעראַביליטיז מיט ויסמיידן מאַלווער ינפעקציע. מכשירים קענען דאָ העלפֿן, דורך (1) פּרייאָראַטייז וועלכע וואַלנעראַביליטיז זענען טאַקע וויכטיק (דערגרייכלעך און עקספּלויטאַבל, מיט אַ הויך ריזיקירן פון זיין טאַרגעטעד דורך אַטאַקערז), (2) סעלעקטירן די ציל ווערסיעס וואָס זענען קאַמפּאַטאַבאַל מיט די קראַנט קאָמפּאָנענט נוצן און צעברעכט נישט די ווייכווארג, (3) סעלעקטירן ציל ווערסיעס וואָס אַנטהאַלטן נישט בייזוויליק נאַטור, און (4) מאַכן די ווערסיע דערהייַנטיקונג פֿאַר דירעקט און אומדירעקט דיפּענדאַנסיז אַ שנעל, דורך פֿאָרשלאָגן ענדערונגען אין די מאַניפעסט טעקעס וואָס קענען זיין געשווינד באוויליקט. דער שריט (3) דאַרף ספּעציפֿיש אינפֿאָרמאַציע וועגן בייזוויליק קאָמפּאָנענטן אַזוי נאָענט צו זייער פּובליקאַציע צייט ווי מעגלעך.
דעם פּראָצעס פון דערהייַנטיקן דיפּענדאַנסיז מוז זיין ענפאָרסט און וועראַפייד אין אלע ערטער. דער פראצעס מוז דאקומענטירט ווערן, און אלע באטייליקטע זאלן טרענירט ווערן, ווייל אפט ווערט די אנטוויקלונג און ווייכווארג בויען/דיפלוימענט עקסטערנאליזירט. די CI/CD pipelines זאָל ווערן מאָדיפֿיצירט אַקאָרדינגלי, אַזוי אַז אָטאָמאַציע זאָל נישט דערלויבן אַ בייזוויליקע אינדירעקטע אָפּהענגיקייט צו אַרייַנגליטשן אין דעם בילד: guardrails בלאקירן דעם בילד אויב עס איז גענוג באווייז פון מעגלעכע מאלוועיר אין א דעפענדיענס איז דער רעקאמענדירטער וועג צו גיין.
אויב אייער אָרגאַניזאַציע האט אַן אינערלעכע רעגיסטרי וואָס דינט ווי אַ זיכערהייט פּראָקסי פֿאַר האַלטן די ערלויבטע קאָמפּאָנענט ווערסיעס, מוזט איר באַקומען אינפאָרמאַציע וועגן בייזע קאָמפּאָנענטן (חוץ אַנדערע קריטעריעס) צו קאָנטראָלירן אַ געבעטן קאָמפּאָנענט איידער איר לייגט עס צו צו דער ערלויבטער רשימה.
קאָנסומירן אָפֿן-קוואַל ווייכווארג מיט זיכערקייט איז נישט גרינג, און דער מאַלוואַרע פאַקטאָר מוז גאָר גענומען ווערן אין באַטראַכט, מיט ענלעכע מי אין האַנדלינג מיט וואַלנעראַביליטיז.
איין לעצט טאָן: מקור אָפּשטאַם, אין דער פאָרעם פון ווייכווארג אַטעסטאַציעס, גענערירט ביים בויען דעם קאָמפּאָנענט, איז נאָך אַ שליסל טייל אין דער מי צו שפּורן דעם אַרטיפאַקט (קאָמפּאָנענט טאַרבאָל) מיט די קוועלער און בויען פּראָצעס וואָס האָבן עס פּראָדוצירט. באַמערקט אַז די פֿאַרבינדונג צווישן דעם מקור סנאַפּשאָט + בויען סביבה און דעם פֿאַרבונדענעם ווייכווארג אַרטיפאַקט (אונטערגעשריבן דורך דעם טראַסטיד בויען סיסטעם) פאַרהיט נישט פּער סע אַז דער קאָמפּאָנענט כּולל נישט בייזוויליקע נאַטור, אָבער מאַכט עס שווערער פֿאַר די שלעכטע מענטשן צו ינדזשעקטירן מאַלווער. און מאַכן פּראָווענאַנס וואַלידאַציע אַ געוויינטלעכע פאָדערונג פֿאַר קאַנסומינג אָפֿן מקור קאָמפּאָנענטן וועט נעמען אַ לאַנגע צייט, און בלויז לעצטנס צוגעגעבן צו NPMמאכן די פארטרויענסווערדיגע בויען און דעפּלויען סיסטעמען טאַמפּער-זיכער, אדער ערמעגלעכן דעטעקשאַן פון יעדע טאַמפּערינג אין דעם בויען איז אַן אַנדערע מעשה, נישט אין דעם פאַרנעם פון דעם פּאָסטן.
ווייַטער לייענען
דער ווייַטער עפּיזאָד אָפֿן-קוואַל בייזוויליקע פּאַקאַדזשאַז: דער קסיגעני צוגאַנג וועט פאָרשטעלן די סטראַטעגיע וואָס מיר נאָכפאָלגן ביי Xygeni פֿאַר אונדזער מאַלוואַרע פרי וואָרענונג (MEW) סיסטעם. נייע פּעקל ווערסיעס אין די עפנטלעכע פּעקל און בילד רעגיסטריז ווערן געסקענט און באווייזן ווערן באקומען מיט א קאמבינאציע פון סטאטישע, דינאמישע, מעגלעכקייטן און קאנטעקסטועלע אנאליז. די באווייזן, קאמבינירט מיט באניצער רעפוטאציע און די היסטאריע פון ענדערונגען אין קוואל קאוד רעפאזיטאריעס, ערמעגליכט א פולשטענדיג אויטאמאטישע קלאסיפיקאציע פון א קאמפאנענט אין הויך-ריזיקירטע און מסתמא בייזוויליקע קאטעגאריעס. די סיסטעם לערנט זיך פון פארגאנגענע באווייזן געזאמלט פון פּעקלעך צו רעדוצירן די פאלשע פאזיטיוון צו א מינימום.
אַבאָנירטע אָרגאַניזאַציעס באַקומען אַ וואָרענונג אָנזאָג פֿאַר קאָמפּאָנענטן וואָס זיי נוצן, דירעקט אָדער אומדירעקט, ווען אַ בייזע ווערסיע ווערט קאַטעגאָריזירט. דערנאָך ווערט אַ מאַנועלע אַנאַליז דורכגעפֿירט דורך אונדזערע אַנאַליסטן, וואָס באַשטעטיקט אָדער אָפּוואַרפֿט די קלאַסיפֿיקאַציע. פֿאַר באַשטעטיקטע מאַלווער, ווערט דער עפֿנטלעכער רעגיסטרי אָנזאָגגעגעבן אַזוי אַז עס קען דורכפֿירן זיין אייגענע אַנאַליז און טיפּיש אַראָפּנעמען די בייזע ווערסיע אָדער נעמען נאָך אַקציע, ווי בלאָקירן אָדער אַראָפּנעמען דעם באַניצער חשבון אין פֿראַגע.
מיר וועלן דערקלערן ווי מיר העלפֿן NPM, PyPI, GitHub, און אַנדערע שליסל אינפֿראַסטרוקטורן אין דער אָפֿן-מקור עקאָסיסטעם צו רעדוצירן די צייט וואָס אַ נייַער בייזוויליקער קאָמפּאָנענט וואָס ווערט פאַרעפֿנטלעכט בלייבט אַקטיוו ביז עס ווערט באַשטעטיקט ווי מאַלוואַרע און אַוועקגענומען פֿון דער רעגיסטרי. און ווי אָרגאַניזאַציעס קענען נוצן די MEW סיסטעם צו האָבן אַ פיל בעסערן שוץ קעגן ווייכווארג סאַפּליי טשיין אַטאַקעס וואָס אַרייַננעמען אָפֿן-מקור קאָמפּאָנענטן.
- [קסנומקס] סיי ווי, באַניצער פון דעם קאָמפּאָנענט דאַרפן קאָנטראָלירן צי דער קאָמפּאָנענט טאַרבאָל איז קעשט אָדער רעגיסטרירט ערגעץ, למשל אין אַן אינערלעכן רעגיסטרי, אַזוי אַז די קראַנקייט ווערט עלימינירט.
- [קסנומקס] דער פּאַקידזשד קאָמפּאָנענט כולל אַ מאַניפעסט וואָס דערקלערט זיין אינהאַלט און מעטאַדאַטאַ, מקור אָדער קאָמפּילירט קאָד, ינסטאַלירונג סקריפּטן, און נאָך זאכן ווי טעסט סוויטס, לויט אַ פּאַקידזשינג פֿאָרמאַט און טיפּיש אין קאַמפּרעסט פאָרעם. דאָס ווערט גערופן דער "קאָמפּאָנענט טאַרבאָל".
- [קסנומקס] אפילו אויב דער בייזוויליקער אַקטיאָר קען מאָדיפיצירן אַ פאַרעפֿנטלעכטע קאָמפּאָנענט צוליב אַ בריטש אין דער רעגיסטרי אַליין, קען אַ פּשוטער קריפּטאָגראַפֿישער דיידזשעסט דעטעקטירן יעדע ענדערונג אין דער טאַרבאָל נאָכדעם וואָס די אַנאַליז איז געטאָן.
- [קסנומקס] געדענקט אז עטלעכע בייזע קאָמפּאָנענטן לויפן בעת דער אינסטאַלאַציע צייט, אַזוי עס קען אַפעקטירן דעוועלאָפּער נאָודז וואָס אַנוואָנטידלי לויפן "npm install X" מיט X אַ בייזע קאָמפּאָנענט.







