LINUX.ORG.RU

Критическая уязвимость в pppd.

 ,


0

4

не хочу я возиться с переводом. но уязвимость в pppd критическая.

A 17-year-old critical remote code execution vulnerability affecting the PPP Daemon software exposes most Linux systems to hack.

The US-CERT issued a security advisory warning users of the RCE in the PPP daemon (pppd) software that is part of almost all Linux based operating systems.

...

The vulnerability can be exploited by remote attackers to execute arbitrary code on affected systems and take full control over them.

It could be exploited by sending an unsolicited malformed EAP packet to a vulnerable ppp client or a server.

The CVE-2020-8597 remote code execution issue received a CVSS Score 9.8, it affects PPP Daemon versions 2.4.2 through 2.4.8.

https://securityaffairs.co/wordpress/99043/hacking/linux-rce-ppp-daemon-flaw....

★★★★★
Ответ на: комментарий от Wiospkl

у них свои демоны ppp? потому что уязвимость касается, в том числе, и последних версий софта.

Iron_Bug ★★★★★
() автор топика
Ответ на: комментарий от Iron_Bug

Nick: Wiospkl

ID: 175996

Дата регистрации: 09.03.20 10:47:52

Последнее посещение: 09.03.20 13:52:16

Статус: анонимный

anonymous
()
Ответ на: комментарий от Iron_Bug

Похоже, что их там совсем нет.

Но меня интересует другое. Почему сначала уязвимости не было, а потом появилась? Ведь, чтобы устранить её нужна всего одна строчка.

https://github.com/paulusmack/ppp/commit/8d7970b8f3db727fe798b65f3377fe6787575426

Неужели проверяльщики, а они 100% были, ничего не заметили?

anonymous
()
Ответ на: комментарий от anonymous

ну, уязвимости появляются. общее ухудшение качества софта. тенденции такие. вон, даже в процах баги находят.

Iron_Bug ★★★★★
() автор топика
Ответ на: комментарий от Iron_Bug

общее ухудшение качества софта

Ну для 17-летней уязвимости тенденция тут явно другая. Взяли протокол, в котором экономили каждый битик во времена диалапа и до сих пор пришпандоривают в 21 веке куда не попадя, а аудитом этого нудного колупания в каждом байтике заниматься даже не лень, а просто неприятно.

vodz ★★★★★
()
Последнее исправление: vodz (всего исправлений: 1)
Ответ на: комментарий от vodz

что же плохого в «колупании в каждом байтике»? это основа системного программирования, так-то. если бы за юзеров никто байтики не экономил, мы бы уже утонули в говнокоде и его жрущих ресурсы производных.

колупание в байтиках ещё вернётся. производительность процов и сетей не резиновая.

Iron_Bug ★★★★★
() автор топика
Последнее исправление: Iron_Bug (всего исправлений: 1)
Ответ на: комментарий от vodz

предлагаешь вместо PPP JSON-ы, YAML-ы или что сейчас модно, туда сюда-гонять?

Harald ★★★★★
()
Ответ на: комментарий от Iron_Bug

что же плохого в «колупании в каждом байтике»?

Так пар же в свисток уходит, когда технология не по назначению. Вместо тупого как пробка IPoE придумывают accel-pppd, какие мы крутые, сэкономили несколько байт, но через CPU, а потом годами баги правят и конца не видно.

vodz ★★★★★
()
Последнее исправление: vodz (всего исправлений: 1)
Ответ на: комментарий от vodz

какой пар-то? он раз в столетие правится по чуть-чуть. зато поддержка в любой железяке есть. в сети его полно повсюду.

экономия байтиков в системном софте - это нормально. как выше заметили, всякие хипстерские json'ы там даже рядом не стояли. дело не в «удобстве» некоторых программистов, а в эффективности.

Iron_Bug ★★★★★
() автор топика
Последнее исправление: Iron_Bug (всего исправлений: 1)
Ответ на: комментарий от Iron_Bug

зато поддержка в любой железяке есть

Через CPU и по замкнутому принципу, что раз все делают, то и нам придётся.

всякие хипстерские

Я вам конкретный пример дал, а вы юродствуете на пару.

vodz ★★★★★
()
Ответ на: комментарий от vodz

непонятно, почему ты сравниваешь PPP с IP. PPP - это аутентификация юзера и пароля. а IP - это точка назначения, без проверки.

Iron_Bug ★★★★★
() автор топика
Ответ на: комментарий от Iron_Bug

PPP - это аутентификация юзера и пароля

А я в тебе не ошибся, ты прекрасна.

anonymous
()
Ответ на: комментарий от Iron_Bug

непонятно, почему ты сравниваешь

А что бы не сравнить? Для медленного диалапа, если такое ещё кому-то надо, так и быть, юзайте, оно как раз для этого. А там где действительно нужна современная аутентификация, там медленно но верно pppd потеснён, но до сих пор можно найти упоротых с pptp.

vodz ★★★★★
()
Ответ на: комментарий от vodz

если ты предпочитаешь быстрое надёжному - это твоё личное дело. я видела много сетей с l2tp и не только в нашей стране. не вижу причин для наездов на ppp.

Iron_Bug ★★★★★
() автор топика
Ответ на: комментарий от Iron_Bug

если ты предпочитаешь быстрое надёжному

Я предпочитаю адекватность и обоснованность.

не вижу причин для наездов на ppp

Ну так печально же. Оглянитесь вокруг, для провайдеров уже аппаратно поддерживают железки IPoE, когда надо есть и железные акселераторы IPSec, 802.x, туннелей на вкус и цвет. ppp - дал толчек по сравнению со slip и мог бы достойно уйти на пенсию. l2tp - типичное натягивание легаси на глобус.

vodz ★★★★★
()
Ответ на: комментарий от vodz

так я-то как раз реалист. l2tp цветёт и пахнет. и не думает помирать. и вообще пофигу на акселераторы, если это в принципе другой протокол, без авторизации.

Iron_Bug ★★★★★
() автор топика
Ответ на: комментарий от Iron_Bug

мы бы уже утонули

Недавно в ютубах слушал про SoC c эн ядрами и 5петаопсами, тормозившую на просмотре сайта о себе самой. Пишу из подлодки.

DonkeyHot ★★★★★
()
Ответ на: комментарий от Iron_Bug

так я-то как раз реалист. l2tp цветёт и пахнет. и не думает помирать. и вообще пофигу на акселераторы, если это в принципе другой протокол, без авторизации.

pppoe, l2tp — паллиатив, решает проблему на говнах и палках сделать подешевле, когда в сети тупые коммутаторы и разорились на один BRAS. А протоколов с мощной авторизацией было в предыдущем сообщении перечисленно, если вы не заметили.

vodz ★★★★★
()
Ответ на: комментарий от vodz

ах, ну да, у нас же везде джуниперы, куда ни плюнь! бабла-то у провайдеров дохрена, вот и бесятся с жиру :)

Iron_Bug ★★★★★
() автор топика
Ответ на: комментарий от buratino

-if (vallen >= len + sizeof (rhostname)) {
+if (len - vallen >= sizeof (rhostname)) {

buratino ★★★★★
()
Ответ на: комментарий от buratino

Нажимаем на кнопочки Expand Up и Expand Down у Github и читаем пояснение Спрунделя:

Given that we have just checked vallen < len, it can never be the case that vallen >= len + sizeof(rhostname). This fixes the check so we actually avoid overflowing the rhostname array.

Выражение vallen >= len + sizeof(rhostname) всегда ложно, поэтому мы всегда перескакиваем на участок кода, где копируем в rhostname len - vallen байт. Судя по всему len - vallen может быть больше размера массива rhostname.

 
int len; 
u_char vallen; 
char rhostname[256];

if (vallen < 8 || vallen > len) {
	error("EAP: MD5-Challenge with bad length %d (8..%d)",
			    vallen, len);
			/* Try something better. */
			eap_send_nak(esp, id, EAPT_SRP);
			break;
		}

		/* Not so likely to happen. */
		if (len - vallen >= sizeof (rhostname)) {
			dbglog("EAP: trimming really long peer name down");
			BCOPY(inp + vallen, rhostname, sizeof (rhostname) - 1);
			rhostname[sizeof (rhostname) - 1] = '\0';
		} else {
			BCOPY(inp + vallen, rhostname, len - vallen);
			rhostname[len - vallen] = '\0';
		}
Fast_Sloth
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.