Re: Is it possible to prevent a binary executable file from being read via SELinux?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/02/2016 11:10 AM, Patrick Doyle wrote:
> On Wed, Nov 2, 2016 at 10:08 AM, Stephen Smalley <sds@xxxxxxxxxxxxx> wrote:
>> No.  For example, if all processes can access all /dev nodes, then they
>> can perform raw reads/writes to the block devices and thereby circumvent
>> any file-based access controls entirely.  If all processes can write to
>> e.g. /lib, then they can replace the dynamic linker and any shared
>> libraries used by your application and get it to execute their code in
>> order to dump its memory.  If they can all execute your application,
>> then they can run its binary in their own memory and then dump its
>> contents.
> I didn't realize that saying "Allow all access" would circumvent the
> normal Linux based file permissions.  I assumed that SELinux was
> layered on top of those permissions.  I guess I have more to learn.

No, my comments were with respect to SELinux, not DAC.  DAC is still in
effect and SELinux does not override DAC denials.  But the point
remains: if you are trying to protect against an errant root process,
then the policy you described won't provide any real protection.

> 
> 
>>  Please, see my original email and answer the questions there
>> (which you mostly ignored) to see whether this is even a worthwhile
>> exercise, and then, if so, follow the guidance for using sound DAC
>> ownership and modes first, then investigate SELinux to address residual
>> gaps.
> ok.  That is what I have been attempting to do... one residual gap I
> see with that is that a root user can make a copy of my application.
> I would like to prevent that.
> 
>>> Is anything besides your application even running on the device?
> yes
> 
>>> Are there other services/applications that run on the device too?
> yes
> 
>>> When you say "gain access to my device", what kind of access did you have in mind?
> 
> I am assuming that somebody has managed to gain root access to my
> device, possibly via a serial port, or possibly via a remote exploit
> of one of the other services running on the device.  (S)He will
> certainly have physical access to the device, and therefore my kernel
> & rootfs will be encrypted, (and the key would be protected by the
> secure boot facilities of the SoC).  But if (s)he gains root access to
> the file system, I don't want him/her to be able to be able to copy my
> application code off the device.
> 
>>
>> If you want a simple, small SELinux policy to start from, I would again
>> recommend the Android SELinux policy.
>>
> Very well.  I will start there and save the rest of my questions until
> after I have learned more.
> 
> Thanks again for your tips and advice.
> 
> --wpd
> 

_______________________________________________
Selinux mailing list
Selinux@xxxxxxxxxxxxx
To unsubscribe, send email to Selinux-leave@xxxxxxxxxxxxx.
To get help, send an email containing "help" to Selinux-request@xxxxxxxxxxxxx.



[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux