Bubblewrap, оқшауланған ортада қосымшаларды құруға арналған құрал

Bubblewrap - бұл құрал не жұмыс істейді Linux-де құм жәшігінің жұмысын ұйымдастыру және жүгіріңіз артықшылығы жоқ қолданушы қолдану деңгейінде. Іс жүзінде Bubblewrap бағдарламасын Flatpak жобасы бағдарламалық пакеттерден іске қосылған қосымшаларды оқшаулау үшін аралық қабат ретінде қолданады.

Оқшаулау үшін Linux виртуалдандыру технологияларын қолданады дәстүрлі контейнерлер, топтар, аттар кеңістігі, Seccomp және SELinux пайдалануға негізделген. Контейнерді конфигурациялау бойынша артықшылықты операцияларды орындау үшін Bubblewrap түбірлік артықшылықтардан басталады (suid жалаушасы бар орындалатын файл), содан кейін контейнер инициалданғаннан кейін артықшылықтар қалпына келтіріледі.

Жүйеде контейнерлердегі жеке идентификаторлар жиынтығын пайдалануға мүмкіндік беретін пайдаланушы аттарының кеңістігін қосудың қажеті жоқ, өйткені әдепкі бойынша ол көптеген таралымдарда жұмыс істемейді.

Bubblewrap туралы

Bubblewrap шектеулі suida іске асырылуы ретінде орналасқан пайдаланушы атау кеңістігі функцияларының ішкі жиынтығынан қолданыстағыдан басқа барлық пайдаланушы мен процесс идентификаторларын алып тастау үшін режимдерді қолданыңыз CLONE_NEWUSER және CLONE_NEWPID.

Қосымша қорғау үшін, Bubblewrap-да жұмыс істейтін бағдарламалар режимде басталады PR_SET_NO_NEW_PRIVS, жаңа артықшылықтарға тыйым салатын, мысалы, орнатылған жалаушамен.

Файлдық жүйе деңгейіндегі оқшаулау әдепкі бойынша tmpfs көмегімен бос түбірлік бөлім жасалынатын жаңа атау кеңістігін құру арқылы жүзеге асырылады.

Қажет болса, FS сыртқы бөлімдері осы бөлімге «байланыстыру»(Мысалы,« опциясынан бастапbwrap –ro-bind / usr / usr', / Usr бөлімі хосттан тек оқуға арналған режимде жіберіледі).

Желілік мүмкіндіктер циклдік интерфейске қол жетімділікпен шектелген индикаторлар арқылы желілік стек оқшаулауымен төңкерілген CLONE_NEWNET және CLONE_NEWUTS.

Firejail ұқсас жобасының негізгі айырмашылығы, сонымен қатар сетуид іске қосқышты қолданады, бұл Bubblewrap-да, контейнер қабаты тек минималды қажетті функцияларды қамтиды және графикалық қосымшаларды іске қосуға, жұмыс үстелімен өзара әрекеттесуге және Pulseaudio-ға қоңырауларды сүзуге қажет барлық жетілдірілген функциялар Flatpak жағына шығарылады және артықшылықтар қалпына келтірілгеннен кейін іске қосылады.

Firejail, керісінше, барлық байланысты функцияларды бір орындалатын файлға біріктіреді, сіздің аудитіңізді қиындатады және қауіпсіздікті тиісті деңгейде сақтаңыз.

Bubblewrap негізінен жұмыс істейді арқылы уақытша файлдық жүйеде бос атау кеңістігін құру ол құм жәшігін өңдеу аяқталғаннан кейін жойылады.

Коммутаторларды қолдану арқылы пайдаланушы хост жүйесінен керекті каталогтардың сілтемесіне қондыру арқылы қажетті файлдық жүйені аттың кеңістігінде құра алады.

Bubblewrap 0.4.0

Қазіргі уақытта Bubblewrap 0.4 нұсқасында.0, ол жақында шығарылды. Жоба коды С тілінде жазылған және LGPLv2 + лицензиясы бойынша таратылған.

Жаңа нұсқа аттар кеңістігі мен процестерге қосылуды қолдауды жүзеге асырумен ерекшеленеді қолданыстағы пайдаланушылар (pid атау кеңістіктері).

Атаулар кеңістігінің байланысын басқару үшін «–userns», «–userns2» және «–pidns» жалаушалары қосылды.

Бұл функция сетюид режимінде жұмыс істемейді және түбірлік артықшылықтарсыз жұмыс істей алатын бөлек режимді қажет етеді, бірақ жүйеде пайдаланушы аттарының кеңістігін қосуды талап етеді (Debian және RHEL / CentOS жүйелерінде әдепкі бойынша өшірілген) және мүмкіндікті жоққа шығармайды «пайдаланушы аттары кеңістігі» шектеулерінің шегі үшін ықтимал қалған осалдықтарды пайдалану.

Bubblewrap 0.4 жаңа мүмкіндіктерінің ішінен, glibc орнына musl C кітапханасымен құрылыстың мүмкіндігі де байқалады, және JSON форматындағы аттар кеңістігі туралы ақпаратты статистикалық файлға сақтауды қолдау.

Bubblewrap кодымен, сондай-ақ ол туралы құжаттамамен Github-тен кеңес алуға болады, сілтеме осы.


Мақаланың мазмұны біздің ұстанымдарымызды ұстанады редакторлық этика. Қате туралы хабарлау үшін нұқыңыз Мұнда.

Бірінші болып пікір айтыңыз

Пікіріңізді қалдырыңыз

Сіздің электрондық пошта мекен-жайы емес жарияланады. Міндетті өрістер таңбаланған *

*

*

  1. Деректерге жауапты: Мигель Анхель Гатан
  2. Деректердің мақсаты: СПАМ-ны басқару, түсініктемелерді басқару.
  3. Заңдылық: Сіздің келісіміңіз
  4. Деректер туралы ақпарат: заңды міндеттемелерді қоспағанда, деректер үшінші тұлғаларға жіберілмейді.
  5. Деректерді сақтау: Occentus Networks (ЕО) орналастырған мәліметтер базасы
  6. Құқықтар: Сіз кез-келген уақытта ақпаратты шектей, қалпына келтіре және жоя аласыз.