-1

卒業論文の一環として、TCP サービス用の汎用ハニーポットを開発しています。

私は現在、Chroot、Linux Namespace、Secure Computing、および Capabilities を使用して、ある種のサンドボックスを提供しています。

私の質問は、私が注意しなければならない点はありますか? /proc をサンドボックスにマウントする必要があるため、ホスト システム全体のセキュリティに影響するかどうかが気になります。

(ユーザー名前空間はオプションではありません。)

/* EDIT */
より明確にするために: capabilities(7) と libseccomp を使用して、root ユーザーと非 root ユーザーのシステムコールなどの機能へのアクセスを制限しています。

しかし、 /proc /proc/sys/* などの /proc 内のファイルはどうでしょうか? firejail のように、bind-mount が空のファイル/ディレクトリをブラックリストに登録する必要がありますか?

4

1 に答える 1

1

Yann Droneaud がコメントしたように、systemd-nspawn の src を読むことは大いに役立ちました。

次の /proc サブディレクトリを見つけました。バインド マウントされた読み取り専用/アクセス不可である必要があります。

/* Make these files inaccessible to container payloads: they potentially leak information about kernel
 * internals or the host's execution environment to the container */
            PROC_INACCESSIBLE("/proc/kallsyms"),
            PROC_INACCESSIBLE("/proc/kcore"),
            PROC_INACCESSIBLE("/proc/keys"),
            PROC_INACCESSIBLE("/proc/sysrq-trigger"),
            PROC_INACCESSIBLE("/proc/timer_list"),

/* Make these directories read-only to container payloads: they show hardware information, and in some
 * cases contain tunables the container really shouldn't have access to. */
            PROC_READ_ONLY("/proc/acpi"),
            PROC_READ_ONLY("/proc/apm"),
            PROC_READ_ONLY("/proc/asound"),
            PROC_READ_ONLY("/proc/bus"),
            PROC_READ_ONLY("/proc/fs"),
            PROC_READ_ONLY("/proc/irq"),
            PROC_READ_ONLY("/proc/scsi"),
于 2018-06-13T13:36:23.510 に答える