The OpenNET Project / Index page

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



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

"Уязвимость в VFS ядра Linux, позволяющая повысить свои привилегии"  +/
Сообщение от opennews (??), 21-Янв-22, 11:06 
В API Filesystem Context, предоставляемым ядром Linux, выявлена уязвимость (CVE-2022-0185), позволяющая локальному пользователю добиться получения прав root в системе. Выявивший проблему исследователь опубликовал демонстрацию работы эксплоита, позволяющего выполнить код с правами root в Ubuntu 20.04 в конфигурации по умолчанию. Код эксплоита планируется разместить на GitHub в течение недели, после того как дистрибутивы выпустят обновление с исправлением уязвимости...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=56556

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

Оглавление

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

1. Сообщение от Аноним (1), 21-Янв-22, 11:06   +2 +/
Дней с прошлой обнаруженной уязвимости в user namespaces: 0.

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

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #3, #5, #17

2. Сообщение от Аноним (2), 21-Янв-22, 11:08   –3 +/
Вот к чему приводит уход от полноценной виртуализации  в сторону контейнеров. eBPF и user_namespaces просто клад для злодеев. Раньше дыры, которые мог эксплуатировать админ, даже дырами не считали, а сейчас потроха ядра выставлены всем без разбора.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #4, #7, #76

3. Сообщение от Аноним (1), 21-Янв-22, 11:08   –2 +/
Альтернативой будет являться суидный бинарник запускающий программу от рута и это куда хуже.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #10, #109

4. Сообщение от Аноним (-), 21-Янв-22, 11:13   +3 +/
Просто неймспейсы надо было брать ровно как в девятом плане. И заменять ведро на этот самый план.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

5. Сообщение от Аноним (5), 21-Янв-22, 11:14   +1 +/
Пора разделять user namespaces на привилегированные и нет, для песочниц будет идеальным если не давать больше прав, чем уже есть.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #13, #59

6. Сообщение от Аноним (6), 21-Янв-22, 11:17   +16 +/
Ахаха!
Нет, let me laugh even harder. Ахахахахаха!

Почти 3 года прожило получение рута в самой популярной серверной системе, причем в некоторых "в конфигурации по умолчанию". Потому что лучшие погромисты человечества не разобрали как 3 числа повычитать друг из друга. Это вам не произвольные каталоги в расте удалять, это другое))

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #8, #20, #156

7. Сообщение от Аноним (7), 21-Янв-22, 11:21   +/
> Вот к чему приводит уход от полноценной виртуализации  в сторону контейнеров.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #9

8. Сообщение от Аноним (52), 21-Янв-22, 11:23   +1 +/
Вот поэтому только JavaScript. Головняка меньше. А за безопасный и производительный код уже давно не платят, платят за "фичастый"
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #15, #19, #21, #39

9. Сообщение от Аноним (9), 21-Янв-22, 11:24   +/
И чем так песочницам для вкладок браузера необходим _user_ namespace?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7

10. Сообщение от . (?), 21-Янв-22, 11:41   +6 +/
Да, ведь макаки не умеют сбросить привиллегии правильно. Это ж книжку надо читать, 84го года издания,а где они ее найдут, гугль ведь не проиндексировал.

Поэтому вместо юникс технологий будем использовать "API Filesystem Context" и прочую бредятину, а потом предоставлять туда доступ от рута но как бы не совсем от рута, чтобы потом в очередной раз изумляться дырам на ровном месте.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #11, #110

11. Сообщение от Аноним (1), 21-Янв-22, 11:45   –2 +/
Для начала ядро просто изолирует процесс и дело не в сбросить права. Ядро следит за наличием/отсутствием доступа на определённые операции у процесса и не сам процесс пытается изолировать себя.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10 Ответы: #12, #111

12. Сообщение от . (?), 21-Янв-22, 11:49   +5 +/
> Для начала ядро просто изолирует процесс и дело не в сбросить права.

я же говорю, макаки вы...

"сбросить права" - это именно сказать ядру, что процесс выполнил уже все операции, которые требовали рутовых прав, и дальше их у него просто нет и возвращению до перезапуска не подлежат.
А не ядро следит за тем, сем, пятым, десятым - а если в такой вот позе - можно? А в такой? А в такой и вот такой? - Ой, не уследило, опять. Кто бы мог подумать и было ли ему - чем.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #14

13. Сообщение от . (?), 21-Янв-22, 11:51   +5 +/
> Пора разделять user namespaces на привилегированные и нет

да, а то багов что-то маловато пока.

Надо сделать все еще сложнее.

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

14. Сообщение от Аноним (1), 21-Янв-22, 11:52   –1 +/
Не* ну и потом, запускать каждую скаченную из интернета программу это так дальновидно… Какие рутовые права? Рут используется чтобы лишить запускаемый от имени пользователя процесс лишних прав и это проконтролировать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12 Ответы: #31, #130

15. Сообщение от . (?), 21-Янв-22, 11:52   +1 +/
> Вот поэтому только JavaScript. Головняка меньше.

дык вон - бают, что он небезопастный и его нельзя никак без user namespace запускать.

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

17. Сообщение от Аноним (17), 21-Янв-22, 12:01   +2 +/
а нормальный код писать не?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #33

19. Сообщение от Аноним (17), 21-Янв-22, 12:04   +7 +/
> только JavaScript. Головняка меньше.

сколько секунд прошло с последнего бекдора в npm?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #22, #40

20. Сообщение от Аноним (22), 21-Янв-22, 12:05   –6 +/
Раст в продакшен билде тоже не проверяет переполнение целочисленной переменной. А квалификация раст программистов даже не позволит им понять что нужно сделать с тремя переменными и что из чего надо вычесть или сложить.  
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #23, #28, #65, #183

21. Сообщение от Аноним (21), 21-Янв-22, 12:07   +2 +/
У тех, кто пишет код не думая -- в любом языке головняка нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8

22. Сообщение от Аноним (22), 21-Янв-22, 12:07   –3 +/
Больше чем с появление бекдора в crates. В crates бекдоры к слову даже не пытается вычищать так как найти его в коде слишком сложно для обычного хрустика.  
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19

23. Сообщение от Аноним (17), 21-Янв-22, 12:09   –3 +/
> А квалификация раст программистов даже не позволит им понять что нужно сделать с тремя переменными и что из чего надо вычесть или сложить.  

изи: устанавливаешь пакетным менеджером в чистую функцию пару замыканий, future-ов, промисов, лямб, кортежей с туплами, ещё скобочек побольше туда устанавливаешь и асинхронных потоков, и чтобы всё соглассно 15 паттернам было, собираешь и, если место не закончилось на диске, смотришь, чё получилось, а потом дальше проектируешь, меняешь местами, пока похоже на правду не станет

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #27, #49

27. Сообщение от Аноним (17), 21-Янв-22, 12:18   +4 +/
естесственно, не забыть в жире тикет завести по аджайлу и по скраму, тестами покрыть на 100%, поревьювить, потом в CI/CI в докере на кубернетсах и деплой, а потом только запускать можно на макбуке через appimage в контейнере.

пока всё это собирается, можно вырастить себе грин органик веганские без холестерина и ГМО фрукты и овощи в гроубоксе, наделать много смузи и выпить.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #44

28. Сообщение от Аноним (28), 21-Янв-22, 12:20   +9 +/
> А квалификация раст программистов даже не позволит им понять что нужно сделать с тремя переменными ...

Как смешно ты извиваешься :)

А факт в том что это С программисты не справились с чиселками. Да не абы какие, а допущенные к ядру.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #32, #50

29. Сообщение от Аноним (29), 21-Янв-22, 12:21   –2 +/
Кто бы что ни говорил, Linux так и остаётся уязвимым, а *BSD островком безопасности и здравомыслия.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #34

31. Сообщение от . (?), 21-Янв-22, 12:25   +5 +/
Так ведь безопастно же ж запускать! Сам Бредон Уйк мамой клялся что жопоскрипт не будет, не будет, не будет уметь ничего поменять в вашей системе!
Он, кстати, в принципе, по сей день не особо может - зато может поменять в браузере, содержимое которого для вас часто ценнее всей вашей системы - ведь все ваши данные и денежки уютно хранятся в облачках. А обеспечить изоляцию двух соседних вкладок разработчики браузеров ну никак не могут - они ж хлебушки. За них это должна делать операционная система с нескучными апи!

Ой, в результате рут. Т.е. теперь поимели не браузер, и даже не локального юзера (который мог бы быть и изолированным от основного при большой паранойе-то), а всю систему. Так держать!


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #35, #107

32. Сообщение от Аноним (6), 21-Янв-22, 12:28   +10 +/
Не только, это же еще прошло кучу ревью, одобрено и вмерджено ментейнером.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28

33. Сообщение от . (?), 21-Янв-22, 12:28   +5 +/
> а нормальный код писать не?

Ну не, чувак, это ты чего-то лишку хватил. Некогда его писать, и некому (те кто могут - в рабы к гуглю не пойдут). Давай лучше CoC напишем.

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

34. Сообщение от Аноним (17), 21-Янв-22, 12:31   +1 +/
> а *BSD островком безопасности и здравомыслия

неуловимый *Джо одобряэ

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #53

35. Сообщение от Аноним (1), 21-Янв-22, 12:34   +3 +/
Но, кстати, насколько я знаю, если в неймспейсе у тебя рута нет,то ты его в неймспейсе уже никак не получишь. Права только в одну сторону меняются и 1 раз. По этой причине прошлые уязвимости неймспеймов были не совсем чтобы страшные.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #38, #54

38. Сообщение от . (?), 21-Янв-22, 12:46   +1 +/
Ты не пробовал хотя бы читать ссылки?
Вся идея "user namespace", что рут не нужен для  "unshare(CLONE_NEWNS|CLONE_NEWUSER)"
И херак - ты в нем с CAP_SYSADMIN.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35 Ответы: #45

39. Сообщение от OpenEcho (?), 21-Янв-22, 12:46   +/
Советую почитай на досуге про чудеса в ЖС:

https://github.com/denysdovhan/wtfjs

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #42

40. Сообщение от Аноним (52), 21-Янв-22, 12:48   –4 +/
И сколько? Не помню ни одного на памяти.

Ссылку можно? А обновление пакетов - это не backdoor.

Проблема зависимостей и их безопасности в npm сделана лучше чем где-либо ещё.

1. Подменить опубликованный пакет не можешь.
2. Удалить через 24 часа после публикации тоже.
3. Все зависимости проверяются по хешу.
4. Строится полное дерево 🌲 зависимостей (зависимости зависимостей и т.д.)
5. Если работает - у тебя вообще ничего поломаться не может.

Версии надо указывать "=1.0.0" и всё, надёжно как швейцарские часы.

Где-то сделали лучше? В C++? Python? Ну-ка покажи.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #113, #134

41. Сообщение от Аноним (41), 21-Янв-22, 12:49   +2 +/
> "if (len > PAGE_SIZE - 2 - size)",

KEKW

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

42. Сообщение от Аноним (52), 21-Янв-22, 12:50   –3 +/
Под JavaScript я имею ввиду TypeScript. На чистом JS уже давно никто не пишет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #39 Ответы: #46, #67

44. Сообщение от Аноним (17), 21-Янв-22, 12:51   +/
.. состариться и умереть
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27 Ответы: #81

45. Сообщение от Аноним (1), 21-Янв-22, 12:53   +/
Неа, только если от рута или с cap_sysadmin выполнишь. Это будет виртуальный рут (вне неймспейса дополнительных прав не появится). Если админских прав изначально не было, в неймспейсе их тоже нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38 Ответы: #66

46. Сообщение от Аноним (17), 21-Янв-22, 12:56   +6 +/
да вы все на одно лицо
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #42

49. Сообщение от Аноним (49), 21-Янв-22, 12:58   –4 +/
Ты вот даже сам не понимаешь что пишешь бред. Одним словом типичный хрустик над которым тут все ржут.  
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #78, #135

50. Сообщение от Аноним (49), 21-Янв-22, 13:00   –3 +/
Просто твоя картина мира не позволяет тебе понять что раст этому никак не поможет.  
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28 Ответы: #55, #94

52. Сообщение от Аноним (52), 21-Янв-22, 13:00   –4 +/
Я лично видел как это делают на курсе по вирусам / взлому. Правят бинарники, перепрыгивают на свой участок кода в PE под Windows для обхода проверок лицензий.

Ты не языком мели, покажи почему это нельзя сделать.

На, ознакамливайся для общего развития https://stackoverflow.com/questions/14921735/write-a-jump-co...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #107 Ответы: #91, #101

53. Сообщение от Аноним (29), 21-Янв-22, 13:11   +/
Настолько неуловимый, что Netflix и Whatsapp до сих пор не взломали.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #34 Ответы: #58, #63, #136

54. Сообщение от YetAnotherOnanym (ok), 21-Янв-22, 13:13   +1 +/
> если в неймспейсе у тебя рута нет, то ты его в неймспейсе уже никак не получишь

А новость о чём?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35 Ответы: #60

55. Сообщение от Аноним (28), 21-Янв-22, 13:13   +4 +/
>Просто твоя картина мира не позволяет тебе понять что раст этому никак не поможет.  

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

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

56. Сообщение от кек (?), 21-Янв-22, 13:13   +1 +/
Два года не обновлял ядро, не выдержал, обновил, теперь система жрёт на 100mb больше, идите вы на фиг со своими обновлениями и локальными уязвимостями.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #69, #90, #145

57. Сообщение от freecoderemail (ok), 21-Янв-22, 13:17   +5 +/
А где же были все те супер-квалифицированные Си-программисты, которые не допускают детских ошибок, когда писался и ревьювился этот код?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #62, #64, #68, #72, #89, #127

58. Сообщение от Аноним (1), 21-Янв-22, 13:18   +/
Смотря для чего они там используются. Вероятно, для чего-то весьма узкоспециализированного (по примеру juniper) и не выглядывают тем местами, где их можно взломать. Про всосап я бы не был так уверен, сколько их раз там уже взламывали? Кроме того, компании вполне могут и не раскрывать информацию о взломах. Помнится плойку без проблем поимели текстовой страничкой в браузере (без скриптов), и это при том, что плойка даже не пк и обложена аппаратными зондами. Было бы желание.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #53

59. Сообщение от YetAnotherOnanym (ok), 21-Янв-22, 13:18   +/
> не давать больше прав, чем уже есть

А они сами возьмут.

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

60. Сообщение от Аноним (1), 21-Янв-22, 13:20   –1 +/
Новость о уязвимости в контейнерах, запускаемых с правами админа, и зачем-то предлагают отключать неймспейсы. Ндя.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #54 Ответы: #70

62. Сообщение от Аноним (63), 21-Янв-22, 13:25   –3 +/
В твоих влажных мечтах идеальных программистов не бывает и идеальных языков типа твоего обосраста тоже не существует.  Но ты продолжай плясать с бубном вокруг своего идола сраста.  
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57

63. Сообщение от Аноним (63), 21-Янв-22, 13:26   +/
Нетфликс отказался от Фряхи проснись ты обрастался. Тем более они его использовали только на кеширующих серверах, которые стоят на стороне провайдера.  
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #53 Ответы: #102

64. Сообщение от YetAnotherOnanym (ok), 21-Янв-22, 13:29   +3 +/
От голода поумирали - не выдержали конкуренции с молодой порослью, которая хоп-хоп и в продакшон.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57

65. Сообщение от Аноним (6), 21-Янв-22, 13:34   +2 +/
Да, но ты же коммитил код, без проверки в дебаге? Правда ведь?

И получил бы:
thread 'main' panicked at 'attempt to subtract with overflow', src/main.rs:6:14
https://play.rust-lang.org/?version=stable&mode=debug&editio...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #73

66. Сообщение от . (?), 21-Янв-22, 13:57   +2 +/
бть... НЕТ, это _user_ namespace. Не нужен для этого вызова рут.
Да, он будет - виртуальный, внутри нового ns где ничего кроме твоего же и нет. Опа - и через дырку в vfs он становится общесистемным. Вот так сюрприз.

А если это выключить - то опаньки, Браузер паламаитца.
На одном стуле - пики точены,а на другом еще похуже ассортимент.

Я ж говорю - уровень впопеннета...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #45 Ответы: #75

67. Сообщение от OpenEcho (?), 21-Янв-22, 13:57   +3 +/
Ну да, здесь все телепаты...
"Подразумеваю TypeScript, но пишу JavaScript"

ну давай, выполни ка на "своем TypeScript":
> parseInt("Infinity", 19);
> parseInt("Infinity", 24);

Ты хоть разницу то знаешь между ними, писатель... ?
Покажи как мне хоть один браузер, нативно понимающий TypeScript или ту же ноду без "спец" приблуды

> На чистом JS уже давно никто не пишет.

Да ну ?!!! Прям таки все на tsc и dino строчат ? От куда вы беретесь то такие???

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #42 Ответы: #77

68. Сообщение от Аноним (28), 21-Янв-22, 14:00   +9 +/
>А где же были все те супер-квалифицированные Си-программисты,

доказывали растовикам что те макаки, и нафига им помощь от компилятора ... :)

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

69. Сообщение от Rev (?), 21-Янв-22, 14:01   +5 +/
Так это как раз и добавилась тысяча проверок на выходы за границы массивов и т.п.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #56

70. Сообщение от . (?), 21-Янв-22, 14:08   +1 +/
> Монстры "всё в одном, включая апи 50-летней давности но стильные и молодёжные", вроде SELinux'ов

ну вот это ты зря - это как раз не модное и не молодежное, это надежная схема распределения привиллегий, причем опирающаяся на уже существовавшие в ядре механизмы. Но у нее есть один недостаток, ага: юникс-софт с ней оказался напрочь несовместим. А другой не написали, все как-то было знаете, недосуг.
То есть в mandate реализации оно неживое чуть более чем совсем. А в режиме ан@льного огораживания (targeted) феерически бесполезна и никогда не угадаешь что еще сломается. apparmor это ровно то же самое, но только изначально "targeted" - от неосиляторов для неосиляторов.

Но оно хотя бы НОВЫХ дыр не образует, в отличии от модных "user ns". И отключаемо без катастрофических последствий, если уж совсем никак не настроить правильно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #60 Ответы: #86

71. Сообщение от . (?), 21-Янв-22, 14:09   +2 +/
Мне кажется все еще хужее, и это не школота, а уже цельный тимлид. С опытом чтения статей на хабре без попыток понять что на самом деле там написано.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #107 Ответы: #87

72. Сообщение от Аноним (72), 21-Янв-22, 14:11   +/
> А где же были все те супер-квалифицированные Си-программисты

код для легаси всё равно скоро выкинут так что я не проверял. С какой целью интресуешься, денег хочешь заплатить ?

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

73. Сообщение от . (?), 21-Янв-22, 14:15   +1 +/
$ gcc -Wall -Wextra -pedantic ./main.c
./main.c: In function ‘main’:
./main.c:9:11: warning: comparison of integer expressions of different signedness: ‘unsigned int’ and ‘int’ [-Wsign-compare]
    9 |   if (len > 4096 - 2 - 4095) {
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #65 Ответы: #74, #80, #83, #85

74. Сообщение от . (?), 21-Янв-22, 14:18   +/
это я к слову, ничего не имею ввиду конкретно в этой ветке.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73

75. Сообщение от Аноним (1), 21-Янв-22, 14:23   +/
Рут не юзер? Ещё какой юзер. Ты можешь зайти рутом в неймспейсе только при наличии админских прав (выставленные права суид или сисадмин у файла), далее ты можешь сбросить права в нейпспейсе. При этом система на хосте будет воспринимать все действия от имени пользователя и предоставлять изолированного админа, откуда и сбегают до хоста. Если же прав нет и не было (а для user-ns они не нужны), прав админа из ниоткуда не появится. Скажем даже если ты попробуешь прикинуться рутом, ты будешь рутом, но ядро тебя обламает. Я только что проверил, unshare -r setcap cap_sys_admin+ep выставляет права на файл, а unshare -c setcap cap_sys_admin+ep ожидаемо обламывается и ничего ты с ним не сделаешь. Зачем кто-то будет мапить себе рута в неймспейсе, когда целью стоит изоляция песочницы? Хотя там несколько видов изоляции. Скажем при изоляции сети может быть необходимо поднять локалку и тут проверяет права на хосте. Придётся сначала делать файл админом опять же и перезапускать. Если порезать setcap в неймспейсе, то такой уязвимости и не будет. В случае с песочницей браузера, мапиться в неё рутом выглядит контрпродуктивно, именно эти случаи и обсуждаются когда говорят об уязвимостях в user_namespace.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #82

76. Сообщение от Аноньимъ (ok), 21-Янв-22, 14:29   +/
В FreeBSD например каких-то особых проблем с этим нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #116

77. Сообщение от Аноним (52), 21-Янв-22, 14:32   –5 +/
GitHub хоть иногда открывай.

Практически все топовые проекты переписаны на TypeScript. А твоё говно мамонта никого не интересует.

Я такой говнокод как ты не пишу.

Я конечно, могу разобрать это ... но зачем? Открой спецификацию, там всё написано. Infinity конвертируется в "Inifinity", а дальше парсится как обычная 19-ричная строка.

Но это только говнокодеры экстра класса пишут.

И ... в TypeScript "Argument of type number is not assignable to parameter of type string".

Надо быть лютым идиотом чтобы такое пропустить. С тобой всё ясно. Следующий.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67 Ответы: #79, #104

78. Сообщение от Аноним (17), 21-Янв-22, 14:34   +/
> Ты вот даже сам не понимаешь что пишешь бред

прости, я очень глупый

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

79. Сообщение от Аноним (52), 21-Янв-22, 14:34   +/
Ах,ты ещё и не Infinity,а строку парсишь? Сочувствую. Тут даже TypeScript не поможет. Хоть он пытался.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #77 Ответы: #105

80. Сообщение от . (?), 21-Янв-22, 14:38   +/
а вообще, не правильно. я щас посмотрел, там и len (size_t) и справа - size (unsigned int). странно конечно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73

81. Сообщение от Аноним (17), 21-Янв-22, 14:40   +2 +/
... у бирюзовых вотерфлоу, в один день со своим тимлидом ...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44

82. Сообщение от Аноним (1), 21-Янв-22, 14:43   +/
Чёт длинно, и мало по сути вышло. Почитал man user_namespaces, там написано более понятно:

>When a nonuser namespace is created, it is owned by the user namespace in which the creating process was a member at the time of the creation of the namespace.  Privileged operations on resources governed by the nonuser namespace require that the process has the necessary capabilities in the user namespace that owns the nonuser namespace.

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

83. Сообщение от Аноним (6), 21-Янв-22, 14:43   +/
оу, оу, с константами это элементарно
сделай чтобы они все (кроме 4096) были вычисляемые не-inline unsigned int
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73 Ответы: #180

84. Сообщение от Mike Lee (?), 21-Янв-22, 14:44   +/
> Исправление пока недоступно в Arch Linux, Gentoo, SUSE и openSUSE

в смысле недоступно? вчера еще завезли
```
*  sys-kernel/gentoo-sources
      Latest version available: 5.15.16
      Latest version installed: 5.15.16
      Size of files: 119 742 KiB
      Homepage:      https://dev.gentoo.org/~mpagano/genpatches
      Description:   Full sources including the Gentoo patchset for the 5.15 kernel tree
      License:       GPL-2
```

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

85. Сообщение от Аноним (6), 21-Янв-22, 14:49   +/
потому что с константами они валится в ошибкой еще на этапе компиляции даже в релизе
error: this arithmetic operation will overflow

https://play.rust-lang.org/?version=stable&mode=release&edit...

и раз уже кодом меряемся - приводи код на Си, не только выхлоп
(напр. тут https://rextester.com/l/c_online_compiler_gcc)

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

86. Сообщение от сипипи (?), 21-Янв-22, 15:04   –1 +/
>> Монстры "всё в одном, включая апи 50-летней давности но стильные и молодёжные", вроде SELinux'ов
> ну вот это ты зря - это как раз не модное и
> не молодежное, это надежная схема распределения привиллегий, причем опирающаяся на уже
> существовавшие в ядре механизмы.

Ну да, только их там пучок, и о каком-то "подходе к решению нынешних проблем", который бы выгодно смотрелся на фоне апи 50-летней давности говорить не приходится. Одно "устаревшее", другое "переусложненное". Они канеш помогают на своём месте, но только это скучно. Безопасность, где люди работают -- это скучно. Вот раст -- оно и не устаревшее, и не переусложненное, и нескучное!

> Но у нее есть один недостаток, ага:
> юникс-софт с ней оказался напрочь несовместим. А другой не написали, все
> как-то было знаете, недосуг.
> То есть в mandate реализации оно неживое чуть более чем совсем. А
> в режиме ан@льного огораживания (targeted) феерически бесполезна и никогда не угадаешь
> что еще сломается. apparmor это ровно то же самое, но только
> изначально "targeted" - от неосиляторов для неосиляторов.

С ними случился типичный компромис между удобством и безопасностью. Все выбирают удобство, и растамани sos-нут и в этой битве бобра с козлом. Хз сколько продлится этот карго-культ, но надеюсь подольше. Люблю когда разочарование входит по капле.

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

87. Сообщение от john_erohin (?), 21-Янв-22, 15:26   +1 +/
> С опытом чтения статей на хабре без попыток понять что на самом деле там написано.

всегда так делаю.

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

88. Сообщение от Аноним (88), 21-Янв-22, 15:27   –1 +/
> позволяющая локальному пользователю добиться получения прав root в системе.
> Для эксплуатации уязвимости требуется наличие прав CAP_SYS_ADMIN, т.е. полномочий администратора.

Тоесть надо рута!

Или в быдлодистрах CAP используют не для ограничевания прав  root, а для повышения прав юзверей?

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

89. Сообщение от BorichL (ok), 21-Янв-22, 15:28   +/
Они писали компилятор Раста со всеми теми детскими ошибками, которые им доступны в С.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57 Ответы: #92

90. Сообщение от john_erohin (?), 21-Янв-22, 15:32   +/
> теперь система жрёт на 100mb больше

1) на безопастность не жалко.
2) вырезать из ядра ненужное не пробовали ? так попробуйте.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #56 Ответы: #97

91. Сообщение от сипипи (?), 21-Янв-22, 15:36   +4 +/
> Я лично видел как это делают на курсе по вирусам / взлому.
> Правят бинарники, перепрыгивают на свой участок кода в PE под Windows
> для обхода проверок лицензий.
> Ты не языком мели, покажи почему это нельзя сделать.
> На, ознакамливайся для общего развития https://stackoverflow.com/questions/14921735/write-a-jump-co...

курсы по вирусам :-D жжёшь.


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52 Ответы: #115

92. Сообщение от freecoderemail (ok), 21-Янв-22, 15:48   –2 +/
Компилятор Rust изначально писался на OCaml.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #89 Ответы: #95, #98, #154

93. Сообщение от Аноним (95), 21-Янв-22, 15:49   +/
В комментариях царит хруст французской булки.  
Ответить | Правка | Наверх | Cообщить модератору

94. Сообщение от Ordu (ok), 21-Янв-22, 15:53   +2 +/
Поможет. Если ты заглянешь в код, чтобы для большей реалистичности понимать контекст, то там классический C'шный код парсинга строки, и куча всяких memcpy, чтобы всякие строки посохранять. В расте никто не будет это делать через адресную арифметику, есть же &str. Ну или учитывая контекст ядра, где utf8 в параметрах не используется, то скорее будет происходить работа с &[u8], то есть с массивами байт. А это значит, что ежели ты не справишься вычесть три числа, то ты получишь не privilege escalation, а kernel panic.

Если же тебе интересно как справиться вычесть, чтобы и kernel panic не было бы, то примерно так:

if let Some(remaining) = (PAGE_SIZE-2).checked_sub(size) {
    if len > remaining {
        // возвращаем ошибку
    }
} else {
    // возвращаем ошибку
}

PAGE_SIZE-2 можно не проверять, ибо константы известные на этапе компиляции, они там и будут генерить ошибки, если что.

Довольно уродливо, поскольку дважды приходится ошибку возвращать... И тут есть две опции -- либо чесать голову, как объединить две ветви в одну, и скорее всего закончить тем же, что в патче-исправлении:

if size + len + 2 > PAGE_SIZE

либо оставить как есть: оно тоже будет работать, просто вместо одной рантайм-проверки там будет две. Но компилятор не может знать, что size+len+2 не переполнится наверх, и поэтому не может воспользоваться этим фактом.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #50 Ответы: #124

95. Сообщение от Аноним (95), 21-Янв-22, 15:57   –1 +/
И что это дало. Ты в поиск по понятным причинам не умеешь но я тебе дам ссылку https://www.opennet.ru/opennews/art.shtml?num=56551 «Уязвимость в стандартной библиотеке языка Rust» с 1.0.0 до 1.58.0. Ор
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #92 Ответы: #96

96. Сообщение от freecoderemail (ok), 21-Янв-22, 16:02   –1 +/
Потрудись прочитать ветку обсуждения, в которую ты отвечаешь.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #95 Ответы: #138

97. Сообщение от кек (?), 21-Янв-22, 16:06   +1 +/
> на безопастность не жалко

У меня десктоп, кому я нужен.

> вырезать из ядра ненужное не пробовали ? так попробуйте

Мне в убунту ядро компилировать?)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #90 Ответы: #126

98. Сообщение от BorichL (ok), 21-Янв-22, 16:09   +1 +/
> Компилятор Rust изначально писался на OCaml.

Прекрасно, знаком математический термин "транзитивность"?

https://github.com/ocaml/ocaml

OCaml 83.3%
C 10.7%
Shell 2.6%
Assembly 1.0%
Makefile 0.9%
M4 0.5%
Other 1.0%

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #92 Ответы: #99

99. Сообщение от freecoderemail (ok), 21-Янв-22, 16:17   +/
Правильно я понял вашу мысль, что лучшие программисты на Си ушли транзитивно писать Rust, вместо того, чтобы писать и ревьювить ядро? То есть, они сразу решили сбежать из Си?

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

100. Сообщение от passerby (??), 21-Янв-22, 16:29   –2 +/
А почему вы упорно пишете "эксплоит" вместо "эксплойт"? я пробовал править, но правку не принимают. Поэтому спрашиваю здесь.
Если что, вот на википедии пишут "эксплойт". Какими вы словарями пользуетесь, что у вас "эксплоит" получается?
https://ru.wikipedia.org/wiki/Эксплойт
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #114, #149, #163

101. Сообщение от Аноним (-), 21-Янв-22, 16:33   +3 +/
> Я лично видел как это делают на курсе по вирусам / взлому.
> Правят бинарники, перепрыгивают на свой участок кода в PE под Windows для обхода проверок лицензий.

Круто, чо. Учитывая, что "править бинарники" для несовсем тривиальных программ еще 15 лет назад уже
приходилось в памяти, с помощью загрузчика и code injection, перенаправляя на свой код с вызовов WinAPI _в вендовых DLL_, потому что проверка целостности бинаря была в любом захудалом "защитнике", а продвинутые контроллировали еще и целостность в рантайме ...
> Ты не языком мели, покажи почему это нельзя сделать.

Ты головой подумай - поправить рутовый бинарник ты можешь только из под рута. Ну или загрузив свою ОС/воткнув носитель с данными в другой комп.


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

102. Сообщение от Аноним (-), 21-Янв-22, 16:40   +/
> Нетфликс отказался от Фряхи проснись ты обрастался.

А точно он? А в Netflix об этом знают? Или опять "инсайд" экслюзив от опеннетчиков?
https://cgit.freebsd.org/src/commit/?id=aac52f94ea55e5b16a1b...
> author    Randall Stewart <rrs@FreeBSD.org>    2022-01-18 12:41:18 +0000
> Sponsored by: Netflix Inc.

https://cgit.freebsd.org/src/commit/?id=272e4f538467f41eebf6...
> author    Warner Losh <imp@FreeBSD.org>    2022-01-13 22:22:13 +0000
> cam: Fix wiring fence post error
> Sponsored by:        Netflix

https://cgit.freebsd.org/src/commit/?id=4762aa57ad17b67b4657...
> author    Warner Losh <imp@FreeBSD.org>    2022-01-15 00:21:09 +0000
> ata_xpt: Rename probe_softc to aprobe_softc
> Sponsored by:        Netflix

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

103. Сообщение от Аноним (103), 21-Янв-22, 16:41   +1 +/
Миллионы глаз опять проглядели
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #106, #146

104. Сообщение от OpenEcho (?), 21-Янв-22, 16:49   +1 +/
> Практически все топовые проекты переписаны на TypeScript.

Ну давай, отвечайся за слова тогда, линки в студию

> А твоё говно мамонта никого не интересует.

Эт не моё говно и я не мамонт :)

> Я такой говнокод как ты не пишу.

А где это ты мой код здесь увидел???

> Я конечно, могу разобрать это ... но зачем?

Ну например чтоб смешным не казаться и для образования полезно

> Infinity конвертируется в "Inifinity", а дальше парсится как обычная 19-ричная строка.

Какой интересный результат "парсинга" получается = 18 и заметь, на чисто кровном TypeScript
А я то думал что бесконечость чуток больше чем 18, т.к. задача parseInt именно в этом и состоит, распарсить строкы согласно заданомы радиксу

> Но это только говнокодеры экстра класса пишут.

С этим согласен, так "распарсить" надо еще очень потрудиться


> И ... в TypeScript "Argument of type number is not assignable to parameter of type string".

А теперь будь любезен и сообщи народу, от какой такой чудо "TypeScript" программы/компилятора/интерпритатора такое получил ? Ты сначала документацией пользоваться научись:

Syntax: parseInt(string), parseInt(string, radix)

Так что пример правильный ;)

> С тобой всё ясно. Следующий.

С тобой тоже !

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #77 Ответы: #120, #121

105. Сообщение от OpenEcho (?), 21-Янв-22, 16:52   +1 +/
> Ах,ты ещё и не Infinity,а строку парсишь? Сочувствую. Тут даже TypeScript не
> поможет. Хоть он пытался.

Ну попробуй без кавычек :)))

СпециалистС однако смотрю !

Ну спасибо, посмешил !!!


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #79 Ответы: #117

106. Сообщение от ИмяХ (?), 21-Янв-22, 16:54   +/
синдром Дженовезе
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #103 Ответы: #108

107. Сообщение от d (??), 21-Янв-22, 16:56   +/
> безопастно

Ыксперта можно заметить сразу.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #52, #71

108. Сообщение от john_erohin (?), 21-Янв-22, 17:09   +/
> синдром Дженовезе

синдром невоспроизводимых резульатов в американской социальной психологии.

tjournal.ru/stories/80800-trashsmash-rasskazal-pro-ubiystvo-kitti-dzhenoveze-skoree-vsego-eto-feyk

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

109. Сообщение от псевдонимус (?), 21-Янв-22, 17:22   +/
Это совершенно нормально.

И всем лучше иллюзорной защыты.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #152

110. Сообщение от псевдонимус (?), 21-Янв-22, 17:23   +/
Все правильно написал.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

111. Сообщение от псевдонимус (?), 21-Янв-22, 17:26   +/
>не сам процесс пытается изолировать себя.

В этом-то и проблема.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #153

113. Сообщение от псевдонимус (?), 21-Янв-22, 17:41   +2 +/
Объясни пожалуйста, в чем смысл писать слово "дерево" и рядом ставить картинку этого самого дерева? Не проще что-нибудь одно оставить, либо слово,либо эмодзю? Правда интересно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40 Ответы: #125

114. Сообщение от псевдонимус (?), 21-Янв-22, 17:45   +/
Нормальным людям пох. АндроЙд, линуксоЙд, эксплоЙт. Хочешь поправить, пиши в скобках транскрипцию слова. Но один хрен ПарИс на русском будет Париж.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #100

115. Сообщение от Likern (?), 21-Янв-22, 18:02   +/
А ты и не знал, что в институтах курсы? Ясненько.

Курс в МИФИ, факультет "Б" "Информационная безопасность", курс (доп. факультатив) по взлому вроде.
Да, и взлом, и вирусы и много чего ещё в институтах проходят.

Не благодари.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #91 Ответы: #132

116. Сообщение от Ананас (?), 21-Янв-22, 18:13   –1 +/
Или мало юзеров чтобы их выявить.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #76 Ответы: #118

117. Сообщение от Likern (?), 21-Янв-22, 18:33   +/
Отвечаю.

const one = parseInt("i", 19)
const two = parseInt("Infini", 24)

Больше так не говнокодь. Надеюсь тебе по рукам от Seniour-a нормально прилетает.


Так я и попробовал. И стандарт посмотрел, а ты даже и не понял этого.

parseInt("i", 19) === parseInt(Infinity, 19)
parseInt("Infini", 24) === parseInt(Infinity, 24)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #105 Ответы: #158

118. Сообщение от Аноньимъ (ok), 21-Янв-22, 18:39   –1 +/
Есть там юзеров.
Просто сделано нормально.

В линуксе ИМХО слишком много дублирующих друг друга подсистем от левой пятки правой корпоративной ноги.

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

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

120. Сообщение от Likern (?), 21-Янв-22, 18:58   –2 +/
Ладно, я потыкаю в тебя стандартом, раз JavaScript не знаешь.

Открываем https://262.ecma-international.org/12.0/#sec-parseint-string...

1. 1. Let inputString be ? ToString(string)

Открываем ToString https://262.ecma-international.org/12.0/#sec-tostring

Принимает ЛЮБЫЕ аргументы, ествественно (должен знать любой джун).

В JavaScript переменные не имеют типов, какая строка, ты о чём?

Половина или 1/3 зависимостей моего проекта были переписаны на TypeScript.
Остальные активно хотят. Не хочет только FaceBook, ибо пилит Flow и у них всё на нём написано.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #104 Ответы: #122, #159

121. Сообщение от penetrator (?), 21-Янв-22, 19:02   +/
да что тут говорить JS - один из самых конченых языков, его используют потому что исторически так сложилось, очень жаль что этим языком не стала полноценная Java (я не Java разработчик, но этот выбор был бы понятен)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #104 Ответы: #123, #161

122. Сообщение от penetrator (?), 21-Янв-22, 19:04   +/
TS - очередной костыль, который продолжит агонию JS еще лет на 20, что идиотизм, но в жизни так часто бывает
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #120

123. Сообщение от Likern (?), 21-Янв-22, 19:10   +/
Он, конечно конченый. Я как это понял сразу на TypeScript пересел. Т.е. на чистом JS практически не писал.

Но (!) TypeScipt - это один из лучших языков программирования. Он сделан максимально правильно.

А я писал на C#, C, C++, Java, Scala, Bash, Python, JavaScript, TypeScript, Lua.

И если бы у меня был выбор любого ЯП - выбрал бы TypeScript. Только Scala ему конкурент.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #121 Ответы: #144

124. Сообщение от Аноним (-), 21-Янв-22, 19:16   +/
минусую - одно г-решение ты предлагаешь исправить ещё одним г-решением.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #94 Ответы: #155

125. Сообщение от Аноним (52), 21-Янв-22, 19:41   +/
Эмодзи для разнообразия. А слово для понимания.

Т.к. эти символы эмодзи можно интерпретировать по разному, поди угадай "дерево" это или "ёлка" или что там ещё.

Те эмодзи просто как мини-иконка красивая.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #113 Ответы: #128, #129

126. Сообщение от john_erohin (?), 21-Янв-22, 19:47   +/
> Мне в убунту ядро компилировать?)

да. ничего военного в этом нет.
как известно убунту репак дебиана, а в дебиане точно можно
пересобрать ядро и даже наложить дебиановские патчи (if any).
только инструкции на вики устарели слегка.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #97 Ответы: #137

127. Сообщение от Аноним (52), 21-Янв-22, 19:48   –1 +/
Они в соседней новости про Rust, пытаются написать Hello World на С без ошибок (1 строчка кода)

Пока не получается.

Один даже полез в стандарт С чтобы ткнуть меня носом.

Я конечно просил работу с ФС без состояния гонок, а не это. Но видимо Hello World оказался непосильной ношей.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57 Ответы: #140

128. Сообщение от Аноним (17), 21-Янв-22, 20:06   +2 +/
какой-ты милый и душевный, тебе бы на ruby писать
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #125

129. Сообщение от псевдонимус (?), 21-Янв-22, 20:23   –1 +/
Принято.

А если человек пишет "собака" и рядом нарисована собака? Это для чего?


Отвечу сам себе: выделиться, если больше выделиться нечем. Это примерно как писать лЕсЕнКоЙ. Или коверкать слова по собственновыдумманымправилам, как кащениты или вырожденцы с удаффком. Ничего вы не придумали. За вас придумали бумеры.эту еду, которую вы едите уже переварили и высrали пару раз. Она даже батхерт вызвать не может. Только уныние.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #125 Ответы: #148

130. Сообщение от Michael Shigorinemail (ok), 21-Янв-22, 20:30   –1 +/
> Ты совсем дурачок? Ты же и есть та самая необразованная макака. При том в худшем проявлении!

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

> Иди в школу, не позорься. Мамкин "хакирь".

Он -- знает, что говорит.

Вы -- брысь назад под мамкину юбку.

Будете хамить, "по айпи вычеслю" (tm).

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

132. Сообщение от Michael Shigorinemail (ok), 21-Янв-22, 20:38   +/
> А ты и не знал, что в институтах курсы? Ясненько.

Да тут за морскую милю видно дятла, который "лично видел" и ни хрена не разглядел.

Ну то есть даже моей ни разу не черношляпной недоквалификации такое видеть хватает.

"Бинари правят", my ass.

Он-то съест, да хто ж ему даст.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #115 Ответы: #133, #139

133. Сообщение от Аноним (52), 21-Янв-22, 20:45   +/
Забавно, что такие эксперды не в состоянии по существу ответить.

Ни на один вопрос технический. И опять.

Нельзя бинарник поправить? Или в Linux они с цифровой подписью и как-то защищены?

Я, конечно, говорю про любые бинарники.

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

134. Сообщение от Michael Shigorinemail (ok), 21-Янв-22, 20:45   –2 +/
> Проблема зависимостей и их безопасности в npm сделана лучше чем где-либо ещё.
> полное дерево 🌲

Интересная подпись.  Хотя если вдруг забыли проверить рекомендации на себе с годик так...

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

135. Сообщение от Michael Shigorinemail (ok), 21-Янв-22, 20:50   –1 +/
> Ты вот даже сам не понимаешь что пишешь бред.

Ой, не нашлось эмодзей для сарказма.  Моргающих таких, переливающихся...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #49 Ответы: #157

136. Сообщение от Michael Shigorinemail (ok), 21-Янв-22, 20:58   –4 +/
> Настолько неуловимый, что Netflix и Whatsapp до сих пор не взломали.

Дадас.

http://www.reuters.com/article/us-facebook-cyber-whatsapp-id...
http://securitytoday.com/blogs/reaction/2017/05/Cyber-Risk-L...

Болтун.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #53 Ответы: #181

137. Сообщение от Michael Shigorinemail (ok), 21-Янв-22, 20:59   –1 +/
> только инструкции на вики устарели слегка.

Так подновили бы в порядке шеф... эээ... деривативской помощи. :)

(подковырки подковырками, а в ваших же интересах)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #126 Ответы: #160

138. Сообщение от Michael Shigorinemail (ok), 21-Янв-22, 21:01   –1 +/
> Потрудись прочитать ветку обсуждения, в которую ты отвечаешь.

Да ему и тут Вас жаль, а теперь ещё и там будет!

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

139. Сообщение от Аноним (52), 21-Янв-22, 21:04   +/
Этот дурачок про безопасность не понимает. Но я объясню.

> Да, ведь макаки не умеют сбросить привиллегии правильно. Это ж книжку надо читать, 84го года издания,а где они ее найдут, гугль ведь не проиндексировал
> А не ядро следит за тем, сем, пятым, десятым - а если в такой вот позе - можно? А в такой? А в такой и вот такой? - Ой, не уследило, опять. Кто бы мог подумать и было ли ему - чем.
> я же говорю, макаки вы...
> "сбросить права" - это именно сказать ядру, что процесс выполнил уже все операции, которые требовали рутовых прав, и дальше их у него просто нет и возвращению до перезапуска не подлежат.

Объясняю местным дурачкам. Если приложение получило root - считай что у всего кода приложения есть root. Отдавай, не отдавай.

Что тут непонятного? При чем тут "запуск из под root-а" и suid? Что тут местным дурачкам непонятно?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #132 Ответы: #141

140. Сообщение от Michael Shigorinemail (ok), 21-Янв-22, 21:08   –1 +/
> Hello World на С без ошибок (1 строчка кода)

Занавес.

> Я конечно просил работу с ФС без состояния гонок

Вам знакомо значение слов "время" и "событие"?  Судя по попытке нахрапом влезть с таким же незнакомым словом "танзакция" в том обсуждении -- нет.

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

Проблемы виртуального мира приходят в него из реального -- и гонки тоже.  Хуже, когда проблемы мира виртуального (несуществующие мнение, деньги, конфликты) пытаются выбраться из виртуальности в реальность.

Мир Вам.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #127 Ответы: #185

141. Сообщение от Аноним (-), 21-Янв-22, 21:24   +/
> Объясняю местным дурачкам. Если приложение получило root - считай что у всего
> кода приложения есть root. Отдавай, не отдавай.

И откуда у приложения _вдруг_ появится рут, если его запускали не под рутом?

> Что тут непонятного? При чем тут "запуск из под root-а" и suid? Что тут местным дурачкам непонятно?

При этом:
>> Альтернативой будет являться суидный бинарник запускающий программу от рута и это куда хуже.

С чего и началась ветка.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #139 Ответы: #142

142. Сообщение от Likern (?), 21-Янв-22, 21:57   +1 +/
А это уже хороший вопрос, по существу.

Товарищ спорил с

> Ядро следит за наличием/отсутствием доступа на определённые операции у процесса и не сам процесс пытается изолировать себя

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

И выходит что ядро и не должно следить (он напрямую этого не говорил, но по его ответам напрашивается этот вывод, раз рукожопая макака).

Мой ответ именно на это.

Конечно сильно желательно сбрасывать, особенно когда он уже не нужен. Но это защитит только от выполнения недоверенного кода под рутом.

Но для обычного бинарника эту область можно всегда расширить.

Но root это, если честно, вообще неинтересно. Все мои данные под обычным пользователем, включая ssh ключи, вообще вся информация критичная.

И тут получается я запускаю ЛЮБОЙ код (даже случайно), и он сразу может свистнуть сразу ВСЁ, все
SSH ключи, зашифровать весь /home/user и т.д.

Алё, это не JavaScript обо*рался, это модель безопасности Linux обо*ралась. Кому вообще нужен этот root? Я спокойно переставлю всю систему.

Модель безопасности изменилась полностью, а Linux со своими uid, gid из прошлого века.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #141 Ответы: #143

143. Сообщение от Аноним (-), 21-Янв-22, 22:25   +/
> Мой ответ именно на это.
> Конечно сильно желательно сбрасывать, особенно когда он уже не нужен. Но это
> защитит только от выполнения недоверенного кода под рутом.
> Но для обычного бинарника эту область можно всегда расширить.

Нюанс в том, что стандартно установленные бинари лежат в /usr/* и доступны на запись только руту.

> Алё, это не JavaScript обо*рался, это модель безопасности Linux обо*ралась. Кому вообще
> нужен этот root? Я спокойно переставлю всю систему.
> Модель безопасности изменилась полностью, а Linux со своими uid, gid из прошлого века.

Да есть все это - Trusted Path Execution, EVE (extended verification что-то там), firejail, где как раз зарезан доступ к SSH ключам
https://github.com/ptoomey3/firejail/blob/master/etc/disable...
https://github.com/ptoomey3/firejail/blob/master/etc/disable...
blacklist ${HOME}/.ssh
tmpfs ${HOME}/.gnome2_private
blacklist ${HOME}/.gnome2/keyrings

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

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

144. Сообщение от penetrator (?), 21-Янв-22, 22:34   +/
> Он, конечно конченый. Я как это понял сразу на TypeScript пересел. Т.е.
> на чистом JS практически не писал.
> Но (!) TypeScipt - это один из лучших языков программирования. Он сделан
> максимально правильно.
> А я писал на C#, C, C++, Java, Scala, Bash, Python, JavaScript,
> TypeScript, Lua.
> И если бы у меня был выбор любого ЯП - выбрал бы
> TypeScript. Только Scala ему конкурент.

TS такой же конченый как и JS потому что это он и есть, накаченный стероидами JS, и решающий очень ограниченную часть проблем в нем. Если бы была полноценная возможность лабать на C# или Java нативно для браузеров, то ни TS ни тем более JS никогда бы не выстрелили.

А то, что ты писал на всех этих языках, не означает, что ты их всех хорошо знаешь и можешь максимально использовать их преимущества. Скорее всего ты просто с помощью TS заткнул набор своих потребностей максимально удобным для тебя способом, а не потому что получил в распоряжение добротный универсальный(!) инструмент, который тебе так нужен для полноценной качественной разработки. Дося - если не видно разницы... )))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #123 Ответы: #147, #162

145. Сообщение от Аноним (145), 21-Янв-22, 22:43   +/
Не один я это заметил. Когда-то чистый Debian ел около 32 Мб, затем 60+, а теперь 100+. Раньше в такой объём умещали всю ОС с WM. Пора на BSD уходить.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #56

146. Сообщение от Аноним (146), 21-Янв-22, 23:47   +/
Новость как раз о том что нашли
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #103

147. Сообщение от Аноним (52), 21-Янв-22, 23:52   +/
Уровень аргументации понятен
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #144 Ответы: #150

148. Сообщение от Аноним (-), 22-Янв-22, 00:10   +/
> даже батхерт вызвать не может

ORLY? Сам, между тем, три мусорных коммента породил, анон(17) еще два. И все из-за "веселой какахи", или что там за этим унылым квадратиком скрывается.

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

149. Сообщение от Аноним (149), 22-Янв-22, 00:15   +2 +/
По правилам русского языка правильно эксплоит и в обиходе всегда было эксплоит, вы же не говорите адройд? Относительно недавно в википедии кто-то полез везде форсить эксплойт, но до викисловаря он ещё не добрался :-)

https://ru.wiktionary.org/wiki/%D1%8D%D0%...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #100 Ответы: #151

150. Сообщение от penetrator (?), 22-Янв-22, 00:39   +/
> Уровень аргументации понятен

Я ничего не аргументировал... И если вдаваться вподробности это полотно будет на тысячи сообщений. Мне лично это неинтересно.

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

151. Сообщение от Аноним (1), 22-Янв-22, 08:29   –1 +/
Самое забавное, что правильно таки с й https://ru.wiktionary.org/wiki/эксплойт (качество статьи намного выше кстати) и в обиходе всегда было с й, даже в литературе всегда было с й, передёргивания не уместны. Но я согласен с тем, что педивикия не заслуживающий доверия источник. Однако, по моей ссылке хотя бы есть референс на словарь, что уже хоть что-то.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #149

152. Сообщение от Аноним (1), 22-Янв-22, 08:36   +/
Это реальная защита, ядро просто не позволит выполнить запрещённые операции при исполнении произвольного кода и не позволит получить права после изоляции.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #109

153. Сообщение от Аноним (1), 22-Янв-22, 08:59   +/
Процессу нельзя доверять, завтра в нём появится исполнение произвольного кода и привет. В случае изоляции вызовы просто не имеют доступа наружу и повысить привилегии никаких вариантов. Неймпспейсы намного интереснее, чем суид.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #111

154. Сообщение от Аноним (154), 22-Янв-22, 10:06   +1 +/
> Компилятор Rust изначально писался

он до сих пор писается

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #92 Ответы: #175

155. Сообщение от Ordu (ok), 22-Янв-22, 10:16   +/
> одно г-решение ты предлагаешь исправить ещё одним г-решением.

Не одним, а тремя.

Я предложил три (прописью: 3) решения. Первое, которое снижает остроту проблемы с privilege escalation до kernel panic, второе, которое позволяет избавиться и от kernel panic, не требуя прыгать через грабли C, в котором нет стандартного способа делать арифметику, отслеживая переполнения, и, наконец, третье ad hoc решение, которое повторяет актуальное исправление бага в ядре. Какое из этих трёх решений ты имеешь в виду?

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

156. Сообщение от Vasyan2 (ok), 22-Янв-22, 12:03   +/
Как раз нет.
> не активирован в Debian и RHEL (если не используются платформы контейнерной изоляции)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

157. Сообщение от Аноним (17), 22-Янв-22, 12:53   +1 +/
о, царь сарказма проснулся. сейчас нас всему научит
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #135

158. Сообщение от OpenEcho (?), 22-Янв-22, 15:10   +/
> Отвечаю.

А ты смешной, продолжай

> const one = parseInt("i", 19)
> const two = parseInt("Infini", 24)
> Больше так не говнокодь. Надеюсь тебе по рукам от Seniour-a нормально прилетает.

Вообще-то наоборот ;)


> Так я и попробовал. И стандарт посмотрел, а ты даже и не
> понял этого.

Ты забыл сказать, что стандарт ты смотришь JS-совский, а гонишь все за TypeScript

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #117 Ответы: #164

159. Сообщение от OpenEcho (?), 22-Янв-22, 15:40   +/
> Ладно, я потыкаю в тебя стандартом, раз JavaScript не знаешь.

Ты плохой троль. Совсем не жирный. Топишь за TypeScript, а сам хвостом крутишь возле ЖС

> Открываем https://262.ecma-international.org/12.0/#sec-parseint-string...

А линк то на доку по ЖС :) ты давай, как крутой TypeScript-щик линьчик на TypeScript плыз

> 1. 1. Let inputString be ? ToString(string)

Тю-тю-тю, стоп !
Твоя же ссылка: 19.2.5 parseInt ( string, radix )
Помогаю: string по англишу = строка

> Открываем ToString https://262.ecma-international.org/12.0/#sec-tostring
> Принимает ЛЮБЫЕ аргументы, ествественно (должен знать любой джун).

Слушай, джун, я смотрю у тебя с английским большие проблемы, так вот, задача parseInt заключается в том, чтобы принять строку символов, проанализировать и превратить в целое число с учетом радикса, ну или обломиться, но сообщив об этом, вместо того, чтобы перевести "бесконечность" в число 18

> В JavaScript переменные не имеют типов, какая строка, ты о чём?

Строка, эт все что в кавычках и по большинству parseInt справляется удачно выкорябывая из строк цифры, parseInt("015з",10); даст честно число 15 к примеру.

> Половина или 1/3 зависимостей моего проекта были переписаны на TypeScript.

Слушай, ты совсем заврался, то ты топишь, что как только увидел JS, так сразу же проигнорировал и стал писать только на ТайпСкрипте, то вдруг у тебя оказывается 2/3 еще осталось.

Ты гланое закусывать не забывай, а то твой гон становится не интересным

> Остальные активно хотят.

Ты так и не привел ни одной ссылки на гитхуб где ВСЕ на чистейшем TypeScript строчат
Ты так и не ответил, и не доказал, что все на гитхабе юзают plain tsc
И последнее, твой тролинг стал не интересным


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #120 Ответы: #165, #166

160. Сообщение от john_erohin (?), 22-Янв-22, 15:56   +/
пусть им Линус Поттеринг помощь оказывет.
lavrov.txt
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #137

161. Сообщение от OpenEcho (?), 22-Янв-22, 15:59   +/
> да что тут говорить JS - один из самых конченых языков, его
> используют потому что исторически так сложилось, очень жаль что этим языком
> не стала полноценная Java (я не Java разработчик, но этот выбор
> был бы понятен)

Java это язык для корпораций, где много народу работают над одним проектом, поэтому там ООП маст хэв. ЖС же изначально был более простой, с С подобным синтаксисом что облегчело порог вхождения для програмистов и который можно не обьюзать ООП-ом для простых задач где единственный разработчик и в тоже время дать полнозначный механизм ООП. Плюс, сама концепция ассинхроного выполнения кода, должна вроде как подталкивать на то чтоб код писали не блокирующий (правда такого в жизни не бывает и наконец поняв это, придумали извраты типа промисов). Начиная с 2015 кода, было очень много изменений в лучшую сторону, что позволило оставить единственный веб язык вместо зоопарка оставив для других языков эфективную и единую приблуду в виде webassembly в которую могут другие языки(если могут)

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


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #121 Ответы: #168

162. Сообщение от OpenEcho (?), 22-Янв-22, 16:05   +/
> TS такой же конченый как и JS потому что это он и
> есть, накаченный стероидами JS, и решающий очень ограниченную часть проблем в
> нем. Если бы была полноценная возможность лабать на C# или Java
> нативно для браузеров, то ни TS ни тем более JS никогда
> бы не выстрелили.

Да лабайте на здоровье, хоть на шарпе:
https://dotnet.microsoft.com/en-us/apps/aspnet/web-apps/blazor

хоть на Jave
https://www.teavm.org/

Много желающих ?


> А то, что ты писал на всех этих языках, не означает, что
> ты их всех хорошо знаешь и можешь максимально использовать их преимущества.
> Скорее всего ты просто с помощью TS заткнул набор своих потребностей
> максимально удобным для тебя способом, а не потому что получил в
> распоряжение добротный универсальный(!) инструмент, который тебе так нужен для полноценной
> качественной разработки. Дося - если не видно разницы... )))

Чувак просто тролит, ты не понял ?


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #144 Ответы: #167

163. Сообщение от john_erohin (?), 22-Янв-22, 18:20   +/
> А почему вы упорно пишете "эксплоит" вместо "эксплойт"? я пробовал править,

когда в слове ``exploit'' предпоследняя буква станет ``j'' или ``y''
(т.е. примерно никогда), тогда и начинайте править.
искренне ваш, Капитан Очевидность.

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

164. Сообщение от Аноним (52), 22-Янв-22, 18:35   +/
Ну так именно TypeScript находит очень много неявных ошибок, как неявная конвертация Infinity в строку.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #158 Ответы: #172

165. Сообщение от Аноним (52), 22-Янв-22, 18:49   +/
Блин, на кого я время потратил.

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

1. Задача parseInt - сделать то, что написано в стандарте.
2. Полагаю надо читать нотации псевдокода и тогда станет понятно что такое string.
3. parseInt принимает всё что угодно, и сконвертирует в строку, а не то что он строку принимает.

Поэтому не проверишь тип перед вызовом parseInt он тебе там такого наконвертирует.

Но я понял что ты "ни алё" в JavaScript, и даже стандарт не в состоянии почитать и понять. Даже когда тебя конкретно тыкают в место.

Я таких люблю ;)))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #159 Ответы: #170

166. Сообщение от Аноним (52), 22-Янв-22, 18:58   +/
Я могу, но зачем. Я люблю общаться с теми, кто признаёт что он не прав и учится чему-то новому. А ты нет.

Я потратил время, разобрал твой пример, покопался в стандарте. Сам узнал что-то новое.

Приведу я тебе этот список - и ничего не поменяется. Я то не тролль, я за конструктив.

В общем ты возьми этот пример кода - и пообщайся с коллегами.

Успехов тебе. За сим откланиваюсь.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #159 Ответы: #171

167. Сообщение от penetrator (?), 22-Янв-22, 19:10   +/
> Да лабайте на здоровье, хоть на шарпе:
> https://dotnet.microsoft.com/en-us/apps/aspnet/web-apps/blazor
> хоть на Jave
> https://www.teavm.org/
> Много желающих ?

TeaVM не юзал пока, blazor шляпа редкая, нет никакой интеграции с уже существующими контролами того же бутстрапа к примеру, плюс тащит рантайм дотнет коре и хочет WebAssembly, может быть когда-нибудь взлетит, но опять тот же самый вендор-лок, а пример сильверлайт так себе. Bridge.NET был неплох, но его прибили, поэтому появился форк H5, пилиться энтузиастами, может быть что-нибудь и получится.

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

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

168. Сообщение от penetrator (?), 22-Янв-22, 19:28   +/
> А так в общем, настоящий програмист как водила, если ездить умеет, то
> будет рулить на любой тачке. Ездить конечно приятней на мерине, но
> если надо от А до Б быстро и надежно и дешево,
> то выбирать надо из того что подходит лучше всего по критериям

если тебе надо 1 раз перевезти 10 тонн кирпичей то можно и на зэпоре помучаться, а если ты каждый день наворачиваешь тысячи километров то придумали Scania

а так да в зэпор всунули ящик с холодным пивом... а что.. веб-макакам и так сойдет

в условиях когда всё массово уходит в веб уже как минимум последние 10 лет, и приложения в веб становятся все сложнее и сложнее, притом требуется кроссплатформенность, они не в веб тащат языки вменяемые, на которых можно создавать хорошие приложения быстро и качественно, а наоборот в десктоп тащат говнище типа электрона и ноды, которые затыкают определенные потребности, но в целом задачу достаточно хорошо НЕ решают, т.е. очередной фреймворк с кучей костылей

потом появится еще один TeaVM, Bridge.Net, H5, Java.Web, JS++ и тд только бы избавиться от костылей и не факт что получится, потому что якобы в JS низкий порог входа (нет), да и кому он нужен без jquery, MVVM (Vue, Angualar, KnockoutJS) на сегодняшний день?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #161 Ответы: #169

169. Сообщение от OpenEcho (?), 22-Янв-22, 22:58   +/
> в условиях когда всё массово уходит в веб уже как минимум последние 10 лет, и приложения в веб становятся все сложнее и сложнее, притом требуется кроссплатформенность, они не в веб тащат языки вменяемые, на которых можно создавать хорошие приложения быстро и качественно, а наоборот в десктоп тащат говнище типа электрона и ноды, которые затыкают определенные потребности, но в целом задачу достаточно хорошо НЕ решают, т.е. очередной фреймворк с кучей костылей

Я с этим согласен наверное даже болше чем на 100% !!!
Но миром правит лень и глупость, и тот кто это понимает, использует это для натягивания одеяла на себя, а когда бабла становится немеренно, то ими же и формируются законы и условия, которые уже не обойдешь.

> да и кому он нужен без jquery, MVVM (Vue, Angualar, KnockoutJS) на сегодняшний день?

Ну вот здесь, чисто для обьективности, - это не правда. После "переворота" начиная с 2015 года в ЖС поменялось много чего и очень сильно, jQuery продолжают использовать по привычке, хотя появились те же нативные ЖС функции, есть неплохая книжка Beyond jQuery, если есть возможность, посмотрите, описывается как с приходом ECMAScript 6 поменялось все очень даже кардинально. Ну и скорость языка, тот ужас что был 20 лет назад, его уже нет(гугла очень потрудилось с JIT-ом).
А на счет Vue, Angualar(помирающий), KnockoutJS, React, так то фраймворки которыми обрастает абсолютно любой язык как только более менее становится популярным, - для сокращения времени разработки по часто применяемым шаблонам. Это то же самое зло что шаред библиотеки.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #168 Ответы: #178

170. Сообщение от OpenEcho (?), 22-Янв-22, 23:02   +/
> Я таких люблю ;)))

Трепло вы батенька, ох и трепло (мягко говоря)  :)
в начале было хоть смешно, теперь одно и тоже заклинило

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #165 Ответы: #174

171. Сообщение от OpenEcho (?), 22-Янв-22, 23:29   +/
> Я потратил время, разобрал твой пример, покопался в стандарте. Сам узнал что-то
> новое.

И это говорит человек, который супер спец в TypeScript-е но при этом даже не зная что это то же самый ЖС.

Безплатно:
- Нет браузеров способных выполнять TypeScript, это просто суперсет ЖС и просто транспилируестя в ЖС и не поверишь, но даже в ES3
- Любой ЖС скрипт, - это вполне легальный TypeScript, просто поменяй файло-экстеншн с .js на .ts и именно поэтому любая ЖС либа работает с ТС

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


> Приведу я тебе этот список - и ничего не поменяется. Я то
> не тролль, я за конструктив.

Врешь, ты самый настоящий троль и я тебя больше кормить не буду, т.к перестало быть смешно.

Когда люди говорят за конструктив, то не выдают себя по крайней мере идиотами, которые пытаются спровоцировать на базар, подкидывая вместо аргументов в споре - голимую детскую провокацию, типа "иди в школу, тебе синиор по рукам даст"


> В общем ты возьми этот пример кода - и пообщайся с коллегами.

Я тебе привел в самом начале ссылку, которую ты не только не почитал для повышения своих знаний, но даже и не знал о проблемах с ЖС, а такого не бывает, если чувак мнит себя крутым TypeScript-щиком, он просто должен был наступить на проблемы описанные в том линке если он пишит конечо нe только ХелоВорды

> Успехов тебе. За сим откланиваюсь.

Спасибо, тебе тоже успехов, добавлю только банальшину, жизнь очень б/\ять коротка... цени и используй ее каk человек, вместо тупого тролинга

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #166 Ответы: #176, #177

172. Сообщение от OpenEcho (?), 22-Янв-22, 23:38   +/
> Ну так именно TypeScript находит очень много неявных ошибок, как неявная конвертация
> Infinity в строку.

Слушай скачай что ли deno хотя бы, который самый что ни на есть тру TypeScript и попробуй сперва, чтоб не продолжать позориться дальше и дальше, потому как он тоже хавает глупо бесконечность вместо того чтоб вернуть NaN

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #164 Ответы: #173

173. Сообщение от Аноним (52), 23-Янв-22, 00:45   +/
Я, в отличие от тебя, весь код проверил и в JavaScript, и в TypeScript.

И подробно обяснил что возвращает JavaScript, и почему ругается TypeScript. И про parseInt подробно разъяснил, но твоя гордыня не позволяет тебе признать что ты полностью неправ.

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

Уж объяснять что такое TypeScript я не буду.

Typescript проекты.

1. https://github.com/gorhom/react-native-bottom-sheet
2. https://github.com/date-fns/date-fns
3. https://github.com/software-mansion/react-native-reanimated (переписан на Typescript)
4. https://github.com/react-navigation/react-navigation
6. https://github.com/jaredpalmer/formik
7. https://github.com/typeorm/typeorm

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

174. Сообщение от Аноним (52), 23-Янв-22, 00:59   +/
По существу ответить нечего?
"Infinity" - это не бесконечность, это просто такая строка, в которой написано "Infinity", а могло быть написано что угодно.

И распарсилось всё абсолютно верно, в число 18. И я тебя объяснил почему. Но ты не понял. Какая бесконечность, ты о чём? Вернуло что и должно было.

В 19-ричной системе какие буквы кодируют 17, 18,19?

i - это последний валидный символ, получается 18. Т.е. парсит parseInt ("i", 19). parseInt парсит до первого невалидного символа. n - невалидный.

А теперь тоже самое, но в системе 24-разрядной. Там получается "infini".

Задаешь такие вопросы и сам не знаешь на них ответа. И даже не понимаешь когда тебе объясняют.

Но ни у кого строки "Infinity" не будет, будет число Infinity. И вот тут TypeScript откажется компилировать код и покажет ошибку.

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

175. Сообщение от Аноним (-), 23-Янв-22, 01:30   +/
И какается периодически, что уж там.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #154

176. Сообщение от Аноним (52), 23-Янв-22, 01:51   +/
Видишь, я ссылку не открывал, а разобрался в вопросе который ты задал гораздо глубже тебя.

Потому что не ссылку надо открывать, а стандарт.

Но это лютый говнокод. Я такого не просто никогда не писал, даже не встречал в чужом коде ни разу.

И да, разбираться в этом не нужно. Потому что это legacy наследие JavaScript. TypeScript убирает 95-99% этих ошибок, неявных приведений типов и т.д.

Ещё ни разу не наткнулся на такое после компиляции TypeScript.

И TypeScript вообще никакого отношения не имеет к ООП или там модулям и всего что ты написал.

TypeScript это про теорию типов и моделирование JavaScript со статическими типами. Те единственное и основное важное отличие - у переменных появились статические типы. Всё.

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

177. Сообщение от Аноним (52), 23-Янв-22, 02:05   +/
А то что из-за ужасного дизайна там таких уродских ошибок сотни - это правда. Поэтому и нужен TypeScript.

Он позволяет отслеживать все значения, которые может принимать переменная.

Кстати - ещё один проект хочет перейти на TypeScript - это слова автора проекта. Очень популярная библиотека дат и времени - Luxon. Ты наверняка ей пользовался.

https://github.com/moment/luxon.
https://github.com/moment/luxon/pull/1047.

И вот она была на чистом JS, а я перевёл её на TypeScript. И нашёл несколько десятков ошибок.

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

178. Сообщение от penetrator (?), 23-Янв-22, 02:24   +/
нативные функции использовать нельзя потому нужны полифилы и jquery замечательно справляется, зачем заморачиваться с деталями имплементации XMLHttpRequest в каждом отдельном браузере или его версии?

и не такие уже там большие изменения, продолжают накачивать стероидами, все эти фичи типа arrow functions не более чем синтаксический сахар, а парадигма и структура кода - все убогое

я согласен, что стало лучше, но стало ли хорошо? конечно нет

и в шарпе подобного добра например насыпают уже с каждым минорным релизом, а многие плюшки давным давно доступны

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #169 Ответы: #186

179. Сообщение от pavlinux (ok), 23-Янв-22, 02:51   +1 +/
> требуется наличие прав CAP_SYS_ADMIN

Да что ж такое ...

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

180. Сообщение от . (?), 23-Янв-22, 16:30   +/
да разницы не. в Си нет понятия "вычисляемые inline" и "не-inline". но я уже осёкся - size_t - unsigned, так что и выражение логичное. потому что в Си негативное число беззаконного - это модуль по его размеру.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #83

181. Сообщение от Аноним (17), 23-Янв-22, 21:04   +/
> Болтун.

сказал чyвaк, пилящий альтлинyпс

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

183. Сообщение от Аноним (183), 23-Янв-22, 21:54   +/
Ошибка лежив в гарде "if (len > PAGE_SIZE - 2 - size)" для memcpy.

В идиоматичном расте ты не будешь такую гарду писать, она тебе не понадобится.

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

184. Сообщение от Аноним (183), 23-Янв-22, 21:56   +/
Надо указывать в каком языке такое вообще не потребуется писать?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41

185. Сообщение от Ordu (ok), 24-Янв-22, 09:09   +1 +/
> Мир Вам.

Я несколько дней думал, как же должны быть вывихнуты мозги, чтоб сопровождать вербальную агрессию коммента с подписью "мир вам", но кажется я нашёл ответ. Ты это, наверное, себе говоришь? Пытаешься успокоить себя? Недавно ты столь же противоречиво называл партнёрами тех, кого явно считаешь врагами. В смысле твои моральные установки не приветствуют ненависть и агрессию, но что-то внутри тебя требует от тебя агрессивного ненавидящего поведения, и поэтому твоё поведение оказывается столь противоречивым?

Не сдерживай себя, дай выход негативным эмоциям, скажи всем, что ты о них думаешь. Загоняя эмоции внутрь и не давая им выхода, ты идёшь к неврозам, а то и к психозам. С другой стороны, приняв свои эмоции, ты открываешь себе возможность работать с ними, сознательно разрешать конфликты между СуперЭго и Ид, и в перспективе достичь нирваны человека, принимающего себя и окружающий мир такими, какие они есть. Это единственный известный мне путь к просветлению, к становлению в себе нерушимой веры в своё мировоззрение и в себя; путь к равновесию психики, которое не может быть поколеблено ни одним анонимом опеннета.

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

186. Сообщение от OpenEcho (?), 25-Янв-22, 17:05   +/
> нативные функции использовать нельзя потому нужны полифилы
> и jquery замечательно справляется, зачем заморачиваться с деталями имплементации XMLHttpRequest в каждом отдельном браузере
> или его версии?

Забейте, М$ уже окончательно прибил своё дитятко ака осел, а остальные дружно в шеренгу копируют Хром, так что можно сегодня смело говорить, - зоопарк исчез


> и не такие уже там большие изменения, продолжают накачивать стероидами, все эти
> фичи типа arrow functions не более чем синтаксический сахар, а парадигма
> и структура кода - все убогое

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

> я согласен, что стало лучше, но стало ли хорошо? конечно нет

Это уже больше о политике... Вы можете реально что то можете поменять ?

В програмирование давно уже пришла политика, поэтому вы либо по законам Дарвина, - или подстраиватесь под среду ну или путь вдогонку за мамонтами...

Грустно, но к сожалению горькая правда...

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

187. Сообщение от Griggorii (?), 26-Янв-22, 22:35   +/
Вот вы подставляете жестко , че за школьник это нашел ? Дело в том что если так сделать то пункт питания будет очень долго открываться уже включил в скрипт , а ннет хорошо на третий день понял что это , так что пришлось делать rm /etc/sysctl.d/userns.conf и все стало нормально
Ответить | Правка | Наверх | Cообщить модератору

188. Сообщение от Аноним (-), 27-Янв-22, 05:18   +/
Прикольно, у "crusaders of rust" эксплойты почему-то на сишке написаны :). Странная крузада какая-то получилась.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #189, #190

189. Сообщение от Аноним (183), 27-Янв-22, 05:39   +/
Думаю это с величиной награды связано - 31337$. За такие деньги они напишут на чем получится и как быстрее будет :D
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #188

190. Сообщение от Аноним (183), 27-Янв-22, 05:40   +/
Предполагаешь у них уязвимость в эксплойте найдется?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #188


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

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




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

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