1.1, Аноним (1), 17:52, 05/08/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
Не уязвимость, а канал доступа. Красиво, вряд ли только сейчас нашли. Это примерно как у многих сайтов ластик в интернет вывешен или VNC без пароля, только лучше.
| |
|
2.3, Аноним (3), 17:58, 05/08/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
А писали бы на единственной безопасном и быстром языке Carbon, то уязвимость они бы все равно нашил куда вставить.
| |
|
3.9, Аноним (-), 18:36, 05/08/2022 [^] [^^] [^^^] [ответить]
| +5 +/– |
Что-то подсказывает что лажаться с обработкой путей кодеры будут одинаково, хоть на брейнфаке.
| |
|
4.16, Аноним (16), 18:55, 05/08/2022 [^] [^^] [^^^] [ответить]
| –3 +/– |
Чтобы не лажаться с обработкой путей, нужна capability-based security model. Но unix-way - это продолжать жрать кактус.
| |
|
5.41, Аноним (41), 23:09, 05/08/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
> нужна capability-based security model
которую изобрели в unix системах
| |
5.46, Аноним (-), 00:22, 06/08/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Чтобы не лажаться с обработкой путей, нужна capability-based security model.
В линухе оно даже есть. Как и контейнеры позволяющие довольно эффективно отрезать сервер в его загон когда выйти довольно проблематично.
Пара нюансов?
1) У вон тех может быть инновационный кернел типа 2.6.32 где наиболее эффективных фич конечно же нет. Оно было в каком году вообще? Я даже и не помню этого уже.
2) Насколько там всем было на безопасность - намекает пуск вебсервака под рутом. Думаете вон ТЕ станут заморачиватья чем-то более продвинутым? Плин, там фирмварь делана жоскими индусами которые рады по уши что доисторический CrapDK от вендора вообще что-то работающее выдал, все, узкоглазикам из *-link или чего там еще можно идти это продавать :)
| |
|
6.57, YetAnotherOnanym (ok), 09:49, 06/08/2022 [^] [^^] [^^^] [ответить]
| +/– |
Правильно, пока ты будешь имплементировать свою продуманную архитектуру, санитизировать каждый пук, прилетающий извне и огораживать все компоненты капабилитями, вон те выкинут на рынок дешёвую поделку, сделанную по принципу "тяп-ляп и в продакшон". И твоя железка будет интересна только кучке гиков, которые имеют неприличную манеру совать нос под капот.
| |
|
7.64, Аноним (64), 21:24, 06/08/2022 [^] [^^] [^^^] [ответить] | +/– | Ну да, ну да, поэтому хомякам придется жить с д рьмовыми железками где фирварь п... большой текст свёрнут, показать | |
|
|
5.56, YetAnotherOnanym (ok), 09:43, 06/08/2022 [^] [^^] [^^^] [ответить]
| +/– |
Чтобы не лажаться с чем бы то ни было, надо думать головой. А владельцу бизнеса или лицу, принимающему решения - думать головой, чтобы наннимать разрабов, которые думают головой.
А на случай лажи, которую почему-то не получилось избежать - да, использовать в том числе и capability-based security model.
| |
|
|
|
2.36, Аноним (36), 21:53, 05/08/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
А вот ужасный сустемдэ своим сервисом изолировал бы юзерспейс!
| |
|
3.47, Аноним (-), 00:23, 06/08/2022 [^] [^^] [^^^] [ответить]
| +/– |
Он 2 метра RAM жрет, а в том крапе всей оперативы 16..32 мега и ее впритык :)
| |
|
|
1.8, Аноним (8), 18:30, 05/08/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +13 +/– |
> разработчики подразумевали, что первый символ всегда "/"
Взоржал.
| |
|
2.48, Аноним (48), 00:27, 06/08/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
Нет такого пакета в этой репе! Сектор Б на барабане. Поздравляем, Вы - банкрот!
| |
|
1.34, Аноним (34), 20:51, 05/08/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
> muhttpd (mu HTTP daemon) is a simple but versatile web server written in portable ANSI C
Но это, конечно же, были ненастоящие программисты на C. Настоящие такой лажи никогда не допустили бы, такие ошибки можно на любом языке сделать и вообще в вашем смузикрипте тоже дыр полно!
| |
|
|
3.45, Анонн (?), 00:13, 06/08/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ахаха, ты серьезно?
"Проблема присутствует начиная с самой первой версии muhttpd ..." это с 2007 года (надеюсь, иначе вообще с 2002)!
| |
|
2.50, Аноним (50), 01:10, 06/08/2022 [^] [^^] [^^^] [ответить]
| +/– |
Учитывая, что я вообще впервые слышу про такой веб-сервер, глаз там было по числу коммитеров умножить на полтора. :)
| |
|
3.63, Аноним (35), 19:51, 06/08/2022 [^] [^^] [^^^] [ответить]
| +/– |
Ну ты может и в первый раз слышишь, а его используют серьезные ынтерпрайз конторы типа "AT&T, Frontier и Windstream"
| |
|
|
|
2.52, Cucumber (?), 05:17, 06/08/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
В расте такая болезненная работа с путями, что там даже никогда не заметили бы проблемы за мишурой из бесконечных кастов OSString в String, Path в PathBuf, ResultReadDir в ReadDir в IteratorResultDirEntry в IteratorDirEntry в DisplayDirEntryPathExt и обратно.
| |
|
3.66, Аноним (-), 21:46, 06/08/2022 [^] [^^] [^^^] [ответить]
| +/– |
> В расте такая болезненная работа с путями, что там даже никогда не
> заметили бы проблемы за мишурой из бесконечных кастов OSString в String,
> Path в PathBuf, ResultReadDir в ReadDir в IteratorResultDirEntry в IteratorDirEntry в
> DisplayDirEntryPathExt и обратно.
Интересно а в всем этом не будет новых бонусных вулнов как это уже было в их stdlib'е? :)
| |
|
|
1.43, Онаним (?), 23:17, 05/08/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
muahahahttpd
Ну конечно "разработчики" эмбедовки тоже кони ещё те. С цирком.
httpd от рута - это прелесть просто.
| |
|
2.49, Аноним (48), 00:29, 06/08/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Да это обычно обдолбаные узкоглазики которые койкак слабали вообще и скорее продавать.
| |
|
1.51, Аноним (51), 04:41, 06/08/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Недырявый домашний роутер - это что-то вообще из области фантастики )
Хотите за 30 баксов и еще чтоб безопасно?
| |
1.54, Sylvia (ok), 08:06, 06/08/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
О существовании некоторых вебсерверов (и некоторого другого софта) узнаешь из сообщений об уязвимостях в них
| |
1.59, Аноним (58), 10:01, 06/08/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
То что модератор удалил все комментарии про то что уязвимость очевидно вставлена намеренно лишь подтверждает этот факт.
| |
1.62, Аноним (62), 19:19, 06/08/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
дайте угадаю,. следующая найденная там уязвимость будет
GET /../../../../../../../etc/passwd
?
потому что 'используя технику "DNS rebinding"' затруднительно пинуть именно "a/etc/passwd" - браузер надо еще както заставить такое выдать. А вот /../../../../../../../etc/passwd вообще не проблема...
| |
|
2.69, Аноним (69), 21:15, 07/08/2022 [^] [^^] [^^^] [ответить]
| +/– |
> браузер надо еще както заставить
Настоящий хакер (крякер тем более) работает с сетью только через браузер.
| |
|
1.67, burjui (ok), 04:49, 07/08/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
extern char **environ;
int clearenv(void) {
/* We would like to free previously set environment variables here,
* but at least FreeBSD 5.1 doesn't let us */
/* Create empty environment */
environ = malloc(sizeof(char*));
if(environ) {
*environ = NULL;
}
return 0;
}
Беллиссимо. Это не местные ыксперты писали, которые в новости про Rust бегают?
| |
|
|
3.72, burjui (ok), 11:21, 08/08/2022 [^] [^^] [^^^] [ответить]
| +/– |
Серьёзно? Местных сишников послушать - так они лучшие в мире и никогда не делают ошибок, а ты очевидных косяков не видишь :)
Во-первых, вместо этой портянки
environ = malloc(sizeof(char*));
if(environ) {
*environ = NULL;
}
достаточно написать
environ = calloc(sizeof(char*), 1);
т.к. NULL в C - это просто ноль, приведённый к типу void*.
Во-вторых, тут как в анекдоте: вы или штаны наденьте, или крестик снимите. Зачем clearenv() возвращать int, если она всегда возвращает ноль? Тут уж или void clearenv(), или давайте возвращать ещё что-то кроме нуля.
В-третьих, если функция возвращает некие коды, неплохо бы их объявить, а не просто return 0. Вернуть ноль любой дурак может, а вот чтобы понять, что он значит в этой функции, нужно уже лезть в исходник,
В-чертвёртых, комментарий "Create empty environment" должен комментировать функцию, а не её внутренности. И вообще, он должен быть в заголовочном файле.
В общем, как-то так:
---- clearenv.h ----
#define CLEARENV_SUCCESS 0
#define CLEARENV_FAILURE -1
/* Create empty environment */
int clearenv(void);
---- clearenv.c ----
int clearenv(void) {
/* We would like to free previously set environment variables here,
* but at least FreeBSD 5.1 doesn't let us */
environ = calloc(sizeof(char*), 1);
return environ ? CLEARENV_SUCCESS : CLEARENV_FAILURE;
}
| |
|
4.73, Аноним (-), 13:39, 08/08/2022 [^] [^^] [^^^] [ответить] | +/– | Это всё, что ты перечислил, стилевые придирки Которые совершенно нерелевантны д... большой текст свёрнут, показать | |
|
5.74, burjui (ok), 14:55, 08/08/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Ты не читал аргументацию Кармака, почему DRY плох и почему его надо заменять на WET?
...
> Здесь есть _одно_ использование функции, а значит осмысленно обобщить её не удастся. Зачем пытаться тогда совершить невозможное?
Какое отношение всё это имеет к обсуждаемой функции? Какое обобщение? Я вообще об этом даже не заикался.
> Типа в стандарте так написано, или ты на своей системе проверил, и решил, что так везде? Я лично не очень доверяю этому. Не знаю, почему.
Вот вместо написания этих двух предложений лучше бы почитал стандарт и убедился. Люди уже гуглить обленились, дожили.
> Достаточно один раз договориться
Ну и как там процесс идёт? Разработчики библиотек между собой уже договорились? А с разработчиками приложений? А то здесь одни значения успеха, там другие, а потом это всё сходится в одном приложении и приходится каждый раз лазить в доки, потому что невозможно удержать в голове, какие из 200 используемых функций из разных библиотек придерживаются какого стиля.
Вообще, я уже устал дискутировать, на остальное отвечать просто лень. Всё равно понятно, что здесь собрались эксперты мирового класса, мне таких не переспорить. ВСЁ, что я пишу, постоянно оспаривается, как будто из принципа, а собственные косяки мои оппоненты или замалчивают, или преподносят как истину. Видите ли, раньше все нормальные люди писали дефайны кодов ошибок, как в тех же *nix ОС, и это считалось правильно, а сегодня пришёл Аноним и заявил, что это - корпоративное уфло. Ну ок.
| |
|
|
|
|
1.68, Аноним (68), 18:03, 07/08/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Ожидал всего что угодно, но такого. Они просто читают файл по относительному пути без каких либо проверок. Этот сервер писали школьники на уроках информатики?
| |
|