lkml.org 
[lkml]   [2007]   [Jun]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    Subject[PATCH] signed binaries support [0/4]
    Hi,

    We (two students of CS) built a system for signing binaries and verifying them
    before executing. Our main focus was to implement a way to inhibit execution
    of suid-binaries, which are not trustworthy (i.e. not signed). Of course this
    can also be used to grant other access rights, capabilities, etc.

    The signature (e.g. HMAC-SHA1 with a shared secret) is stored in extended
    filesystem attributes (userland-signing-tool provided) [1]. Depending on the
    outcome of our check (performed during exec) a newly introduced flag in
    the task_struct is set. To be able to also check libraries, we introduced a
    similar flag in the vm_area struct. Depending on the state of the flag, the
    suid/sgid bit on the file is honored or ignored. If a process behaves badly
    (e.g mapping executable memory writable or loading an untrusted library) it
    is handled appropriately (killed in our current implementation).

    In the current state our code is of course very expermimental and should be
    handled with care.

    We mainly seek comments, suggestions and wisdom before we tackle the more
    difficult tasks, like proper signatures (public-key-systems, etc.).

    regards,
    Johannes

    [1] http://git.informatik.uni-erlangen.de/?p=ssuid-userland&a=snapshot;h=HEAD

    --
    Johannes Schlumberger Department of Computer Science IV
    Martensstrasse 1 D-91058 Erlangen Germany University of Erlangen-Nuremberg
    http://wwwcip.informatik.uni-erlangen.de/~spjsschl
    -
    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-06-21 18:07    [W:0.021 / U:94.224 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site