Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Wed, 22 Feb 2017 11:44:12 +0000
From: Tobias Koch <tobias.koch@...terra.com>
To: musl <musl@...ts.openwall.com>
Subject: Crash in 'system' while executing '__clone'

Hi,

the following code snippet

    #include <stdlib.h>

    int main(void)
    {
        system("ls");
    }

segfaults while running inside a 1.1.16 musl-based chroot on a

    Linux debian 4.9.0-1-amd64 #1 SMP Debian 4.9.6-3 (2017-01-28) x86_64 GNU/Linux

host. The crash happens when __clone returns:

    Reading symbols from test...done.
    (gdb) break __clone
    Function "__clone" not defined.
    Make breakpoint pending on future shared library load? (y or [n]) y
    Breakpoint 1 (__clone) pending.
    (gdb) run
    Starting program: /home/tobias/test

    Breakpoint 1, __clone () at src/thread/x86_64/clone.s:5
    56xor %eax,%eax
    (gdb) next
    64mov $56,%al
    (gdb) 
    77mov %rdi,%r11
    (gdb) 
    8mov %rdx,%rdi
    (gdb) 
    9899mov %r8,%rdx
    (gdb) 
    1000mov %r9,%r8
    (gdb) 
    11mov 8(%rsp),%r10
    (gdb)
    128mov %r11,%r9
    (gdb)
    13and $-16,%rsi
    (gdb)
    14sub $8,%rsi
    (gdb)
    15mov %rcx,(%rsi)
    (gdb)
    16syscall
    (gdb)
    17test %eax,%eax
    (gdb) backup    git       pkgs      repo      spool     temp.txt  test      test.c    test.txt

    18jnz 1f
    (gdb)
    __clone () at src/thread/x86_64/clone.s:27
    271:271ret(gdb)
    0x0000000000000000 in ?? ()

Any ideas what might be wrong or what I can do to investigate further?

Tobias

Powered by blists - more mailing lists

Your e-mail address:

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.