vitus_wagner: My photo 2005 (Default)
[personal profile] vitus_wagner


В первый раз вижу zero-day эксплойт к приличной операционке, выполняемый одной штатной шелловской командой. Вернее даже добавлением двух букв в стандартную команду.

Подробности (pdf)
via [livejournal.com profile] avva

P.S. IP-адрес я, конечно, затер. Но мог бы и не затирать - он из 10.0.0.0/8

Date: 2007-02-12 12:34 pm (UTC)
From: [identity profile] ktn-zoidberg.livejournal.com
на нормальных серваках telnetа уже лет 5 минимум быть недолжно...

Date: 2007-02-12 12:42 pm (UTC)
From: [identity profile] qehgt.livejournal.com
интересно, что раньше было - обнаружили, что логин по telnet'у всегда проходит (а потом в исходниках нашли причину). Или исходники смотрели, и обнаружили там эту бяку?

I couldn't agree more

Date: 2007-02-12 01:05 pm (UTC)
lodin: A bearded hacker in a hat (Default)
From: [personal profile] lodin
Только звери об этом не знают, они неграмотные (с).

На LOR-е обсуждалось, что иногда (а) требуют телнет, потому что он в бумажке записан (б) инфраструктура завязана на телнет.

Date: 2007-02-12 01:06 pm (UTC)
From: [identity profile] b-a-t.livejournal.com
Не всегда, а с -f.

Date: 2007-02-12 01:13 pm (UTC)
From: [identity profile] qehgt.livejournal.com
Не надо занудствовать, это ж и так понятно.

Date: 2007-02-12 02:11 pm (UTC)
From: [identity profile] http://users.livejournal.com/_nik_/
В 5.9 не воспроизвелось :o(

Date: 2007-02-12 02:36 pm (UTC)
From: [identity profile] asphyx-lj.livejournal.com
А казалось бы, просто взять, да проверить, есть ли такой юзер...

Date: 2007-02-12 03:01 pm (UTC)
From: [identity profile] t-mike.livejournal.com
и telnets тоже?

Date: 2007-02-12 03:05 pm (UTC)
From: [identity profile] blacklion.livejournal.com
А если есть -- это нормально без пароля пускать, да?

Date: 2007-02-12 03:16 pm (UTC)
From: [identity profile] michaelselehov.livejournal.com
А у тебя получилось? Я на наших компах воспроизвести не смог...

Date: 2007-02-12 03:18 pm (UTC)
From: [identity profile] blacklion.livejournal.com
Заходи -- покажу.

Date: 2007-02-12 03:27 pm (UTC)
From: [identity profile] asphyx-lj.livejournal.com
Юзер с именем "-fvitus"? Сомневаюсь, что такой будет :)

Кстати, NetKit'овский telnetd просто делает вот так:

if (getenv("USER")) {
  addarg(&avs, getenv("USER"));
  if (*getenv("USER") == '-') {
    write(1,"I don't hear you!\r\n",19);
    syslog(LOG_ERR,"Attempt to login with an option!");
    exit(1);
  }
}


Так что ничто, начинающееся с "-" не подсунешь.

Date: 2007-02-12 03:37 pm (UTC)
From: [identity profile] feldgendler.livejournal.com
Правильное решение -- использовать -- (два минуса), когда передаёшь параметры утилитам. В данном случае telnetd зовёт, условно говоря, "login $username", а надо "login -- $username".\

Проверять наличие юзеров -- не telnetd забота. Этим как раз занимается login.

Date: 2007-02-12 03:42 pm (UTC)
From: [identity profile] asphyx-lj.livejournal.com
Да, только не все login'ы такую нотацию понимают. Линуксовый, из пакета shadow, -- не понимает. Как вариант -- отучить login понимать запись -fuser, т.е. одним параметром.

Date: 2007-02-12 03:48 pm (UTC)
From: [identity profile] feldgendler.livejournal.com
В случае, когда login не понимает "--" (это можно проверить в configure), можно просто запрещать имена пользователей, начинающиеся с минуса, так как не существует безопасного способа передать их в login.

Date: 2007-02-12 03:54 pm (UTC)
From: [identity profile] asphyx-lj.livejournal.com
На каком уровне? В случае netkit'а, как раз такая проверка и происходит в самом telnetd (см. выше).

Date: 2007-02-12 03:55 pm (UTC)
From: [identity profile] feldgendler.livejournal.com
Да, на уровне telnetd, конечно.

Date: 2007-02-12 06:08 pm (UTC)
From: [identity profile] blacklion.livejournal.com
Юзер с именем "-fvitus"? Сомневаюсь, что такой будет :)
Юзера с именем vitus. Как вы понимаете, можнов писать любого (root'а, правда пошлют). Но любым существующим пользователем можно зайти без пароля.
Это уже огроменная дыра.

Date: 2007-02-12 06:09 pm (UTC)
From: [identity profile] blacklion.livejournal.com
Да, дыра там глупейшая в in.telnetd, конечно. Тягущаяся еще с 4.4BSD, но на всех остальных системах заткнутая.

Date: 2007-02-12 07:34 pm (UTC)
From: [identity profile] applesin07.livejournal.com
Шрифт в терминале какой?

Date: 2007-02-12 11:57 pm (UTC)
From: [identity profile] cnst.livejournal.com
а когда её во всес других системах исправили, интересно?

В OpenBSD, например, уже вообще telnetd давно как нет. ;)

Date: 2007-02-13 08:30 am (UTC)
From: [identity profile] asphyx-lj.livejournal.com
А очень на Terminus похож :)

Date: 2007-02-13 08:37 am (UTC)
From: [identity profile] asphyx-lj.livejournal.com
Пошлют как раз не root'а, а любого обычного юзера при попытке сделать login -f. Так что само по себе это ещё не дыра. Просто, когда login вызывается из-под демона, пущенного от root, или враппера с suid, надо быть аккуратнее.

Date: 2007-02-14 07:40 am (UTC)
From: [identity profile] dmitrmax.livejournal.com
Мне казалось, что Terminus ни разу не масштабируемый...

Date: 2007-02-14 08:47 am (UTC)
From: [identity profile] asphyx-lj.livejournal.com
Дык растровее просто некуда :)

Date: 2007-02-27 10:17 pm (UTC)
From: [identity profile] everard-took.livejournal.com
Да-да-да, юниксы принципиально и по сути своей безопаснее виндов :)

Profile

vitus_wagner: My photo 2005 (Default)
vitus_wagner

July 2025

S M T W T F S
  12345
6789 1011 12
13141516 17 1819
20212223 242526
2728293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 29th, 2025 05:08 am
Powered by Dreamwidth Studios