В реализации поддержки сетевого протокола RDS (Reliable Datagram Sockets (http://ru.wikipedia.org/wiki/Reliable_Datagram_Sockets)), разработанного (http://oss.oracle.com/pipermail/rds-devel/2007-November/0002... компанией Oracle, найдена уязвимость (http://www.vsecurity.com/resources/advisory/20101019-1/), позволяющая локальному злоумышленнику выполнить код с повышенными привилегиями через отправку специально оформленного запроса к RDS-сокету. Наличие уязвимости подтверждено в Linux-ядрах с 2.6.30 по 2.6.36-rc8, собранных с включенной опцией CONFIG_RDS. Большинство Linux-дистрибутивов подвержены уязвимости, так как поддержка RDS включена в виде модуля (проверить можно командой "<font color="#461b7e">cat /boot/config-2.6.3* |grep CONFIG_RDS</font>").
Опасность уязвимости усугубляется наличием эксплоита (http://www.vsecurity.com/download/tools/linux-rds-exploit.c) в открытом доступе. Исправление пока доступно только в виде патча (http://git.kernel.org/?p=linux/kernel/git/torva...URL: http://www.vsecurity.com/resources/advisory/20101019-1/
Новость: https://www.opennet.ru/opennews/art.shtml?num=28355
очень оптимистично.
>разработанного компанией OracleАААА, так вот значит как оракл меняет правила поставщиков Linux.
+500 - Эдак я написав кривой модуль к ядру могу находить там дыры хоть каждый день, а кричать будут что нашли в Linux ядре? - жесть - может я чего не понимаю?
Оперативно в бубунте поправили: * Local privilege escalation vulnerability in RDS sockets - CVE-2010-3904
$ zcat /proc/config.gz | grep RDS
# CONFIG_RDS is not set
99.95% пользователей Линукса используют вендорные ядра, так что вы не показатель.
чтобы использовать дыры нужно уже быть залогиненным - опять удаленно не пробиться :(
>опять удаленно не пробиться :(ну это вам не семёрочка максимальное, ничего не поделаешь.
работает!)
а у меня остановился на пункте "[*] Restoring function pointer...\n"
эксплойт завершился на функции write_to_mem()ты ничего не правил в этом эксплойте?
работает. и вообще без бубна. squeeze :(
у меня sid и ядро из сквизи - ничо не работает.
угу, тупанул, 35 ведро из экспериментальной ветки было, на 32 сквизовском все норм.
> разработанного компанией OracleНигадяй!!!
---$ zcat /proc/config.gz | grep RDS
# CONFIG_RDS is not set> Проблема устранена в тестовой сборке 2.6.36-rc7.
$ uname -r
2.6.36-rc8+
cat foo | grep bar - это мощно :)
ничего удивительного, просто у одних первоначальная цель это "свобода", у других - деньги, всё остальное вторично
$ cat /boot/config-2.6.3* |grep CONFIG_RDS
cat: /boot/config-2.6.3*: Нет такого файла или каталога
$ cat /proc/config.gz | gunzip -c | grep CONFIG_RDS
# CONFIG_RDS is not set
$
zgrep CONFIG_RDS /proc/config.gz
man zcat; man zgrep; man zless
$ ls /boot/config-2.6.3* |xargs grep -i CONFIG_RDS
/boot/config-2.6.32-5-686:CONFIG_RDS=m
/boot/config-2.6.32-5-686:CONFIG_RDS_RDMA=m
/boot/config-2.6.32-5-686:CONFIG_RDS_TCP=m
/boot/config-2.6.32-5-686:# CONFIG_RDS_DEBUG is not set
/boot/config-2.6.32-bpo.3-686:CONFIG_RDS=m
/boot/config-2.6.32-bpo.3-686:CONFIG_RDS_RDMA=m
/boot/config-2.6.32-bpo.3-686:CONFIG_RDS_TCP=m
/boot/config-2.6.32-bpo.3-686:# CONFIG_RDS_DEBUG is not set
/boot/config-2.6.32-bpo.5-686:CONFIG_RDS=m
/boot/config-2.6.32-bpo.5-686:CONFIG_RDS_RDMA=m
/boot/config-2.6.32-bpo.5-686:CONFIG_RDS_TCP=m
/boot/config-2.6.32-bpo.5-686:# CONFIG_RDS_DEBUG is not setЭто в Debian.
[root@ss01 ~]# cat /boot/config-2.6.3* |grep CONFIG_RDS
CONFIG_RDS=m
CONFIG_RDS_RDMA=m
CONFIG_RDS_TCP=m
# CONFIG_RDS_DEBUG is not set
CONFIG_RDS=m
CONFIG_RDS_RDMA=m
CONFIG_RDS_TCP=m
# CONFIG_RDS_DEBUG is not setFedore 12-x64
[root@ss01 ~]# uname -a
Linux ss01 2.6.32.21-168.fc12.x86_64 #1 SMP Wed Sep 15 16:12:07 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux
zgrep CONFIG_RDS /proc/config.gz
так как то больше по уму
> zgrep CONFIG_RDS /proc/config.gz
> так как то больше по умуgzip: /proc/config.gz: No such file or directory
кто то тут недавно пел что типа линукс более защищен чем все остальное вместе взятое, и всякие W^X, ASLR, PIE, спасут линукс вместе с новомодным grsecurity и тд. И что? Реально спасает или всетаки не очень?
я бы проверил, что скажет ново?модный grsec но:gzip -dc /proc/config.gz |grep CONFIG_RDS
# CONFIG_RDS is not set
Блин, че за хрень. Август-ноябрь черный период для никсов. Целые пачки уязвимостей вылезают. Каждый год.
Народ выходит из отпусков, и хватается за голову видя что натворил перед уходом.
user@server:~> ./a.out
[*] Linux kernel >= 2.6.30 RDS socket exploit
[*] by Dan Rosenberg
[*] Resolving kernel addresses...
[+] Resolved security_ops to 0xc09c11c8
[+] Resolved default_security_ops to 0xc088b800
[+] Resolved cap_ptrace_traceme to 0xc03bf9f0
[+] Resolved commit_creds to 0xc0274310
[+] Resolved prepare_kernel_cred to 0xc0274540
[*] Overwriting security ops...
[*] Overwriting function pointer...
[*] Triggering payload...
[*] Restoring function pointer...
[*] Got root!
server:~>
server:~> whoami
root
server:~>Работает :))