全部产品
Search
文档中心

Alibaba Cloud Linux:Penguatan Keamanan untuk Namespace Pengguna di Alibaba Cloud Linux

更新时间:Jun 28, 2025

Linux mendukung fitur namespace pengguna yang memungkinkan proses memiliki ID pengguna dan grup yang berbeda di setiap namespace untuk mengisolasi izin. Namun, aktivasi fitur ini meningkatkan risiko serangan peningkatan hak istimewa. Penyerang dapat mengeksploitasi kerentanan sistem untuk mendapatkan akses dengan hak istimewa dan melarikan diri dari kontrol izin sistem. Topik ini menjelaskan cara mengonfigurasi penguatan keamanan untuk namespace pengguna di Alibaba Cloud Linux 2 dan 3. Anda dapat memodifikasi parameter kernel sesuai dengan skenario bisnis tertentu.

Konfigurasikan penguatan keamanan untuk namespace pengguna

Anda dapat mengonfigurasi parameter berikut sesuai dengan kebutuhan bisnis untuk mengurangi risiko:

  • Konfigurasikan parameter user.max_user_namespaces untuk menentukan jumlah maksimum namespace anak yang dapat dibuat di bawah namespace induk di setiap level.

  • Konfigurasikan parameter kernel.userns_max_level untuk menentukan kedalaman bersarang maksimum namespace.

  • Konfigurasikan parameter kernel.unprivileged_userns_clone untuk memberikan izin membuat namespace kepada pengguna non-hak istimewa yang tidak memiliki izin CAP_SYS_ADMIN.

user.max_user_namespaces

Catatan

Nilai 0 menunjukkan bahwa fitur namespace pengguna dinonaktifkan, sehingga mencegah pembuatan namespace.

  • Periksa jumlah maksimum namespace anak yang dapat dibuat di bawah namespace induk di setiap level.

    • /proc interface

      cat /proc/sys/user/max_user_namespaces
    • sysctl interface

      sysctl -n user.max_user_namespaces
  • Tentukan jumlah maksimum namespace anak yang dapat dibuat di bawah namespace induk di setiap level.

    Ganti <namespaces> dengan jumlah maksimum namespace anak yang ingin Anda buat di bawah namespace induk di setiap level. Sebagai contoh, jika Anda ingin menonaktifkan pembuatan namespace, atur parameter <namespaces> menjadi 0.

    • /proc interface

      sudo sh -c 'echo <namespaces> > /proc/sys/user/max_user_namespaces'
    • sysctl interface

      sudo sysctl -w user.max_user_namespaces=<namespaces>

kernel.userns_max_level

Batasan

  • Alibaba Cloud Linux 2 dengan versi kernel 4.19.91-27 dan yang lebih baru.

  • Alibaba Cloud Linux 3 dengan versi kernel 5.10.134-12 dan yang lebih baru.

Catatan

Nilai valid untuk parameter kernel.userns_max_level: 0 hingga 33. Nilai 0 menonaktifkan fitur namespace pengguna. Nilai default adalah 33, yang konsisten dengan perilaku kernel asli.

  • Periksa kedalaman bersarang maksimum namespace.

    • /proc interface

      cat /proc/sys/kernel/userns_max_level
    • sysctl interface

      sysctl -n kernel.userns_max_level
  • Tentukan kedalaman bersarang maksimum namespace.

    Ganti <levels> dengan jumlah maksimum level untuk namespace pengguna bersarang. Sebagai contoh, jika Anda ingin menonaktifkan fitur namespace pengguna, atur parameter <levels> menjadi 0.

    • /proc interface

      sudo sh -c 'echo <levels> > /proc/sys/kernel/userns_max_level'
    • sysctl interface

      sudo sysctl -w kernel.userns_max_level=<levels>

kernel.unprivileged_userns_clone

Batasan

  • Alibaba Cloud Linux 2 dengan versi kernel 4.19.91-27 dan yang lebih baru.

  • Alibaba Cloud Linux 3 dengan versi kernel 5.10.134-12 dan yang lebih baru.

Catatan

Mengizinkan pengguna non-hak istimewa untuk membuat namespace dapat meningkatkan risiko serangan peningkatan hak istimewa. Nilai valid untuk parameter kernel.unprivileged_userns_clone:

  • 1: Mengizinkan pengguna non-hak istimewa yang tidak memiliki izin CAP_SYS_ADMIN untuk membuat namespace, yang konsisten dengan perilaku kernel asli.

  • 0: Tidak mengizinkan pengguna non-hak istimewa yang tidak memiliki izin CAP_SYS_ADMIN untuk membuat namespace. Dalam hal ini, hanya pengguna dengan hak istimewa yang memiliki izin CAP_SYS_ADMIN yang dapat membuat namespace.

  • Periksa apakah pengguna non-hak istimewa yang tidak memiliki izin CAP_SYS_ADMIN dapat membuat namespace.

    • /proc interface

      cat /proc/sys/kernel/unprivileged_userns_clone
    • sysctl interface

      sysctl -n kernel.unprivileged_userns_clone
  • Tentukan apakah pengguna non-hak istimewa yang tidak memiliki izin CAP_SYS_ADMIN dapat membuat namespace berdasarkan kebutuhan bisnis Anda.

    • /proc interface

      echo 0 > /proc/sys/kernel/unprivileged_userns_clone
    • sysctl interface

      sysctl -w kernel.unprivileged_userns_clone=0