The OpenNET Project / Index page

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



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

"Уязвимость в Python, проявляющаяся при обработке непроверенных дробных чисел в ctypes"  +/
Сообщение от opennews (??), 19-Фев-21, 09:42 
Доступны корректирующие выпуски языка программирования  Python 3.7.10 и 3.6.13, в которых устранена уязвимость (CVE-2021-3177), способная привести к исполнению кода при обработке непроверенных чисел с плавающей запятой в обработчиках, вызывающих функции на языке Си при помощи механизма  ctypes. Проблема также затрагивает ветки Python 3.8  и 3.9, но обновления для них пока находятся в состоянии кандидата в релизы (релиз запланирован на 1 марта)...

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

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

Оглавление

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


1. Скрыто модератором  –3 +/
Сообщение от Аноним (-), 19-Фев-21, 09:42 
Ответить | Правка | Наверх | Cообщить модератору

2. Скрыто модератором  +16 +/
Сообщение от Онаним (?), 19-Фев-21, 09:56 
Ответить | Правка | Наверх | Cообщить модератору

5. Скрыто модератором  –3 +/
Сообщение от Fracta1L (ok), 19-Фев-21, 09:58 
Ответить | Правка | Наверх | Cообщить модератору

14. Скрыто модератором  –2 +/
Сообщение от Аноним (14), 19-Фев-21, 10:23 
Ответить | Правка | Наверх | Cообщить модератору

6. Скрыто модератором  +1 +/
Сообщение от Аноним (6), 19-Фев-21, 09:58 
Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

9. Скрыто модератором  +/
Сообщение от Мимокрокодил (?), 19-Фев-21, 10:06 
Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

3. Скрыто модератором  –6 +/
Сообщение от Fracta1L (ok), 19-Фев-21, 09:57 
Ответить | Правка | Наверх | Cообщить модератору

7. Скрыто модератором  +/
Сообщение от Аноним (6), 19-Фев-21, 09:59 
Ответить | Правка | Наверх | Cообщить модератору

8. Скрыто модератором  –4 +/
Сообщение от Fracta1L (ok), 19-Фев-21, 09:59 
Ответить | Правка | Наверх | Cообщить модератору

16. Скрыто модератором  –2 +/
Сообщение от Аноним (16), 19-Фев-21, 10:35 
Ответить | Правка | Наверх | Cообщить модератору

17. Скрыто модератором  +5 +/
Сообщение от Леголас (ok), 19-Фев-21, 10:38 
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

19. Скрыто модератором  +15 +/
Сообщение от Fracta1L (ok), 19-Фев-21, 10:42 
Ответить | Правка | Наверх | Cообщить модератору

48. Скрыто модератором  –2 +/
Сообщение от Аноним (48), 19-Фев-21, 13:34 
Ответить | Правка | К родителю #17 | Наверх | Cообщить модератору

100. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от vantoo (ok), 20-Фев-21, 21:26 
> зашёл почитать дельные, толковые комментарии

Не туда зашел.

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

45. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от oneMetr (?), 19-Фев-21, 12:56 
Ошибку поправили в С или в pyton?
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

63. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (-), 19-Фев-21, 17:53 
> Ошибку поправили в С или в pyton?


    char buffer[256];
    switch(self->tag) {
    case 'b':
    case 'B':
        sprintf(buffer, "<cparam '%c' (%d)>",
        return PyUnicode_FromFormat("<cparam '%c' (%d)
...
case 'f':
        sprintf(buffer, "<cparam '%c' (%f)>",
            self->tag, self->value.f);
        break;

Очевидно же, что это питонячий код, с классическим питонячьим же фейлом в sprintf(слишком_маленький_буфер,...)!


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

15. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (14), 19-Фев-21, 10:26 
PyPy быстрее CPython! Правда PyPy использует JIT, а это очень плохо.
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

27. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Чебур (?), 19-Фев-21, 11:16 
А что в этом плохого, куча языков его использует?
Ответить | Правка | Наверх | Cообщить модератору

31. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Аноним (31), 19-Фев-21, 11:36 
Обычно джит рантаймы принято ругать за то, что им нужна память, помеченная сразу на запись и исполнение, несекурно!
Ответить | Правка | Наверх | Cообщить модератору

40. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –2 +/
Сообщение от Аноним (-), 19-Фев-21, 12:28 
1) W^X не работает.
2) Сгенерить оптимизированный код - проц жрет, внезапно! С компилируемым то яп это было где-то там, на билдферме, 1 раз на всю толпу. А вот так это уже у вас, локально, в процессе работы. Так что питоннетормозит, но проца и оперативки все же докупите, да?!
3) А, и кодогенератор, конечно, тоже припереть придется. И таскать его везде где хочется это втулить.
4) Кстати, сколько процессорных архитектур это все поддерживает, например? А то скриптовый язык прибитый на гвозди к полутора процовым архитектурам выглядит особенно издевательски. JS, кстати, примерно вот таким и получился.
Ответить | Правка | К родителю #27 | Наверх | Cообщить модератору

13. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –1 +/
Сообщение от Брат Анон (ok), 19-Фев-21, 10:23 
Питон -- это попытка исправить дыры Си. Со всеми вытекающими последствиями. Чего ты орёшь, школоло?
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

32. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от alex312 (?), 19-Фев-21, 11:38 
похоже ты здесь недавно и не знаешь всех поциентов "в лицо" :)

велкам он боард !

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

38. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –1 +/
Сообщение от заминированный тапок (ok), 19-Фев-21, 12:15 
> Питон -- это попытка исправить дыры Си.

https://youtu.be/l_--ewb4YXg

и вот не смущает же человека, что сравнение Си и Питона - это в принципе как сказать: "марсоход perseverance - это попытка исправить недочёты автомата Калашникова"

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

47. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (47), 19-Фев-21, 13:06 
>  "марсоход perseverance - это попытка исправить недочёты автомата Калашникова"

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

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

95. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Чел (?), 20-Фев-21, 15:21 
Какие еще дыры Си? В данном случае у Си все хорошо. Это проблемы той макаки, которая писала CPython.
Ответить | Правка | К родителю #13 | Наверх | Cообщить модератору

22. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (22), 19-Фев-21, 10:55 
Не в нём, а в модуле ctypes. Переписать модуль на Rust? Так он же, всё равно, должен вызывать сишные функции.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

101. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (101), 23-Фев-21, 22:46 
Раст нужен для того, чтобы вызывать unsafe (C|asm)
Ответить | Правка | Наверх | Cообщить модератору

24. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –1 +/
Сообщение от _ (??), 19-Фев-21, 11:05 
Надо было юзать https://github.com/RustPython/RustPython
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

102. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (101), 23-Фев-21, 22:54 
Дважды тормознутый?!
Ответить | Правка | Наверх | Cообщить модератору

82. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (82), 19-Фев-21, 23:03 
Ты не поверишь, но его эталонная реализация написана на С.
Какие там ещё дыры должны быть? JAVA-вские? :)
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

87. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Аноним (87), 20-Фев-21, 02:04 
И где бан, модератор?
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

103. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Здрасьте (?), 24-Фев-21, 20:55 
Это не Пайтон, это расширение (модуль).
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

4. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –2 +/
Сообщение от Рефрен (?), 19-Фев-21, 09:57 
> обработчиках, вызывающих функции на языке Си
> Си

ну ясно

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

10. Скрыто модератором  –1 +/
Сообщение от Аноним (-), 19-Фев-21, 10:16 
Ответить | Правка | Наверх | Cообщить модератору

21. Скрыто модератором  +/
Сообщение от Аноним (21), 19-Фев-21, 10:47 
Ответить | Правка | Наверх | Cообщить модератору

25. Скрыто модератором  +2 +/
Сообщение от Аноним (-), 19-Фев-21, 11:08 
Ответить | Правка | Наверх | Cообщить модератору

29. Скрыто модератором  +/
Сообщение от Аноним (21), 19-Фев-21, 11:22 
Ответить | Правка | Наверх | Cообщить модератору

26. Скрыто модератором  +1 +/
Сообщение от anonymous (??), 19-Фев-21, 11:09 
Ответить | Правка | К родителю #10 | Наверх | Cообщить модератору

28. Скрыто модератором  +/
Сообщение от Fracta1L (ok), 19-Фев-21, 11:17 
Ответить | Правка | Наверх | Cообщить модератору

41. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (-), 19-Фев-21, 12:29 
> ну ясно

С хрустом его скрестить. Получится 2 метра ржавой колючей проволоки

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

11. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +2 +/
Сообщение от Аноним (-), 19-Фев-21, 10:18 
Походу кто-то попытался вычислить чему равен гугол, и наконец понял почему сообщения от инопланетян не рекомендуется декодировать - "can take over all systems on earth" :)
Ответить | Правка | Наверх | Cообщить модератору

12. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (12), 19-Фев-21, 10:18 
> repr(x)

Но зачем?

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

30. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Mimemail (ok), 19-Фев-21, 11:27 
Чуть более близкие к жизни print(x), str(x) и f'x: {x}'  приводят к тому же результату.
Ответить | Правка | Наверх | Cообщить модератору

43. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Аноним (12), 19-Фев-21, 12:40 
Зачем выводить промежуточные представления, предназначенные исключительно для передачи в сишные дыре^wфункции?
Ответить | Правка | Наверх | Cообщить модератору

54. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от userd (ok), 19-Фев-21, 16:11 
для отладки, например.
Ответить | Правка | Наверх | Cообщить модератору

65. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (12), 19-Фев-21, 18:29 
если только для отладки самих ctypes
Ответить | Правка | Наверх | Cообщить модератору

18. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Аноним (16), 19-Фев-21, 10:40 
Питон2 тоже подвержен. Но он уже не поддерживается. И судя по тому что за все это время никто не применил данные методы, в данной последовательности, оно никому и не надо. И это при том что питон всегда применяли для вычислений.
Ответить | Правка | Наверх | Cообщить модератору

23. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (21), 19-Фев-21, 10:55 
Не работает что-то. И тут я обратил внимание, что у меня есть только 3.8.8rc1 с 3.9.2rc1 и собраны они с _FORTIFY_SOURCE. Мде, надеялся увидеть сегфолт в питоне (хоть и сишный).
Ответить | Правка | Наверх | Cообщить модератору

66. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от userd (ok), 19-Фев-21, 18:49 
> надеялся увидеть сегфолт в питоне (хоть и сишный).

Не надо ждать милостей от природы!
сами можем сделать, ctypes и тут поможет -

import ctypes
proto = ctypes.CFUNCTYPE(None)
func = proto(0)
func()

у меня в 3.5 работает.

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

33. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Аноним (33), 19-Фев-21, 11:46 
Под гентой не воспроизводится. Причём ни на втором, ни на третьем пайтоне.
Ответить | Правка | Наверх | Cообщить модератору

35. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (33), 19-Фев-21, 12:00 
Python 3.7.9 (default, Feb 10 2021, 02:14:12)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ctypes;
>>> x = ctypes.c_double.from_param(1e300)
>>> repr(x)

"<cparam 'd' (1e+300)>"

Тут явно не 309 символов.

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

37. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –1 +/
Сообщение от Аноним (37), 19-Фев-21, 12:11 
Python 3.8.5 (default, Jul 28 2020, 12:59:40)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ctypes;
>>> x = ctypes.c_double.from_param(1e230);
>>> repr(x)

"<cparam 'd' (100000000000000009956644432600511718615881550253707240288894882888289682097749535512827356959114607773492443453354095454801046151441888338236034913910900102616284254148427024265175655196680942530570909289367345315883616691581616128.000000)>"

>>> import ctypes;
>>> x = ctypes.c_double.from_param(1e240);
>>> repr(x)

*** buffer overflow detected ***: terminated
Aborted (core dumped)

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

42. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (-), 19-Фев-21, 12:30 
> *** buffer overflow detected ***: terminated

Хм, походу у тебя это не особо то и эксплойтабельное...

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

34. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Аноним (34), 19-Фев-21, 11:56 
пишет "*** buffer overflow detected ***: python2 terminated"
это плохо или хорошо?
Ответить | Правка | Наверх | Cообщить модератору

36. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Аноним (33), 19-Фев-21, 12:01 
Это fortify source - хорошо. Переполнение буфера задетектилось и эксплойт запустить не получится, процесс самоликвидируется.
Ответить | Правка | Наверх | Cообщить модератору

44. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –3 +/
Сообщение от Аноним (44), 19-Фев-21, 12:44 
> Проблема также затрагивает ветки Python 3.8 и 3.9, но обновления для них пока находятся в состоянии

Все что нужно знать о хваленом пехтоне.

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

46. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +7 +/
Сообщение от Аноним (46), 19-Фев-21, 13:00 
Ну всё валим на джаваскрипт там безопасность из npm прям так и сочится.
Ответить | Правка | Наверх | Cообщить модератору

49. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –1 +/
Сообщение от Аноним (48), 19-Фев-21, 13:36 
А вы пробовали там 1e300 посчитать? Я не уверен что у вебмакак хватает фантазии на такие вычисления, они все же не те ботаны лабораторные :)
Ответить | Правка | Наверх | Cообщить модератору

50. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Страдивариус (?), 19-Фев-21, 13:59 
Почему до сих пор нет камента о том, что нужно переписать пихтон на хруст?
Ответить | Правка | Наверх | Cообщить модератору

79. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –1 +/
Сообщение от Наноним (?), 19-Фев-21, 22:31 
Надо переписать всё что написано на Питоне на Rust
Ответить | Правка | Наверх | Cообщить модератору

83. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Аноним (82), 19-Фев-21, 23:04 
Rust'о-писалка отвалится :)
Ответить | Правка | Наверх | Cообщить модератору

92. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (92), 20-Фев-21, 11:05 
Лови
https://github.com/RustPython/RustPython
Ответить | Правка | К родителю #50 | Наверх | Cообщить модератору

51. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (-), 19-Фев-21, 14:18 
Надо Python пеерписать на Rust-е? что б такого не происходило.
А да, и Rust надо переписать на исправленном Python-е, ну так для профилактики чиста.
Ответить | Правка | Наверх | Cообщить модератору

52. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от еман (?), 19-Фев-21, 14:28 
перепесать на Rust/Go/D - делов то
Ответить | Правка | Наверх | Cообщить модератору

62. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –1 +/
Сообщение от Аноним (62), 19-Фев-21, 17:36 
Облом состоит в том что они ... толком не умеют к другим ЯП интерфейситься! В лучшем случае - вывесят сишный :D :D :D интерфейс, как единственное что раально подключить. А теперь вопрос на засыпку: как это сделать safe? :P
Ответить | Правка | Наверх | Cообщить модератору

64. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (-), 19-Фев-21, 18:02 
> Облом состоит в том что они ... толком не умеют к другим ЯП интерфейситься! В лучшем случае - вывесят сишный :D :D :D

Экспертус опеннетус ...
https://doc.rust-lang.org/std/ffi/index.html


> интерфейс, как единственное что раально подключить. А теперь вопрос на засыпку:
> как это сделать safe? :P

Перестать уже ламерить и прочитать наконец определение "safe/unsafe"?

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

75. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –1 +/
Сообщение от Аноним (-), 19-Фев-21, 22:14 
> https://doc.rust-lang.org/std/ffi/index.html

Дык, блин, экспертус-анонистус, там в обратную сторону надо. Объяснить пихону как поюзать этот твой хруст. И чего ты ему вывесиешь, кроме типа-сишного :D расширения? С сишным, внезапно, api/abi, что как бы врядли очень уж "safe" совершенно независимо от того что там у вас сегодня в определениях вашего маркетингового булшита и бредней фанбоев.

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

85. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Аноним (85), 19-Фев-21, 23:13 
> Дык, блин, экспертус-анонистус, там в обратную сторону надо. Объяснить пихону как поюзать этот твой хруст.

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

> И чего ты ему вывесиешь, кроме типа-сишного :D
> расширения? С сишным, внезапно, api/abi,

"пихон", "хруст" - и при этом околонулевое знание матчасти.
Настоящий опеннетный эксперт!
*рукалицо*

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

2) Интересно, с чего это IronPython или Jython или какой нибудь Transcrypt/Brython не смогут вдруг обойтись без сишного интерфейса?

3) Мне любопытно - радетели за вывешивание и использование сишного интерфейса для реализации https://github.com/RustPython/RustPython
они и гланды предлагают удалять автогеном через зад?

4)О JSON/YAML-RPC, protobuf и прочих возможностях передачи сериализированных данных эксперт, как я понимаю, тоже не слышал?

> что как бы врядли очень уж "safe" совершенно независимо
> от того что там у вас сегодня в
> определениях вашего маркетингового булшита и бредней фанбоев.

...
> булшита и бредней

Какая хорошая, меткая и, главное, самокритичная характеристика махрового опеннетного ламеризма, пытающегося косить под троллинг ...

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

68. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от еман (?), 19-Фев-21, 19:13 
> Облом состоит в том что они ... толком не умеют к другим
> ЯП интерфейситься! В лучшем случае - вывесят сишный :D :D :D
> интерфейс, как единственное что раально подключить. А теперь вопрос на засыпку:
> как это сделать safe? :P

твой облом состоит в том, что у всех этих языков отличное взаимодействие с C/C++, ну и с питоном

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

70. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (-), 19-Фев-21, 19:38 
> твой облом состоит в том, что у всех этих языков отличное взаимодействие
> с C/C++, ну и с питоном

А могли бы придумать свой, нескучный интерфейс под каждый язык, вместо использования общепринятого!
Сразу двух зайцев одним пуком:
доказали бы всем, что "нитакиекаквсе"!
И бонусом получили бы одобрение местных мировых авторитетов разработки хелловордов!

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

76. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –3 +/
Сообщение от Аноним (-), 19-Фев-21, 22:15 
> твой облом состоит в том, что у всех этих языков отличное взаимодействие
> с C/C++, ну и с питоном

Да? Ну и как из питона хруст позвать? Питон вообще в курсе абстракций хрустиков? Или вы как максимум можете типа-сишный-типа-не-сишный экстеншн ему вывесить? С прямо таки "safe" сишным api/abi? :)

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

88. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (88), 20-Фев-21, 03:50 
> Да? Ну и как из питона хруст позвать? Питон вообще в курсе
> абстракций хрустиков? Или вы как максимум можете типа-сишный-типа-не-сишный экстеншн ему вывесить? С прямо таки "safe" сишным api/abi? :)

Эх, виндузятники-виндузоводы …

В никсах есть классический интерфейс, через который и взаимодействует большая часть мелких (и не очень) утилит.

$ cat adder.rs
use std::io;
use input_stream::InputStream;

fn main() {
    let stdin = io::stdin();
    let mut input = InputStream::new(stdin.lock());

    let a: i32 = input.scan().expect("int");
    let b: i32 = input.scan().expect("int");

println!("{} + {} = {}", a,b,a+b);
}

$ python -c "print(12);print(30)"|./adder
12 + 30 = 42
$ seq 3 4|./adder
3 + 4 = 7
$  echo 'puts "499 1"' | tclsh8.6 | perl -pe 'print "100";' |./adder
100499 + 1 = 100500

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

97. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  –1 +/
Сообщение от Аноним (-), 20-Фев-21, 18:29 
Безопасно, кучу пайпов чтобы попить смузи
Ответить | Правка | Наверх | Cообщить модератору

98. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (-), 20-Фев-21, 20:30 
> Безопасно, кучу пайпов чтобы попить смузи

"Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface.", The Art of Unix Programming, Eric Steven Raymond

Но пользователям Повершеллов, OLE, COM, ActiveX и прочих "супертехнологий", конечно виднее.

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

99. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (-), 20-Фев-21, 20:40 
> Но пользователям Повершеллов, OLE, COM, ActiveX и прочих "супертехнологий", конечно виднее.

Кстати, вижу им даже невдомёк, что питонячьи реализации бывают разные, на разных платформах и языках - JS, .NET, Java ...
ну ... зато у них есть Повершелл и даже Линукс в WSL и они совсем-совсем как настоящие разрабоДчики :)  


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

96. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от еман (?), 20-Фев-21, 16:17 
>> твой облом состоит в том, что у всех этих языков отличное взаимодействие
>> с C/C++, ну и с питоном
> Да? Ну и как из питона хруст позвать? Питон вообще в курсе
> абстракций хрустиков? Или вы как максимум можете типа-сишный-типа-не-сишный экстеншн
> ему вывесить? С прямо таки "safe" сишным api/abi? :)

экспорт функций. ABI

RTFM! https://en.wikipedia.org/wiki/Application_binary_interface

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

53. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от anonymous (??), 19-Фев-21, 15:56 
подтверждаю, на манджаре питон крашится, и даже без точек с запятой в конце строк
> import ctypes;
> x = ctypes.c_double.from_param(1e300);
Ответить | Правка | Наверх | Cообщить модератору

81. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Плохой Танцор (?), 19-Фев-21, 22:59 
> и даже без точек с запятой

Щито?

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

67. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +3 +/
Сообщение от Аноним (-), 19-Фев-21, 19:06 
Для тех кто в танке. Виноваты питонисты, которые не умеют работать с функциями чистого Си.

Язык Си не для быдлокодера.

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

69. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +2 +/
Сообщение от Аноним (69), 19-Фев-21, 19:33 
Ждем четверку. Для несовместимости можно использовать уже три пробела, бы... "программисты пехтона" найдут этому применение и скажут так даже лучше и красивее и подложат это несчастным пользователям.
Ответить | Правка | Наверх | Cообщить модератору

78. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (-), 19-Фев-21, 22:17 
> Ждем четверку. Для несовместимости можно использовать уже три пробела, бы... "программисты
> пехтона" найдут этому применение и скажут так даже лучше и красивее
> и подложат это несчастным пользователям.

Лучше полтора. Пусть чешут репу как это с клавиатуры ввести.

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

93. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Ф1 (?), 20-Фев-21, 13:23 
>Для тех кто в танке. Виноваты питонисты, которые не умеют работать с функциями чистого Си.

Heartbleed тоже питонисты допустили?

>Язык Си не для быдлокодера.

Понятно, значит не быдлокодеров просто не существует.

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

71. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (71), 19-Фев-21, 20:17 
>В RHEL уязвимость не проявляется из-за сборки пакетов в режиме FORTIFY_SOURCE, блокирующем подобные переполнения буфера в строковых функциях.<

А что так можно было? и почему в Debian, Ubuntu не так?

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

72. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Плохой Танцор (?), 19-Фев-21, 20:44 
$ python
Python 2.7.16 (default, Oct 10 2019, 22:02:15)
[GCC 8.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import ctypes
>>> x=ctypes.c_double.from_param(1e300)
>>> repr(x)

*** buffer overflow detected ***: python terminated
Аварийный останов

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

77. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Аноним (-), 19-Фев-21, 22:17 
[quote]
$ python
bash: python: command not found
[/quote]
Так эффективнее :)
Ответить | Правка | Наверх | Cообщить модератору

80. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +1 +/
Сообщение от Плохой Танцор (?), 19-Фев-21, 22:51 
> bash: python: command not found

А смысл?

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

73. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (73), 19-Фев-21, 21:30 
> Проблема также затрагивает ветки Python 3.8 и 3.9, но обновления для них пока находятся в состоянии кандидата в релизы (релиз запланирован на 1 марта).

О%ели чтоли столько времени тянуть с фиксом уязвимости?

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

74. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (-), 19-Фев-21, 22:10 
> О%ели чтоли столько времени тянуть с фиксом уязвимости?

А в 2.х вообще никогда не починят. Но бб может патчить свое ископаемое сам.

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

84. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (82), 19-Фев-21, 23:07 
> бб может патчить свое ископаемое сам

ББ? Bridge Baby?

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

89. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от б.б. (?), 20-Фев-21, 10:14 
Я ctypes не использую
Ответить | Правка | К родителю #74 | Наверх | Cообщить модератору

86. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от userd (ok), 20-Фев-21, 00:38 
Дружище,
обнаруженная ошибка досадна, но как мне кажется проявляться должна крайне редко.
Если не затруднит - напишите как можно эксплуатировать эту уязвимость.
Мне вот слабо придумать, а Вы, вероятно, уже придумали - оттого и негодуете?

Если уж не невтерпёж ждать, можно же пофиксить самостоятельно -
s/<cparam '%c' (%f)>/<cparam '%c' (%g)>/ в _ctypes.so

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

90. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от б.б. (?), 20-Фев-21, 10:15 
И ещё, патчи бывают и вне апстрима
Ответить | Правка | К родителю #73 | Наверх | Cообщить модератору

91. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Аноним (91), 20-Фев-21, 10:54 
Всем кто не в курсе. Питон на расте уже существует.
https://github.com/RustPython/RustPython
И да там нет ctypes на данный момент, так что код из примера не запустится :)
Ответить | Правка | Наверх | Cообщить модератору

94. "Уязвимость в Python, проявляющаяся при обработке непроверенн..."  +/
Сообщение от Ilya Indigo (ok), 20-Фев-21, 14:10 
> В RHEL уязвимость не проявляется из-за сборки пакетов в режиме FORTIFY_SOURCE, блокирующем подобные переполнения буфера в строковых функциях.

В openSUSE тоже все пакеты с FORTIFY_SOURCE=2 собираются.

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

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

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




Спонсоры:
Inferno Solutions
Ideco
Hosting by Hoster.ru
Хостинг:

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