lkml.org 
[lkml]   [2007]   [Oct]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: Linux Security *Module* Framework (Was: LSM conversion to static interface
    From
    Date
    Hello.

    Simon Arlott wrote:
    > I currently have an LSM that only handles permissions for socket_bind
    > and socket_listen, I load it and then "capability" as secondary on
    > boot - but now I can't because the LSM framework is now just the LS
    > framework.

    I think there are two other problems regarding LSM.

    (1) There is only one "struct security_ops" structure in the system.

    (2) There is only one "void *security" field in "struct task_struct".


    Years ago, there was only one MAC implementation (i.e. SELinux)
    in the mainline kernel.
    But now, there are many MAC (or access control/tracking) implementations
    waiting for inclusion into the mainline kernel.
    The competition for occupying "struct security_ops" has started.

    My idea is that, why not create chains of "struct security_ops"
    (i.e. linked list of "struct security_ops")
    and allow choosing which chain to use for per a "struct task_struct" basis
    (i.e. add "struct security_ops" to "struct task_struct").

    TOMOYO Linux is having difficulty that TOMOYO Linux unlikely be able to use
    "struct security_ops" since SELinux is occupying it.
    Yes, there is secondary_ops in SELinux, but it doesn't help TOMOYO Linux
    since SELinux is not calling secondary ops for operations TOMOYO Linux wants to control.
    So, there is only one "struct security_ops" as a matter of practice.


    At the same time, the competition for occupying "void *security" has started.

    My idea is that, why not allow multiple "void *security" fields in "struct task_struct"?

    TOMOYO Linux is having difficulty that TOMOYO Linux unlikely be able to use
    "struct task_struct"->security field since SELinux is occupying it.
    If TOMOYO Linux is permitted to add "void *" and "u32" to "struct task_struct",
    SELinux and other LSM implementations can use "struct task_struct"->security field.


    May be we should consider stackable LSM again?

    Regards.

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-10-27 16:11    [W:4.171 / U:0.120 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site