Крупная компания, которая специализируется на аутенифкации. Проводили какой-нибудь white box security audit и нашёлся некто знающий про ограничение в 72 байта для bcrypt (я до прочтения этой заметки не знал, например). Этого уже достаточно.
Соответственно проверили, не используется ли bcrypt где-нибудь со входными данными длиннее этих 72 байт. Ну а дальше видим, что хешируется строка " идентификатора пользователя + имени пользователя + пароля" и делаем очевидный вывод, что с длинным юзернеймом пароль вылетает дальше 72 байт и не влияет на итоговый хеш. Если это не падает с ошибкой, а входная строка тупо отсекается, то всё, вот она дыра.
Зачем использовать в C# деревья выражений так, будто их там нет? Весь смысл этой фичи в том, чтобы выражения на сишарпе транслировались в выражения на языке СУБД. Получается примерно как в Си написать всю программу ассемблерными вставками. Какой смысл тогда вообще отталкиваться от Си? Фигачьте всё на ассемблере.
Нормальный паттерн построения динамических фильтров уже показали в другом комменте. В явном виде использовать все эти "and expression" оправдано при разработке драйверов СУБД или ещё каких-нибудь трансляторов - как раз чтобы пользователь вашего драйвера мог писать на нормальном C#. Ну то есть если бы вы Entity Framework делали.
Да не было там никакого лучшего качества. Точность декодирования выше была по чьим-то утверждениям, но она выходила за разумные пределы. Это как болты на колёсах почти до срыва затянуть и сказать, что машина лучше рулиться стала. Мои поздравления тому, кто на это в своё время повёлся. Я в том числе.
Прелесть второго Винампа была, помимо прочего, в том что он был ДО пятой версии +- минималистичен.
А прелесть пятого в том, что он превращался во второй отщёлкиванием нескольких галочек в инсталляторе. В итоге получался второй с багфиксами и едва заметными нововведениями. Но брюзжать о том, что всё скатилось в идиотизм, дурдом и говно, наверное, проще.
Всюду хейтят пятую версию, а мне как раз в год её выхода компьютер купили. И скрипты в modern скинах это было моё первое серьёзное программирование.
Вот такое в 10 классе запилил. Вдохновлялся CD-проигрывателем Sony и советстким магнитофоном Яуза 221 двоюродного брата. Кассета - крутится, причём количество ленты и скорость меняются в зависимости от позиции в плейлисте. Функции "повтор A-B" и Fade-in/fade-out на "сидюшнике" работают как на реальном аппарате.
Никогда не скучал по классическому облику винампа.
"Началось"... Там от первой версии до пятой всего 5-6 лет прошло (1997-2003). С тех пор минул ещё 21 год. Это винтажный софт из тех времён, когда добавить "XP Manifest.xml" считалось важным и даже понятным. По пунктам для юных:
CD burning support (limited to 2x in free version)
Тогда это была нужная фича. Я даже пользовался.
added XP Manifest.xml to winamp.exe
Если этого не сделать, то Windows XP отрисует стандартные элементы угловатыми в стиле предыдущих Windows. Некрасиво.
big prefs overhaul to make steve happy
Поиск говорит, что Steve Gedikian был PM в AOL в те годы.
Сам я не защищаю такой стиль написания whatsnew. Просто вот так было можно.
Это так важно? Я вот Ладу Весту брал на заре её выпуска, и тогда столько разговоров было о том, что из-за сложных выштамповок на кузове и дверях её никто чинить не будет (а значит и покупать). Подутихли эти разговоры ещё году в 2017-м.
Это не вина Рустора. Они бы с радостью сделали без дополнительных подтверждений, но для этого приложение самого магазина должно быть наделено особыми полномочиями в системе. Позволить это может только разработчик операционной системы.
Можно говорить про впн в другом качестве. Например, как средство обхода блокировок с той стороны. Или как средство организации доступа к своим вычислительным ресурсам. Вполне легитимные и легальные юзкейсы. А если это позволяет обходить внутренние блокировки? Ну что ж, выезд за пределы страны тоже позволяет, и чо?)
Проблема отчасти в том, что люди даже не пытаются писать обращения наслышавшись про вот такую бюрократию. На самом деле хоть и со сбоями, но всё же система реагирует. Просто упоминают об этом меньше, если вообще упоминают.
Я "лично" исправлял знаки и наказывал особо пакостных лихачей, восстанавливал освещение на улице. Суммарно раз 10 за последние 10 лет. Не бог весть какая выборка, но всё же - 6 или 7 обращений дошли до ожидаемого решения. Хреновая конверсия, да. Однако всё не настолько плохо чтобы говорить будто по умолчанию ничего не работает.
Крупная компания, которая специализируется на аутенифкации. Проводили какой-нибудь white box security audit и нашёлся некто знающий про ограничение в 72 байта для bcrypt (я до прочтения этой заметки не знал, например). Этого уже достаточно.
Соответственно проверили, не используется ли bcrypt где-нибудь со входными данными длиннее этих 72 байт. Ну а дальше видим, что хешируется строка " идентификатора пользователя + имени пользователя + пароля" и делаем очевидный вывод, что с длинным юзернеймом пароль вылетает дальше 72 байт и не влияет на итоговый хеш. Если это не падает с ошибкой, а входная строка тупо отсекается, то всё, вот она дыра.
Это обычная безэховая камера. Вполне логично для повторяемости акустических тестов.
В контексте случившегося это слишком технический обзор. Его можно существенно сократить.
Free Software Foundation - США
FreeBSD Foundation - США
OpenBSD Foundation - Канада
NetBSD Foundation - США
Microsoft - США
Всё.
Зачем использовать в C# деревья выражений так, будто их там нет? Весь смысл этой фичи в том, чтобы выражения на сишарпе транслировались в выражения на языке СУБД. Получается примерно как в Си написать всю программу ассемблерными вставками. Какой смысл тогда вообще отталкиваться от Си? Фигачьте всё на ассемблере.
Нормальный паттерн построения динамических фильтров уже показали в другом комменте. В явном виде использовать все эти "and expression" оправдано при разработке драйверов СУБД или ещё каких-нибудь трансляторов - как раз чтобы пользователь вашего драйвера мог писать на нормальном C#. Ну то есть если бы вы Entity Framework делали.
Да не было там никакого лучшего качества. Точность декодирования выше была по чьим-то утверждениям, но она выходила за разумные пределы. Это как болты на колёсах почти до срыва затянуть и сказать, что машина лучше рулиться стала. Мои поздравления тому, кто на это в своё время повёлся. Я в том числе.
Я готов стерпеть многое в вашем желчном ответе, но вот здесь
вы просто проехались по тому, что для меня наоборот было ценным в винампе. Больно. Вас что, принуждали пользоваться или обновляться вопреки предпочтениям?
А прелесть пятого в том, что он превращался во второй отщёлкиванием нескольких галочек в инсталляторе. В итоге получался второй с багфиксами и едва заметными нововведениями. Но брюзжать о том, что всё скатилось в идиотизм, дурдом и говно, наверное, проще.
Всюду хейтят пятую версию, а мне как раз в год её выхода компьютер купили. И скрипты в modern скинах это было моё первое серьёзное программирование.
Вот такое в 10 классе запилил. Вдохновлялся CD-проигрывателем Sony и советстким магнитофоном Яуза 221 двоюродного брата. Кассета - крутится, причём количество ленты и скорость меняются в зависимости от позиции в плейлисте. Функции "повтор A-B" и Fade-in/fade-out на "сидюшнике" работают как на реальном аппарате.
Никогда не скучал по классическому облику винампа.
"Началось"... Там от первой версии до пятой всего 5-6 лет прошло (1997-2003). С тех пор минул ещё 21 год. Это винтажный софт из тех времён, когда добавить "XP Manifest.xml" считалось важным и даже понятным. По пунктам для юных:
Тогда это была нужная фича. Я даже пользовался.
Если этого не сделать, то Windows XP отрисует стандартные элементы угловатыми в стиле предыдущих Windows. Некрасиво.
Поиск говорит, что Steve Gedikian был PM в AOL в те годы.
Сам я не защищаю такой стиль написания whatsnew. Просто вот так было можно.
Они не собирались это отличать. Просто кто-то недостаточно грамотный в таких делах составлял текст лицензии.
Комментарии... Есть какая-то забавная ирония во всех этих рассуждениях. Типичная off by one error. Праздновать два дня будем.
Кардинальной - нет. На выходе в обоих случаях возможен один и тот же код, покрытый одними и теми же (плюс-минус) тестами.
Это так важно? Я вот Ладу Весту брал на заре её выпуска, и тогда столько разговоров было о том, что из-за сложных выштамповок на кузове и дверях её никто чинить не будет (а значит и покупать). Подутихли эти разговоры ещё году в 2017-м.
Не спешите с выводами про зрение. Оно может неравномерно портиться.
Что они там, zero-width space нашли? Почему новость на техническом ресурсе такая поверхностная?
Это не вина Рустора. Они бы с радостью сделали без дополнительных подтверждений, но для этого приложение самого магазина должно быть наделено особыми полномочиями в системе. Позволить это может только разработчик операционной системы.
Можно говорить про впн в другом качестве. Например, как средство обхода блокировок с той стороны. Или как средство организации доступа к своим вычислительным ресурсам. Вполне легитимные и легальные юзкейсы. А если это позволяет обходить внутренние блокировки? Ну что ж, выезд за пределы страны тоже позволяет, и чо?)
Оксюморон.
Проблема отчасти в том, что люди даже не пытаются писать обращения наслышавшись про вот такую бюрократию. На самом деле хоть и со сбоями, но всё же система реагирует. Просто упоминают об этом меньше, если вообще упоминают.
Я "лично" исправлял знаки и наказывал особо пакостных лихачей, восстанавливал освещение на улице. Суммарно раз 10 за последние 10 лет. Не бог весть какая выборка, но всё же - 6 или 7 обращений дошли до ожидаемого решения. Хреновая конверсия, да. Однако всё не настолько плохо чтобы говорить будто по умолчанию ничего не работает.
Ещё и тарахтят целыми днями, слышно через весь район.
Оно хотя бы посередине в этом случае.