[Yum] Security of yum rpms

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

 



On Thu, 30 Oct 2003, Simon Kitching wrote:

> On Thu, 2003-10-30 at 14:05, Robert G. Brown wrote:
> 
> > Seth is actually an alien creature originally from a small planet
> > orbiting Arcturus.  If one surprises him unawares, he is often muttering
> > something about a place named "R'Lyeh" and some dude named "Ktooloo".
> > He is disguised as an Albanian terrorist, disguised as a systems
> > programmer, seeking to take control of all the computers on the planet
> > that matter (all of the ones running linux).
> 
> You forgot to mention that he paints really scary pictures in his
> basement studio :-)

Yeah, on his easel right next to the old well with the squid-thing
design on it.  I think you've got it.

> > Maybe.  I personally wouldn't trust gpg checking all that far as this
> > also involves one in loops of trust and who you gonna trust to tell you
> > who NOT to trust (and with what tools).
> 
> I don't understand. By adding the RedHat public key to my keyring, and
> setting gpgcheck=1 in my yum.conf file for each source of rpms, **only**
> packages issued by RedHat's team will ever be installed. Someone can
> crack redhat, fedora, or any other rpm mirror, and I don't care. Only if
> someone steals RedHat's private key do I need to worry.
> 
> No matter how many repositories I point my yum.conf at, the signature on
> every RPM is checked before installation. And due to the magic of public
> key cryptography, no-one can fake a RedHat signature. So *my* servers
> are very safe. 

Sure, but in an insanely paranoid universe you still have to get the RH
public key from a reliable place, which requires YAKS (yet another
keyservice) to sign off on it, which in turn is likely an internet
address, which makes it vulnerable to spoofing and man in the middle and
more.  

And then there is trusting Seth's servers vs trusting Red Hat's.  I know
for a fact that in addition to staring through glowing screens into
strange worlds of unspeakable Evil, Seth is a raving paranoid with
schizoid tendencies.  Why just today he threatened to push a rack full
of equipment over on somebody on this very list.  Nobody is crackproof,
but Seth is, um, "crack resistant".  We can only hope that RH does as
well at protecting their private keys.

> Ok, I can't distribute rpms from non-redhat builders to my servers; for
> that I need to either install the public key of the builder, or figure
> out how to "resign" the rpms with my key (and add my public key to the
> keyring on each server). Any hints on how to do resigning are welcome...
> 
> The problem with the current yum installation is that users with less
> than my level of paranoia are open to cracking. And Magnus Hedemark says
> in another reply on this thread that the duke servers are under heavy
> load, so more mirrors may be added to the default config file. In that
> case, "normal" users will then be trusting the security not only of the
> Duke servers, but all other servers. One mistake, or one evil junior
> sysadmin, and Microsoft will have a ball with the resulting publicity.
> 
> In fact, the current approach really reminds me of Microsoft's approach
> to security: convenience first, safety later. I would prefer to see
> systems which are secure by default, with users *deliberately* having to
> weaken security if they want more convenience.
> 
> This is nothing to do with yum as a tool; yum is cool. It is all to do
> with what yum-xxxx.rpm does in terms of reconfiguring the local machine
> when it is installed.

I agree with all of the above, and even point it out already in the
HOWTO, or in previous list discussions, or both.  And I'm just being
pedantic -- in actuality gpgcheck is probably "enough" security, at
least along the RH trail.  But then there are the non-RH builders,
freshrpms, homebrew rpms, rpms installed from src rpms.  You can likely
avoid the horror of a trojanned glibc with signatures, but second-layer
stuff (and we, at least, have a fair number of second layer packages we
add on top of standard RH) has independent and sometimes less
controllable risks.

However, I'm really skeptical about systems that are "secure by
default".  That sounds a lot like topdown control, and that IS
Microsoft's approach to security, except that they do a lousy job of it.
Linux is much more about distributed control, collective security,
robustness and rapid recovery at the expense of some phase space where
damage can occur.

Security is thus a topic for a whole, focussed discussion involving e.g.
keyservers, trust, money, and (I hope) recovery time and damage
limitation as much as anything else.  In the meantime, yum can be made
"reasonably" secure by a skilled administrator such as yourself, but
will still "work" for Duke undergraduates fresh from WinXX who haven't
any clue what a gpg signature is or how to check one or set yum and
their systems up to check one.

I really continue to think of the yum suite as MOSTLY an administrator's
toolset; primarily useful by joe user to the extent that their local
admin supports it, and about as secure as that admin cares to make it.
It will be interesting to see if it survives in the wild as a
client-only tool with public repositories.  There is where the trust
issue REALLY lurks, and gpgchecking may be just the first layer in a
robust set of defenses...

> If all servers running the yum client app insist on rpms being signed by
> trusted parties whose public keys are installed into their local
> keyring, then there is no need for any of this; the rpms have a
> guaranteed trusted source. No trojans allowed.

"Guaranteed trusted" sounds like one of those famous oxymorons...;-)

   rgb

> 
> 
> NB: I am running yum-1.0.3 on RH8. My apologies if some/all of this is
> not relevant to the latest versions of yum.

-- 
Robert G. Brown	                       http://www.phy.duke.edu/~rgb/
Duke University Dept. of Physics, Box 90305
Durham, N.C. 27708-0305
Phone: 1-919-660-2567  Fax: 919-660-2525     email:rgb@xxxxxxxxxxxx




[Index of Archives]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]

  Powered by Linux