如何标记Android selinux上下文中的进程?

时间:2019-07-17 01:51:04

标签: android selinux

我正在尝试执行Android SElinux implementation,对于文件,我可以使用flie_contexts文件定义文件selinux安全上下文,例如我要添加 / system / bin / mymodule 文件,因此我可以将其添加到 / system / sepolicy / private / flie_contexts 来对其进行签名,但是,如果该进程使用了​​selinux安全上下文,那我找不到可以简单定义它们的地方了

我知道流程安全性上下文是由其父流程继承的,但是有什么机制可以像文件一样强制设置流程安全性上下文吗?

有见识吗?

1 个答案:

答案 0 :(得分:1)

您需要做两件事:

1。定义上下文

假设您要为二进制文件创建一个名为np_mybinary的自定义上下文。

这是您的.te文件必须包含的内容:

type np_mybinary, domain;
type np_mybinary_exec, exec_type, vendor_file_type, file_type;

这是您的file_contexts文件必须包含的内容:

/system/bin/mymodule  u:object_r:np_mybinary_exec:s0

2。定义过渡

您需要定义从父流程上下文到np_mybinary_exec的过渡。

domain_auto_trans(<parent-context>, np_mybinary, np_mybinary_exec)

如果您的进程是通过init启动的,则有simple macro可用:

init_daemon_domain(np_mybinary);