The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Уязвимость в сетевых библиотеках языков Rust и Go, позволяющая обойти проверку IP-адресов, opennews (??), 08-Авг-21, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


44. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  +6 +/
Сообщение от Аноним (44), 08-Авг-21, 14:50 
Все системы счисления, кроме десятичной - запретить! Разбивать разряды точкой - запретить!
В языках программирования литералы чисел только десятичные!!!111
Специалисты стандартизаторы...

Что такое IP - это целое число 4 байта. В одном байте слава богу не 10 бит, а 8. И несмотря на мнимую десятичность точечной записи, это именно октеты.

Поймите, проблема именно в том, что у нас даже в высшей школе работают только с одной системой исчисления.
В отрасли развелось макак, не понимающих, что такое число и как оно хранится в памяти.

>Отбрасывал ноль перед значениями в адресе, но только если указано не более трёх цифр

Это безграмотно с любой точки зрения.

Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

50. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  +3 +/
Сообщение от пох. (?), 08-Авг-21, 14:54 
> Все системы счисления, кроме десятичной - запретить!

и любителей ipv6 тоже запретить. ящетаю, правильно (можно ради этой победы пожертвовать 0177)

Ответить | Правка | Наверх | Cообщить модератору

69. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  +/
Сообщение от псевдонимус (?), 08-Авг-21, 15:10 
>любителей ipv6 тоже запретить

Полностью поддерживаю!

Ответить | Правка | Наверх | Cообщить модератору

381. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  +/
Сообщение от Любитель IPv6 (?), 09-Авг-21, 05:46 
> Полностью поддерживаю!

Я вас быстрее запрещу путем превращения в динозавров.

Ответить | Правка | Наверх | Cообщить модератору

483. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  +1 +/
Сообщение от Аноним (-), 09-Авг-21, 18:21 
Смотри сам от натуги в тыкву не превратись.
Ответить | Правка | Наверх | Cообщить модератору

191. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  +/
Сообщение от Аноньимъ (ok), 08-Авг-21, 16:45 
Эк вас распёрло.

Проблема не в том, что люди разучились 8ричную систему понимать, это ваши чисто странные фантазии.

Проблема в идиотском стандарте. Мешающем в кучу две системы исчисления без явного указания конкретной системы.

Ответить | Правка | К родителю #44 | Наверх | Cообщить модератору

272. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  +2 +/
Сообщение от Онаним (?), 08-Авг-21, 19:43 
Именно так. С восьмеричной системой задница имеющегося "стандарта" в том, что он для "как отличать" нулём префиксуется. Давно бы пора уже попытки всё это автоматом разобрать закопать, заставив в явном виде указывать, ЧТО ждём на входе. DEC, OCT или HEX. А не пытаться разобрать мешанину из мух и котлет.
Ответить | Правка | Наверх | Cообщить модератору

400. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  –1 +/
Сообщение от Совершенно другой аноним (?), 09-Авг-21, 08:54 
> Проблема в идиотском стандарте. Мешающем в кучу две системы исчисления без явного указания конкретной системы.

ведущий 0 явно указывает 8-миричную систему счисления. А вообще нормальный такой подход - это не в библиотеке Rust сделали ошибку, это стандарт кривой, и поэтому там сделали ошибку. Так если так рассуждать, то и в C-шных и C++-снутых программах ошибок нет, да и вообще, во всех остальных языках - то таки стандарты кривые, которые мешают их реализовывать.

Ответить | Правка | К родителю #191 | Наверх | Cообщить модератору

468. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  –1 +/
Сообщение от Аноньимъ (ok), 09-Авг-21, 17:31 
Для человеческого здравого смысла не указывает.
А мы ведь говорим о стандарте текстового представления.

>Так если так рассуждать, то и в C-шных и C++-снутых программах ошибок нет

Нет конечно.
Мы тут давно это выяснили. Есть только простота переполнения буфера и удобство указателя на освобождённую память.

Ответить | Правка | Наверх | Cообщить модератору

484. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  –1 +/
Сообщение от Совершенно другой аноним (?), 09-Авг-21, 19:10 
> Для человеческого здравого смысла не указывает.
> А мы ведь говорим о стандарте текстового представления.

здравые смыслы, они бывают разные. И вообще, что-бы что-то делать по стандарту, внезапно, надо его читать, а то, что разработчики библиотеки не удосужились почитать стандарт

>>Так если так рассуждать, то и в C-шных и C++-снутых программах ошибок нет
> Нет конечно.
> Мы тут давно это выяснили. Есть только простота переполнения буфера и удобство
> указателя на освобождённую память.

Меня, вот, никак не напрягает указатель на освобождённую память, при довольно большом опыте программирования на C, у меня нечто подобное было, наверное, раза два, может три, не более. Примерно аналогичное число случаев переполнения буфера.

Ответить | Правка | Наверх | Cообщить модератору

270. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  +/
Сообщение от Онаним (?), 08-Авг-21, 19:41 
Кроме двоичной.
А для двоичной вот эти ваши 0-9 ещё и 48-57 в ASCII, так что всё равно преобразовывать.
Ответить | Правка | К родителю #44 | Наверх | Cообщить модератору

277. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  +3 +/
Сообщение от Онаним (?), 08-Авг-21, 19:48 
> Что такое IP - это целое число 4 байта.

Big endian или little endian? :D

Это для нас оно 4 байта.
А от пользователя оно прилетает хер пойми как записанное в текстовом виде.
И вот это хер пойми как и неплохо бы немножко причесать, для избежания двусмысленности.
Вменяемые 99.99% пользователей в oct точно не пошлют, да и в hex без явного указания тоже.
Значит берём dec, и баста.
А между сервисами достаточно флагом указать, чего ждём, для каждого конкретного текстового поля.

Ответить | Правка | К родителю #44 | Наверх | Cообщить модератору

291. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  –2 +/
Сообщение от Sw00p aka Jerom (?), 08-Авг-21, 20:10 
>Поймите, проблема именно в том, что у нас даже в высшей школе работают только с одной системой исчисления.

а вы задайте еще вопрос почему после 9 идет 10, а не 00, ведь 10 система и все остальные они все с потерей емкости представления чисел.

Ответить | Правка | К родителю #44 | Наверх | Cообщить модератору

577. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  +2 +/
Сообщение от Shnorr (?), 10-Авг-21, 20:48 
0..9 = десять значений
после окончания посл.значения переключается разряд:
0000
0001
....
0009
0010

в бытовой практике лидирующие нули мы не пишем.

поэтому 0,1,2..9,10,11

Ответить | Правка | Наверх | Cообщить модератору

578. "Уязвимость в сетевых библиотеках языков Rust и Go, позволяющ..."  –1 +/
Сообщение от Sw00p aka Jerom (?), 10-Авг-21, 21:26 
> в бытовой практике лидирующие нули мы не пишем.

это из-за того, что позиционная система счисления представляет из себя счетчик (колесо с цифрами), с заведомо известным количеством позиций (колес). И все позиции (колеса) в заведомо начальном состоянии в 0, и тем самым когда первая позиция (колесо) из последнего состояния 9 переходит в 0 состояние, то следующая позиция (колесо) счетчика переходит в состояние из 0 (заведомо установленного) в состояние 1, отсюда после 9 следует 10 - вот такое представление. А при таком представлении теряется емкость представления чисел цифрами от 0-9.

пс: Возможно использовать "полную (емкую) позиционную систему счисления" с определением на ней всей арифметики. Что мешает нам использовать эту "полную (емкую) позиционную систему счисления"? Почему мы ее не используем? На эти вопросы я пока не нашел ответов.


Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру