• [^] # Re: Faille de sécurité

    Posté par . En réponse à la dépêche HotMail en partie sous FreeBSD encore. Évalué à 10.

    heuuu, c'est pas sur a 100%

    imagine que le noyau ou la libc contiennent des bugs, avec des buffer overflow ... ben tu l'as dans l'os ... en tout etat de cause, meme ce programme bidon peut contenir un bug, et moi je n'y mettrait pas ma main au feu.


    corneille.quinton 27 :cat > foo.c
    void main(void){}
    corneille.quinton 28 :gcc -o foo foo.c
    foo.c: In function `main':
    foo.c:1: warning: return type of `main' is not `int'
    corneille.quinton 29 :ldd foo
    libc.so.6 => /lib/libc.so.6 (0x40024000)
    /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

    corneille.quinton 31 :trace ./foo
    execve("./foo", ["./foo"], [/* 36 vars */]) = 0
    uname({sys="Linux", node="corneille", ...}) = 0
    brk(0) = 0x80495a0
    open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/local/user/usr/lib/i686/mmx/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
    stat64("/local/user/usr/lib/i686/mmx", 0xbfffec34) = -1 ENOENT (No such file or directory)
    open("/local/user/usr/lib/i686/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
    stat64("/local/user/usr/lib/i686", 0xbfffec34) = -1 ENOENT (No such file or directory)
    open("/local/user/usr/lib/mmx/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
    stat64("/local/user/usr/lib/mmx", 0xbfffec34) = -1 ENOENT (No such file or directory)
    open("/local/user/usr/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
    stat64("/local/user/usr/lib", {st_mode=S_IFDIR|0755, st_size=8192, ...}) = 0
    open("/etc/ld.so.cache", O_RDONLY) = 3
    fstat64(3, {st_mode=S_IFREG|0644, st_size=51111, ...}) = 0
    old_mmap(NULL, 51111, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40016000
    close(3) = 0
    open("/lib/libc.so.6", O_RDONLY) = 3
    read(3, "177円ELF1円1円1円0円0円0円0円0円0円0円0円0円3円0円3円0円1円0円0円0円0円302円1円"..., 1024) = 1024
    fstat64(3, {st_mode=S_IFREG|0755, st_size=1216268, ...}) = 0
    old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40023000
    old_mmap(NULL, 1231496, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40024000
    mprotect(0x40148000, 35464, PROT_NONE) = 0
    old_mmap(0x40148000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x123000) = 0x40148000
    old_mmap(0x4014d000, 14984, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4014d000
    close(3) = 0
    munmap(0x40016000, 51111) = 0
    getpid() = 19928
    _exit(1) = ?