Чектелген снаряд деген эмне жана эмне үчүн секирип снарядга кол салуу маанилүү
Чектелген кабыктар колдонуучулар кайсы буйруктарды аткара аларын башкаруу үчүн колдонулат, көбүнчө ушул сыяктуу аракеттердин алдын алат 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 чабуулу.
Секирип түшүүчү кабыктан жана бинден/баштан качууларды көзөмөлдөө жана аныктоо
Секирип жаткан снаряддын жүрүм-турумун аныктоо жана качуу менен чектелген снаряддын аракеттерин бөгөттөө үчүн коопсуздук топтору төмөнкүлөрдү аткарышы керек:
- Айрыкча, бардык кабык иш-аракеттерин жазыңыз / 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 же чектелген кабык чөйрөлөрүнөн чыгууга аракет кылат.






