Снаряди маҳдуд чист ва чаро ҳамлаҳои ҷаҳиши снаряд муҳиманд
Снарядҳои маҳдуд барои назорат кардани фармонҳое, ки корбарон метавонанд иҷро кунанд, истифода мешаванд ва аксар вақт аз амалҳое ба монанди cd, ба кор андохтани снарядҳои нав ё содир кардани тағирёбандаҳои муҳити зист. Онҳо одатан дар CI/CD агентҳо ё эҷоди муҳитҳо барои маҳдуд кардани рафтори корбар. Аммо, ҳамлагарон роҳҳои иҷрои як снаряди ҷаҳиданро меҷӯянд, усуле, ки барои фирор аз муҳитҳои маҳдуди снаряд ва дастрасӣ ба снарядҳои номаҳдуд ба монанди ... истифода мешавад. bin/bashПас аз дохил шудан it, ҳамлагар назорати пурраи сатри фармонро дорад ва ҳама маҳдудиятҳои муҳити маҳдудро убур мекунад.
Чӣ тавр Jumping Shell кор мекунад: Аз маҳдудшуда то bin/bash
Ҳадафи снарядҳои ҷаҳида истифода бурдани заъфҳо дар муҳитҳои маҳдуд ва ба вуҷуд овардани фирори снаряд аст, ки ба... bin/bashУсулҳои маъмули ҳамлаҳои маҳдуди фирор аз инҳо иборатанд:
$ ls /bin/bash $ /bin/bashIf bin/bash дастрас аст, ин даъвати оддӣ онро пурра мекунад.
Усули дигари маъмул:
$ echo "/bin/bash" > run.sh $ sh run.sh Ҳамлагарон инчунин метавонанд муҳарриронро ба монанди vi or Камтар:
vi :set shell=/bin/bash :shell Ин усулҳо нишон медиҳанд, ки чӣ тавр як снаряди ҷаҳидан метавонад ба осонӣ ба bin/bash иҷро, самаранок аз муҳофизати маҳдуди пӯст гузаред.
Хатарҳои воқеии ин ҳамлаҳо дар DevOps
Дар муштарак CI/CD муҳитҳо, снарядҳои маҳдуд барои ҷудо кардани сохторҳо ва кам кардани хатар истифода мешаванд. Аммо вақте ки ҳамлагар бо снаряди ҷаҳида муваффақ мешавад ва ба он мерасад bin/bash, модели амниятӣ фурӯпошӣ мекунад.
Ба хатарҳо дохил мешаванд:
- Дастрасии беиҷозат ба сирри экологӣ
- Афзоиши имтиёз тавассути бемаҳдуд bin/bash
- Таҳриф ба сохтмон pipelineс ё артефактҳо
- Ҷойгиркунии асбобҳои доимӣ дар дохили pipeline
Пӯшиши фирор маҳдуд буд bin/bash дарро ба созиши пурраи система мекушояд, ки аксар вақт аввалин қадам дар доираи васеътар аст Ҳамлаи DevSecOps.
Назорат ва ошкор кардани фирорҳои аз ҷониби Shell ва bin/bash ҷаҳидашуда
Барои муайян кардани рафтори ҷаҳиши снаряд ва пешгирӣ кардани кӯшишҳои фирор бо снаряд, гурӯҳҳои амниятӣ бояд:
- Ҳамаи фаъолиятҳои shell-ро сабт кунед, махсусан / bin / bash иҷрои
- Назорати сӯиистифода аз муҳаррир ва истифодаи скрипт ҳамчун векторҳои пайдоиши пӯст
- Дастрасиро ба файлҳои танзимоти shell пайгирӣ кунед, ба монанди .bashrc or .bash_profile
Намунаҳои рафторӣ ба монанди оғози кор bin/bash аз муҳити маҳдуд бояд ҳушдорҳои афзалиятнок ҳисобида шаванд. Муайян кардани барвақти он метавонад аз ҳаракати амиқтари паҳлӯӣ пешгирӣ кунад.
Пешгирии ҳамлаҳо ва истисморҳои маҳдуди снарядҳои фирорӣ
Барои кам кардани хатари партоби снаряд ва пешгирӣ аз партоби ҳамлагарон bin/bash:
- Садафҳои маҳдудшудаи сахттар: Хориҷ кунед ё маҳкам кунед дастрасии
- Барои маҳдуд кардани иҷрои фармон аз AppArmor ё SELinux истифода баред
- Имтиёзи камтаринро дар саросари ҷаҳон татбиқ кунед CI/CD нақшҳо ва давандагон
- Containerize бо тасвирҳои бе тақсимкунӣ сохта мешавад, ки садафҳоро надоранд, ба монанди bin/bash
- Муҳитҳоро пеш аз ва баъд аз сохтмонҳо барои муайян кардани аномалияҳо тасдиқ кунед
Пешгирии сенарияҳои фирори маҳдуд аз снарядҳои пӯшида назорати қабатдорро талаб мекунад, на танҳо ба снарядҳои маҳдуд. Фикр накунед, ки снарядҳои маҳдуд бехатаранд, агар bin/bash ҳатто эҳтимолан дастрас аст.
Хулоса: Фирорҳо аз садаф нуқтаҳои вуруд мебошанд
Снарядҳои маҳдуд як қабати дифоъӣ мебошанд, на кафолат. Ҳамлаҳои снарядҳои ҷаҳида ба изолятсияи заиф ва эътибори заиф нигаронида шудаанд. Пас аз ворид шудан / bin / bash, ҳамлагарон метавонанд инфрасохтори DevSecOps-ро тағйир диҳанд, идома диҳанд ва ба онҳо зарар расонанд.
Ошкоркунӣ ва изолятсия муҳиманд. Якҷоя кардани сабти фармонҳо, муҳитҳои маҳдуд ва тозакунии дурусти менеҷерҳои бастаҳо таъсири манфиро кам мекунад.
Ниҳоят, асбобҳо ба монанди Ксигенӣ ба ин хатарҳо намоёнӣ фароҳам меоранд. Онҳо ба таъмини якпорчагии код, муайян кардани рафтори ғайриоддии пӯст ва амнияти худро таъмин кунед pipelineаз таҳдидҳои дохилӣ ва беруна, аз ҷумла онҳое, ки бо як садафи оддии ҷаҳидан оғоз мешаванд / bin / bash ё кӯшиши гурехтан аз муҳитҳои маҳдуди пӯст.






