linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sergiy Lozovsky <serge_lozovsky@yahoo.com>
To: Valdis.Kletnieks@vt.edu
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: kernel stack challenge
Date: Thu, 8 Apr 2004 15:22:46 -0700 (PDT)	[thread overview]
Message-ID: <20040408222246.49161.qmail@web40506.mail.yahoo.com> (raw)
In-Reply-To: <200404081544.i38FiNdf014220@turing-police.cc.vt.edu>


--- Valdis.Kletnieks@vt.edu wrote:
> On Wed, 07 Apr 2004 21:07:56 PDT, Sergiy Lozovsky
> said:
> 
> > Actually one 'dynamic' feature is implemented in
> VXE.
> > In ordinary system resource has permissions which
> > allows access or not. For higher security VXE can
> > count number of allowed accesses. For example, we
> are
> > securing POP server. We allow it to open
> /etc/passwd,
> > /etc/shadow for reading only once (counter is 1).
> So,
> > if hacker breaks to POP server after it opened
> > /etc/passwd - there is no way hacker can open this
> > file.
> 
> Unless he finds an already open file descriptor for
> it and uses
> read()/write()/mmap()/etc - did you audit your POP
> server
> to make *really* sure that endpwent() is called at
> all the right
> times, and that said function actually is guaranteed
> to close()
> the file descriptor, and can't be forced into
> failing? (Note that
> this can be caused by either close() syscall
> failing, or the attacker
> managing to hijack the function entry point for
> either endpwent()
> or close()....)

Most common way of hacking a box looks much easier.
Usual way of stack problems was - to run shell using
security hole. Change root password or create new
account with root UID. All these usually done with
tools available at the system.

VXE use word Environment (description of available
resources), some systems use word Domain. There is no
shell, ls, vi and so on in POPD Environment. So, most
of attackers will just go away. One should be really
motivated to master unique binary code to hack VXE
protected system. Let's see what is possible even in
that case.

Let's assume there is a security hole in POPD. One
should create custom binary code to inspect RAM. How
to communicate information back to hacker? There
should be enough code to do that. This code should not
destroy POPD to such extent that it will end (or core
dumped), because hacker's code will end too. (POPD
doesn't need exec or fork for its work, so hacker
can't call these syscalls). So, in theory it is
possible to do some damage to particular subsystem,
but it's nearly impossible to compromise all system.

> Unless he finds a copy of the file on the process
> heap (more than
> one information leakage issue has come from THAT
> sort of problem)

If you have limited number syscalls (with limited
parameters you can call allowed syscalls) - it's VERY
hard to do. Purpose of VXE is to protect subsystems,
which can have security holes. In real life nobody can
gurantee, that there are no security holes in a given
system. Some time ago they constantly were finding
bugs in sendmail. Nevertheless people were using it.

> Unless he opens a new file on the system, and writes
> a binary into
> it, chmod's it to executable, and does a
> pipe/fork/exec and use
> that program's quota of opens to read it...

POPD doesn't use chmod/fork/exec, so that wouldn't
work - there are no these syscalls in POPD
Environment. Let's assume some file was created by
hacker in /var/spool/mailbox, so what? How that can
damage the system. (it's the only directory where POPD
can create/modify files).

> And that's just the *obvious* end runs.  As somebody
> else noted,
> writing the code is the easy part....

So, in theory it is possible to make some damage to
hacked subsystem (POPD for example and damaged can be
only mailboxes), but the rest of the system will be
intact (and there is a lot of stuff in the system
except POPD). But in practice with such striped
environment - without shell, editors, limited set of
syscalls - generic hackers tools will not work. Only
if someone will dedicate efforts to create custom
tools for your particular site - he can damage
mailboxes at most (in case of POPD). I think, that it
is a pretty good result.

Serge.


__________________________________
Do you Yahoo!?
Yahoo! Small Business $15K Web Design Giveaway 
http://promotions.yahoo.com/design_giveaway/

  reply	other threads:[~2004-04-08 22:22 UTC|newest]

Thread overview: 84+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-04-04  6:48 kernel stack challenge Sergiy Lozovsky
2004-04-05  9:39 ` Helge Hafting
2004-04-05 17:05   ` Sergiy Lozovsky
2004-04-05 18:06     ` Timothy Miller
2004-04-05 17:59       ` Sergiy Lozovsky
2004-04-05 19:27         ` Valdis.Kletnieks
2004-04-05 21:14           ` Timothy Miller
2004-04-05 20:09         ` John Stoffel
2004-04-05 20:54           ` Sergiy Lozovsky
2004-04-05 21:08             ` Chris Wright
2004-04-05 21:40               ` Sergiy Lozovsky
2004-04-05 21:53                 ` Chris Wright
2004-04-05 22:22                 ` Timothy Miller
2004-04-05 23:49                   ` Sergiy Lozovsky
2004-04-06 13:25                     ` Jesse Pollard
     [not found]                     ` <20040406132750$3d4e@grapevine.lcs.mit.edu>
     [not found]                       ` <mit.lcs.mail.linux-kernel/20040406132750$3d4e@grapevine.lcs.mit.edu>
2004-04-06 16:40                         ` Patrick J. LoPresti
2004-04-06 19:10                           ` Timothy Miller
2004-04-06 20:53                             ` Patrick J. LoPresti
2004-04-06 21:24                               ` Timothy Miller
2004-04-07 14:36                           ` Jesse Pollard
2004-04-05 21:28             ` Timothy Miller
2004-04-05 21:21               ` Stephen Smoogen
2004-04-05 22:25                 ` Timothy Miller
2004-04-05 21:30               ` Sergiy Lozovsky
2004-04-05 21:45                 ` Kevin Fox
2004-04-05 21:59                 ` Robin Rosenberg
2004-04-05 22:52                   ` Sergiy Lozovsky
2004-04-06  0:46                     ` Robin Rosenberg
2004-04-06  0:55                     ` Robin Rosenberg
2004-04-06  3:02                       ` Sergiy Lozovsky
2004-04-06  3:04                         ` Randy.Dunlap
2004-04-05 22:20                 ` Timothy Miller
2004-04-05 23:27                   ` Sergiy Lozovsky
2004-04-06 20:16                 ` Horst von Brand
2004-04-06 20:58                   ` Timothy Miller
2004-04-06 22:05                     ` Sergiy Lozovsky
2004-04-06 22:56                       ` Timothy Miller
2004-04-06 23:17                         ` Sergiy Lozovsky
2004-04-08 13:11                           ` Martin Waitz
2004-04-08 22:33                             ` Sergiy Lozovsky
2004-04-07  2:44                       ` Horst von Brand
2004-04-07 17:54                         ` Sergiy Lozovsky
2004-04-08  2:43                           ` Horst von Brand
2004-04-08  4:07                             ` Sergiy Lozovsky
2004-04-08  4:29                               ` Horst von Brand
2004-04-08 22:51                                 ` Sergiy Lozovsky
2004-04-08 15:44                               ` Valdis.Kletnieks
2004-04-08 22:22                                 ` Sergiy Lozovsky [this message]
2004-04-09 15:27                                   ` Jesse Pollard
2004-04-05 21:12         ` Timothy Miller
2004-04-06 13:32     ` Helge Hafting
2004-04-06 17:44       ` Sergiy Lozovsky
2004-04-07  1:02         ` Horst von Brand
2004-04-07  1:34           ` Sergiy Lozovsky
2004-04-07  8:57             ` David Weinehall
2004-04-07 13:38               ` Chris Friesen
2004-04-07 17:12                 ` Sergiy Lozovsky
2004-04-07 17:16               ` Sergiy Lozovsky
2004-04-07  2:30           ` viro
2004-04-06 18:33       ` Jamie Lokier
2004-04-06 18:51         ` Sergiy Lozovsky
     [not found] <1H9LV-5Jb-1@gated-at.bofh.it>
2004-04-04 11:27 ` Andi Kleen
2004-04-04 18:24   ` Sergiy Lozovsky
2004-04-04 18:38     ` Muli Ben-Yehuda
     [not found] <200404052043.i35KhDvS020176@turing-police.cc.vt.edu>
2004-04-05 21:06 ` Sergiy Lozovsky
     [not found] <200404052026.i35KQh5g004342@eeyore.valparaiso.cl>
2004-04-05 21:21 ` Sergiy Lozovsky
2004-04-06 20:01   ` Horst von Brand
     [not found] <200404061606.i36G6YLE003375@eeyore.valparaiso.cl>
2004-04-06 18:04 ` Sergiy Lozovsky
2004-04-06 18:28   ` John Stoffel
2004-04-06 18:48     ` Sergiy Lozovsky
2004-04-06 18:57   ` Richard B. Johnson
2004-04-06 21:15     ` Sergiy Lozovsky
2004-04-06 22:44       ` Timothy Miller
2004-04-06 22:57         ` viro
2004-04-06 23:32           ` Sergiy Lozovsky
2004-04-06 23:45             ` Robin Rosenberg
2004-04-07  2:25       ` Horst von Brand
     [not found] <200404061618.i36GIHgW003419@eeyore.valparaiso.cl>
2004-04-06 18:16 ` Sergiy Lozovsky
2004-04-06 20:01   ` Valdis.Kletnieks
2004-04-06 21:38     ` Sergiy Lozovsky
2004-04-06 22:46       ` Timothy Miller
     [not found] <24DA9B48-8827-11D8-87A5-000A9585C204@able.es>
2004-04-07  0:27 ` Sergiy Lozovsky
     [not found] <58907794@toto.iv>
2004-04-07  4:29 ` Peter Chubb
     [not found] <20040409182517.330.qmail@web40508.mail.yahoo.com>
2004-04-10  4:17 ` Horst von Brand

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20040408222246.49161.qmail@web40506.mail.yahoo.com \
    --to=serge_lozovsky@yahoo.com \
    --cc=Valdis.Kletnieks@vt.edu \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).