LFCA: 20 קלח - סקוניל לש תכרעמה תחטבא תא רפשל דציכ


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

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

[Linux -ו םינותנ תחטבאל םיישומיש םיפיט :בהאתש ןכתיי]

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

:תואבה חתפמה תודוקנב זכרתנ תכרעמה תחטבאב

    תוצובקו םישמתשמ תדרפה - השיג תויוכז

    .םישמתשמ תיירוגטק לכ רובע (rwx) לעופל האצוהו הביתכ ,האירקב תוגצוימ תואשרהה .(o) םירחאו (g) הצובק ,(u) שמתשמ :םישמתשמ תוירוגטק 3 רובע םיצבק תואשרה םג ללוכ אוה .יתצובק שמתשמו שמתשמ תולעבב או

    rwx        rwx	     rwx
    User       Group     Others
    

    .גצומש יפכ ls הדוקפב ,םדוק הארנש יפכ

    $ ls -l
    

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

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

    תוירפס/םיצבק לע תולעב תולעבו תואשרה יוניש

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

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

    .Linux לש תויסיסבה תודוקפה אשונב chown -ו chmod תודוקפ תועצמאב תוירפס/םיצבק לע םתולעבבו םישמתשמה תואשרהב יונישה ןפוא םע ונדדומתה .תומישמ עוציב ךרוצל שמתשמה ידי לע תושרדנה רתויב תוכומנה ת

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

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

    Bit sticky ילמסה ךרעה תא ול שי .היירפס/ץבוקה תא תונשל וא קוחמל לוכי וניא רחא שמתשמ ףא .הירפסה וא ץבוקה ןכותב םייוניש עצבל וא קוחמל האשרה היירפס/ץבוק ותוא לש םילעבל קר קינעמ הז .הלוכ הי

    :אבה ןפואב chmod הדוקפב שמתשה ,הירפסב קיבד תצק ליעפהל ידכ

    $ chmod +t directory_name
    

    .ץבוקה תואשרה ףוסב t למסל בל םישל דפקה .ls -ld הדוקפה תועצמאב תוקיבדה תויביסה תואשרה תא תמאל לוכי התא .תוקיבדה תויביסה תואשרה תא שריי ןכותה לכ ,הירפס לש הרקמב .test תארקנש ה

    $ ls -ld test
    

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

    .bit stick ץבוקל האשרהה תיצמת הזו

    .4000 ירפסמ ךרע SUID -ל .עוציב תואשרה גציימה x םוקמב שמתשמה לש ץבוקה תואשרה לש קלחב s ילמס ךרע ידי לע ןמוסמ אוה ללכ ךרדב .ץבוקה לעב לש ץבוקה תואשרה םע ץבוק ץי

    .2000 לש ירפסמ ךרע SGID -ל .םיצבקה תואשרה לש הצובקה קלחב s הארת ,תואשרה עוציבל x -ל םוקמב .םיצבקה תצובק לעב לש הצובקה תואשרה תא תשרל ליגר שמתשמל רשפאמ SGID, (

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

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

    $ find / -perm -4000 type -f
    

    :תוירפס תלעפהל

    $ find / -perm -4000 type -d
    

    :SGID תויביס תצובק תלעפה םע םיצבקה לכ תא אוצמל ידכ

    $ find / -perm -2000 type -f
    

    :עצבל תוירפס רובע

    $ find / -perm -2000 type -d
    

    :גצומש יפכ chmod הדוקפה תא לעפה ,ץבוקב SUID -ה תיביס תא ריסהל ידכ

    $ chmod u-s /path/to/file
    

    :הדוקפה תא עצב ,ץבוקב SGID -ה תיביס תא ריסהל ידכ

    $ chmod g-s filename /path/to/file
    

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

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

    :לעפה ,ךליאו 18.04 וטנובוא תואסריגב pam_pwquality לודומ תא ןיקתהל ידכ

    $ sudo apt install libpam_pwquality
    

    :הדוקפה תא לעפה ,RHEL/CentOS 8 רובע

    $ sudo dnf install libpwquality
    

    :אבה םוקימב אצמנ הרוצתה ץבוק

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

      .etc/login.defs/ ץבוקב אוצמל ןתינ הלא

      :םיאבה םיירקיעה המסיסה ידקפ תא ליכמ ץבוקה

        .ןלהל םיניוצמ לדחמה תרירב יכרע

        .וייח לכ ךשמב םהלש המסיסב שמתשהל ךישמהל לוכי שמתשמהש ןוויכמ החטבאה תניחבמ דואמ ינויגה אל הז .םינש 273 -ל םגרותמש המ ,99999 -ל רדגומ הז ךרע ,לדחמ תרירבכ .תכרעמל סנכיהל תנמ לע ותמסיס תא תונש

        .גצומש יפכ םוי 30 חיננ ,יתועמשמ ךרעל הז תא רידגהל לוכי התא

        PASS_MAX_DAYS  30
        

        .תרחא המסיסל ותמסיס תא תונשל ץלאיי שמתשמה ,םוי 30 ופלחש רחאל

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

        PASS_MAX_DAYS  15
        

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

        PASS_MAX_DAYS  7
        

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

        .common-password.bak יוביגה קתעה ץבוק תא ונרצי ,וז המגודב .יוביג קתוע רוצ ,etc/pam.d/common-password/ ץבוק תא ךורעתש ינפל

        $ sudo cp /etc/pam.d/common-password /etc/pam.d/common-password.bak
        

        .ץבוקה תא חתפ זאו

        $ sudo vim /etc/pam.d/common-password 
        

        .הטמל תגצומה הרושה תא רתא

        password        requisite          pam_pwquality.so retry=3
        

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

        :הרושל תואבה תונוכתה תא ףסוה

        minlen=10 difok=3 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 reject_username 
        

        .וללה תונוכתה תא ררבנ ואוב

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

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