[tomoyo-dev-en 157] Re: Unusual exception policy behaviour

Back to archive index

Tetsuo Handa from-****@I-lov*****
Wed Feb 23 23:10:10 JST 2011


Jamie Nguyen wrote:
> I've come across some rather unusual behaviour. I decided to delete
> everything in exception policy, save and reboot. However, two entries
> are automatically re-added without user intervention:
> 
> initialize_domain /sbin/hotplug from any
> initialize_domain /sbin/modprobe from any
> 
Yes, these entries are built-in policy configured via
CONFIG_CCSECURITY_BUILTIN_INITIALIZERS and loaded by ccs_mm_init().

/sbin/hotplug and /sbin/modprobe might be executed before /sbin/init starts and
these programs might execute other programs such as /bin/sh . By the moment
/sbin/ccs-init is executed and MAC is activated, these programs and/or their
descendent programs might be running. If these programs run in the <kernel>
domain, it can result in executing /bin/sh from the <kernel> domain (this is
not a good thing). Thus, the built-in policy chases these programs away from
the <kernel> domain so that we don't need to give "file execute /bin/sh" to the
<kernel> domain.

On android, /sbin/hotplug and /sbin/modprobe and /sbin/init do not exist.
Thus, we do

  sed -i -e 's:/sbin/modprobe /sbin/hotplug::' -e 's:/sbin/ccs-start:/init:' -- security/ccsecurity/Kconfig

at http://tomoyo.sourceforge.jp/1.8/android-arm.html .

Recent distributions might be using /sbin/udevd instead.
You can modify CONFIG_CCSECURITY_BUILTIN_INITIALIZERS in your kernel config.

Regards.




More information about the tomoyo-dev-en mailing list
Back to archive index