Re: sshd and setcurrent

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

 



On Tue, Mar 4, 2014 at 8:44 AM, Daniel J Walsh <dwalsh@xxxxxxxxxx> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 03/03/2014 08:37 PM, Andy Ruch wrote:
>> Hello,
>>
>>
>> I'm implementing a custom SELinux policy based on the reference policy for
>> a secure RHEL 6.5 system. Currently, my policy does not allow 'setcurrent'
>> for sshd_t and I'm seeing the appropriate AVCs associated to this. However,
>> even with these AVCs, everything appears to work. I still end up with a
>> bash process running as staff_t. The only difference I see using 'ps -efZ'
>> is the context of parent process of the bash shell:
>>
>> PERMISSIVE:
>>
>> system_u:system_r:sshd_t:s0-s0:c0.c1023    root    29470    1520     ...
>> sshd: myuser [priv] myuser_u:staff_r:staff_t:s0-s0:c0.c1023    myuser
>> 29475    29470    ...    sshd: myuser@pts/0
>> myuser_u:staff_r:staff_t:s0-s0:c0.c1023    myuser  29476    29475    ...
>> -bash
>>
>>
>>
>> ENFORCING (context on 2nd line different):
>>
>> system_u:system_r:sshd_t:s0-s0:c0.c1023    root    29505    1520     ...
>> sshd: myuser [priv] system_u:system_r:sshd_t:s0-s0:c0.c1023    myuser
>> 29510    29505    ...    sshd: myuser@pts/0
>> myuser_u:staff_r:staff_t:s0-s0:c0.c1023    myuser  29511    29510    ...
>> -bash
>>
>>
>> Does this second process labeled as "sshd_t" provide any usability or
>> security issues?
>>
>>
>> Digging into the policy code more, I see comments in domain.te along the
>> lines of "setcurrent breaks process tranquility" and "don't use it if you
>> don't understand it". Could someone provide some more details regarding
>> when to use 'setcurrent' for a secure system?
>>
>>
>> Also, I understand that the RHEL Targeted policy has a completely different
>> use case than my custom policy. However, why is it allowed in the Targeted
>> policy if the sshd appears to work without it?
>>
>>
>> Thanks, Andy Ruch
>>
>> _______________________________________________ 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.
>>
> The way sshd works is to setup a process running as the user without doing a
> fork/exec.  This is why we did a setcurrent in sshd.  The problem we were
> trying to solve, is if you have a user type that you do not want to prevent
> running as a service, like guest_t, you can get around it by using sshd tunnels.
>
> By setting this process to guest_t rather then sshd_t, the policy works as you
> would expect.  Also since this process is running as the User UID it might be
> able to be influenced by other processes with the same UID.  Running as sshd_t
> could be a risk.
>
> The problem with setcurrent is that it is not as clean as a setexeccon.  It is
> always better to do a fork/exec from an SELinux point of view.  But if the app
> does not implement this, we think setcurrent is a decent fall back.
>

If you are concerned with giving setcurrent to sshd_t IIRC you can add
'UsePrivilegeSeparation=no' to the sshd_config file and it won't try
to bracket down it's privileges after authentication.


>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1
> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
>
> iEYEARECAAYFAlMV2NEACgkQrlYvE4MpobOO2QCcDUTn3SaW4/jCH8/JGO7EHFdS
> T2wAoOrgSD+YJmpat76aUkrmpg3iq7Ba
> =obee
> -----END PGP SIGNATURE-----
> _______________________________________________
> 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.
_______________________________________________
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