The OpenNET Project / Index page

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



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

"Переполнение буфера в Toxcore, эксплуатируемое через отправку UDP-пакета"  +/
Сообщение от opennews (?), 15-Дек-21, 23:14 
В  Toxcore, эталонной реализации P2P-протокола обмена сообщениями Tox, выявлена уязвимость (CVE-2021-44847), которая потенциально позволяет инициировать выполнение кода при обработке специально оформленного UDP-пакета.  Уязвимости подвержены все пользователи приложений на базе Toxcore, в которых не отключён транспорт  UDP. Для атаки достаточно отправить UDP-пакет, зная IP-адрес, сетевой порт и открытый DHT-ключ жертвы (данные сведения доступны публично в DHT, т.е. атака могла быть совершена на любого пользователя или узел  DHT)...

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

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

Оглавление

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


1. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +7 +/
Сообщение от Анонн (?), 15-Дек-21, 23:14 
Юху, еще один буфер переполнился!
Но эти еще и дефайнами пользоваться не умеют...
Ответить | Правка | Наверх | Cообщить модератору

9. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –4 +/
Сообщение от Аноним (9), 15-Дек-21, 23:30 
Нормальные люди дефайнами вместо енамов никогда не пользуются.

Если в проекте написано

#define ABCDF_A 1
#define ABCDF_B 2

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

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

10. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –9 +/
Сообщение от Аноним (10), 15-Дек-21, 23:31 
Нормальные люди сишкой никогда не пользуются.
Ответить | Правка | Наверх | Cообщить модератору

12. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –8 +/
Сообщение от Аноним (9), 15-Дек-21, 23:33 
Я и говорю. Нет причин не использовать C++ и Rust вместо сишки.
Ответить | Правка | Наверх | Cообщить модератору

133. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (133), 16-Дек-21, 23:55 
+1 и при использовании C++ если производительность не критична нужно использовать умные smart pointer.
Ответить | Правка | Наверх | Cообщить модератору

163. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (163), 17-Дек-21, 19:49 
> умные smart pointer

В этом ITT треде...

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

187. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 09:47 
> Я и говорю. Нет причин не использовать C++ и Rust вместо сишки.

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

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

24. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (24), 16-Дек-21, 00:21 
хоть один язык, который стоит ближе к машинному коду кроме [macro]ассемблера, форта ???
Ответить | Правка | К родителю #10 | Наверх | Cообщить модератору

56. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Crazy Alex (ok), 16-Дек-21, 03:05 
Те же плюсы, являясь фактически надмнодеством Си - никак не дальше, что прекрасно видно в эмбеде последние несколько лет, где с Си на них массово бегут. Но при этом позволёют запросто защититься от подобной чепухи.

Впрочем, зачем toxcore быть "ближе к железу" - отдельный вопрос.

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

112. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноним (-), 16-Дек-21, 14:13 
На С++ бегут неосиляторы процедурных алгоритмов. Чистая Сишка божественна, Rust и С++ отстой.
Ответить | Правка | Наверх | Cообщить модератору

113. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от ИмяХ (?), 16-Дек-21, 14:22 
На Сишку перебегают неосиляторы ассемблера. А на ассемблер бегут неосиляторы машинного кода.
Ответить | Правка | Наверх | Cообщить модератору

131. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 16-Дек-21, 23:31 
> На Сишку перебегают неосиляторы ассемблера.

за..вает знаете ли . ниасиляторы, простите нас

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

188. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 09:49 
> На Сишку перебегают неосиляторы ассемблера. А на ассемблер бегут неосиляторы машинного кода.

Даже колибридос в конце концов - задолбался, и столкнувшись с идеей перепсать i386 на x64 с ноля что-то приуныли. Уже и какой-то эрзац си сделали.

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

201. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 12:31 
> Те же плюсы, являясь фактически надмнодеством Си - никак не дальше, что
> прекрасно видно в эмбеде последние несколько лет, где с Си на
> них массово бегут. Но при этом позволёют запросто защититься от подобной чепухи.

Тойоту себе купи, не апдейченую. Сможешь на себе ощутить все прелести такого эмбеда.

> Впрочем, зачем toxcore быть "ближе к железу" - отдельный вопрос.

Плюсы видите ли не интероперабельны со всем остальным.

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

39. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от verholomemail (ok), 16-Дек-21, 00:59 
вот мы и до́жЫли
Ответить | Правка | К родителю #10 | Наверх | Cообщить модератору

81. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от lombock (?), 16-Дек-21, 10:17 
нормальные это кто? и чем они пользуются?
Ответить | Правка | К родителю #10 | Наверх | Cообщить модератору

148. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от anonymous (??), 17-Дек-21, 11:12 
Вы в /use/include давно заглядывали?
Ответить | Правка | К родителю #9 | Наверх | Cообщить модератору

173. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 07:48 
> Нормальные люди дефайнами вместо енамов никогда не пользуются.

Не все так просто. У тех и других свои особенности. Но фокус не в том, а в том что в макросах параметры надо в скобки помещать. Эти умники узнали про это сложным способом. Впрочем, узнал всего лишь asan, поймавший баг, так что это не атака и вообще неизвестно можно ли код выполнить.

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

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

33. Скрыто модератором  +/
Сообщение от Аноним (33), 16-Дек-21, 00:36 
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

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

37. Скрыто модератором  +3 +/
Сообщение от Аноним (-), 16-Дек-21, 00:42 
Ответить | Правка | К родителю #33 | Наверх | Cообщить модератору

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

6. Скрыто модератором  +/
Сообщение от kusb (?), 15-Дек-21, 23:23 
Ответить | Правка | Наверх | Cообщить модератору

13. Скрыто модератором  –1 +/
Сообщение от Аноним (33), 15-Дек-21, 23:45 
Ответить | Правка | Наверх | Cообщить модератору

3. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –3 +/
Сообщение от Аноним (3), 15-Дек-21, 23:21 
Прямо как в венде. Лишнее подтверждение, что хипстерские мессенджеры зло.
Ответить | Правка | Наверх | Cообщить модератору

30. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (33), 16-Дек-21, 00:32 
Не, в венде вообще мрак.
Ответить | Правка | Наверх | Cообщить модератору

119. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Тандыр питца (?), 16-Дек-21, 14:53 
> Не, в венде вообще мрак.

Венде не нужна
У меня в телефоне стоит Ватсап
Отличный программа для хороший голова


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

124. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +3 +/
Сообщение от Michael Shigorinemail (ok), 16-Дек-21, 18:17 
> У меня в телефоне стоит Ватсап
> Отличный программа для хороший голова

Для тех, кому есть дело до "за лужей": whatsapp == facebook -> nsa.

Для тех, кому есть дело до "здеся": и его тоже уполномоченные органы читают при необходимости.

Выкидывайте эту каку ;-)

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

69. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от keydon (ok), 16-Дек-21, 07:39 
Какой посоветуешь децентрализованный мессенджер с аудио и видео? Трепаться то каждый может.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

71. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от qq (??), 16-Дек-21, 07:45 
retroshare
Ответить | Правка | Наверх | Cообщить модератору

75. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноним (75), 16-Дек-21, 09:45 
RetroShare хотят переименовать в ПамятьТечетТакЧтоНиагарскийВодопадСосетВСторонке
Ответить | Правка | Наверх | Cообщить модератору

94. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от мимокрокодил2 (?), 16-Дек-21, 11:58 
Пару лет уже как пофикшены основные утечки, ты отстал от жизни.
Ответить | Правка | Наверх | Cообщить модератору

74. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноним (74), 16-Дек-21, 08:11 
> Какой посоветуешь децентрализованный мессенджер с аудио и видео?

Jami.

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

128. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от keydon (ok), 16-Дек-21, 19:21 
>> Какой посоветуешь децентрализованный мессенджер с аудио и видео?
> Jami.

Пробовал, ещё когда он был ring, работал хуже riot'а, но лучше tox'а. Посмотрю, мб что поменялось.

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

116. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от BorichL (ok), 16-Дек-21, 14:41 
mutt.
Ответить | Правка | К родителю #69 | Наверх | Cообщить модератору

127. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от keydon (ok), 16-Дек-21, 19:18 
Следом за rtorrent'ом?
Ответить | Правка | Наверх | Cообщить модератору

174. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 07:50 
С почтой которую чиитают вообще все, а половина еще и заблокировать норовит?
Ответить | Правка | К родителю #116 | Наверх | Cообщить модератору

149. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от anonymous (??), 17-Дек-21, 11:16 
Matrix. Хоть он и федеративный (лучше, чем централизованное, но всё же не p2p)
Ответить | Правка | К родителю #69 | Наверх | Cообщить модератору

155. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от keydon (ok), 17-Дек-21, 12:24 
Федеративный меня бы устроило.
Из всего что я тестировал (tox, ring (потом и jami)) он был лучший (как миниум пару лет назад), но все равно в нем было много проблем:
сообщения иногда не доходили до собеседника
для видео использует jitsy соответственно никакой фильтрации шумов и эха, фактически на смартфоне разговаривать невозможно без наушников у обоих сторон
официальное приложение на андройде было сырое и чтобы оно работало нужно было сделать неочевидные вещи (точно не помню)
в официальном сервере подключить свой STUN-TURN сервер не удалось, банально не работал, без этого шел на забугорные сервера с соответствующим качеством связи
неофициальные клиенты на андройде были еще более сырые (кажется в видео они в принципе не могли)
Так что он скорее не работал чем работал и перетащить собеседников в него не вышло
С murmur (централизованный, но selfhosted) все было гораздо проще, но тоже нет подавления эха в клиенте под андройд
Ответить | Правка | Наверх | Cообщить модератору

175. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 07:51 
Проблема федераций в том что потом приходит какой-нибудь гугл и выносит половину контактлиста отключив свой сервер от федерации.
Ответить | Правка | К родителю #149 | Наверх | Cообщить модератору

79. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Брат Анон (ok), 16-Дек-21, 10:00 
Рекомендую тебе неуловимого Джо.
формула старше, чем этот косячный мир бай дизайн: хочешь сделать хорошо -- сделай сам.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

129. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от keydon (ok), 16-Дек-21, 19:26 
> Рекомендую тебе неуловимого Джо.
> формула старше, чем этот косячный мир бай дизайн: хочешь сделать хорошо --
> сделай сам.

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

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

153. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Брат Анон (ok), 17-Дек-21, 11:34 
> Тоже к этому пришёл. Останавливает необходимость собеседников в андройд клиенте, а я
> клепать на него категорически не собираюсь.

Зачем тебе андроид? В браузере слепить чат не судьба?

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

176. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 07:53 
Его роскомнадзор забанит через 15 минут. И будет он иноагентом.
Ответить | Правка | Наверх | Cообщить модератору

186. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Брат Анон (ok), 23-Дек-21, 09:45 
> Его роскомнадзор забанит через 15 минут. И будет он иноагентом.

А если приложение будет в магазине -- его забанит роскомнадзор и будет он инагентом. Разница в 20 баксах.

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

189. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 09:53 
Получив 20 баксов от американской корпорации он в этом списке застрянет на три поколения.
Ответить | Правка | Наверх | Cообщить модератору

216. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Брат Анон (ok), 24-Дек-21, 09:13 
> Получив 20 баксов от американской корпорации он в этом списке застрянет на
> три поколения.

Ты плохо думаешь о Роскомнадзоре. Руководитель этой организации получает пяток лямов. Ему на твои 20 баксов с прибором по углу и по азимуту. Более того, заблокировать очень выгодно: ты конкретно 20 баксами не обойдёшься. Ты занесёшь гораздо больше. И это понимают сотрудники и Роскомнадзора, и все
те, кому надо.

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

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

226. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 02-Янв-22, 10:18 
Я думаю что роскомнадзору лично я могу занести только дырку от бублика. Я не ориентируюсь на российские рынки, у меня нет доменов и серверов в рф, так что мне абсолютно класть что они там будут делать.

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

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

143. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноним (143), 17-Дек-21, 10:51 
>хипстерские мессенджеры зло

Где же там хипстеры в этом протоколе? Хипстеры, они в Телеге.

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

4. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –8 +/
Сообщение от Аноним (10), 15-Дек-21, 23:22 
В очередной раз неуправляемые языки показали все свои недостатки
Ответить | Правка | Наверх | Cообщить модератору

29. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +5 +/
Сообщение от Аноним (33), 16-Дек-21, 00:32 
О, знаю я такие управляемые языки. NodeJS и npn. Python и pip. Не волнуйся, Rust и карго ждёт то-же самое. А может и нет, всё равно ничего на rust нету. Одно блаблабла
Ответить | Правка | Наверх | Cообщить модератору

51. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (51), 16-Дек-21, 02:58 
Растаманы уже заваливали FF, тупо перепутав больше-меньше при ручной валидации индекса массива.
Ответить | Правка | Наверх | Cообщить модератору

150. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от anonymous (??), 17-Дек-21, 11:21 
Нашли что с чем сравнивать. Python и NodeJS наоборот давили на не строгость, динамичность, мягкость и высокий уровень абстрагирования. Rust же -- самый строгий язык, из всех, что я знаю на практике. Он давит лишь на валилируемость кода.
Ответить | Правка | К родителю #29 | Наверх | Cообщить модератору

177. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 07:57 
О строгости раста можно прочитать прямо в их документации на unsafe. Там весьма занимательное чтиво, а без unsafe далеко не уедешь. Впрочем для ценителей - есть и вариант этого на растишке. Он урезаный в возможностях и вечно отстает, потому что прогать на этих закорючках - не на форуме трындеть, так что им мало что пользуется. Но если надо - есть. Есть даже на хаскеле, но это для самых стойких.
Ответить | Правка | Наверх | Cообщить модератору

31. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (31), 16-Дек-21, 00:34 
Об особенностях макросов написано в первом параграфе документации про макросы, если люди не читают документацию они и по управляемым языкам не будут читать и будут делать ошибки как в соседней теме про выполнение кода из java логов.
Ответить | Правка | К родителю #4 | Наверх | Cообщить модератору

36. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –2 +/
Сообщение от Аноним (33), 16-Дек-21, 00:40 
Ты что? какая документация? не надо никакие параграфы читать, там многа страшных букаф. Может переполнение случится. Надо просто писать на rust, а там можно ничего не читать. Именно поэтому у нас до сих пор ничего не работает. Но нам и не надо. Главное кричать мантру про rust и терпеливо ждать. А ведь всем известно, кто верит и ждёт - всегда дождётся. Вопрос чего....
Ответить | Правка | Наверх | Cообщить модератору

45. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +5 +/
Сообщение от Ordu (ok), 16-Дек-21, 01:54 
Я считаю, что здесь проявилась не столько проблема неуправляемости, сколько проблема невменяемости того, что сишники называют макросами.
Ответить | Правка | К родителю #4 | Наверх | Cообщить модератору

67. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +3 +/
Сообщение от Аноним (67), 16-Дек-21, 04:34 
Справедливости ради - макросы в таком виде (текстовая замена в препроцессоре) идут с (макро)ассемблера.
Ответить | Правка | Наверх | Cообщить модератору

90. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Sw00p aka Jerom (?), 16-Дек-21, 11:26 
тут проблема даже не с макросами, а в банальной арифметике
Ответить | Правка | Наверх | Cообщить модератору

151. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от anonymous (??), 17-Дек-21, 11:26 
Внезапно, человек иногда допускает ошибки. Нет ни одного человека, который не допускал бы ошибки (даже арифметические). Поэтому важно перепроверить за человеком всё ли обладает самосогласованностью (очень желательно ДО запуска приложения).
Ответить | Правка | Наверх | Cообщить модератору

157. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Sw00p aka Jerom (?), 17-Дек-21, 16:03 
> Внезапно, человек иногда допускает ошибки. Нет ни одного человека, который не допускал
> бы ошибки (даже арифметические). Поэтому важно перепроверить за человеком всё ли
> обладает самосогласованностью (очень желательно ДО запуска приложения).

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


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

178. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 08:05 
> тут проблема даже не с макросами, а в банальной арифметике

У них именно глупая ошибка в макросах, параметры скобками советуют выделять вот именно поэтому: исправление свелось к скобкам в макро. Логика была бы правильной, если бы не приоритет операций.

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

101. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (101), 16-Дек-21, 13:13 
> Справедливости ради - макросы в таком виде (текстовая замена в препроцессоре) идут с (макро)ассемблера.

В котором с ними гораздо меньше "неявных" проблем из-за гораздо более простого языкового формата вида "мнемоник-оператор (операнд)*".


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

179. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (-), 23-Дек-21, 08:26 
Програмить на макроассемблере желающих так то тоже сильно меньше.
Ответить | Правка | Наверх | Cообщить модератору

203. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от анонн (ok), 23-Дек-21, 14:38 
>> <(исторически) хорошее решение для намного более простого языка - может, внезапно, оказаться граблегенератором для более сложных>  
> Програмить на макроассемблере желающих так то тоже сильно меньше.

А в огороде бузина?

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

215. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (-), 24-Дек-21, 08:07 
Сам топи урановые ломы в ртути!
Ответить | Правка | Наверх | Cообщить модератору

5. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +6 +/
Сообщение от Анонн (?), 15-Дек-21, 23:23 
Даже немного смешно, что проект в таким пафосным описанием "...aimed at making security and privacy..." была допущена настолько банальная ошибка. И прожила она в нем с 5 июня 2017 (0.1.9) до 7 декабря 2021 (0.2.12). Еще чуть-чуть и пошла бы в первый класс.
А результат - удаленное выполнение кода как результат. Просто прелестно.
Ответить | Правка | Наверх | Cообщить модератору

50. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноньимъ (ok), 16-Дек-21, 02:57 
Да, жесть полная.
Ответить | Правка | Наверх | Cообщить модератору

58. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от penetrator (?), 16-Дек-21, 03:13 
RCE не подтверждено, оно допускается, но не доказано.
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

70. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –7 +/
Сообщение от Fracta1L (ok), 16-Дек-21, 07:39 
Ибо нечего связываться с дырявой сишкой, когда делаешь что-то секурное
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

83. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от lombock (?), 16-Дек-21, 10:33 
..., а нужно связываться с?...
Ответить | Правка | Наверх | Cообщить модератору

136. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от 0xd34df00d (??), 17-Дек-21, 05:14 
С идрисом или с агдой.

С хаскелем в светлом будущем с -XDependent тоже можно.

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

180. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 08:57 
А там есть и хаскел и раст. Только они как неуловимый джо, их все рекламировать горазды, но прогармит на этом все-таки пусть кто-нибудь другой :)
Ответить | Правка | Наверх | Cообщить модератору

193. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от 0xd34df00d (??), 23-Дек-21, 10:33 
Я на одном из них програмлю. Зачем кто-то другой, когда самому приятно?
Ответить | Правка | Наверх | Cообщить модератору

196. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 12:06 
> Я на одном из них програмлю. Зачем кто-то другой, когда самому приятно?

Ну так у вон тех оно есть. Можешь поупражняться, вдруг зайдет?

Сишная версия популярнее всего потому что прикручивается к чему угодно, в общем то. На расте так не то чтобы совсем нельзя, но это ж ганрантировано unsafe. И за что боролись? За хаскель вам наверное виднее.

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

91. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от _kp (ok), 16-Дек-21, 11:26 
В каком конкретно месте дыры в Си?
Дыры у программиста и в чужих библиотеках.

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

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

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

104. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноньимъ (ok), 16-Дек-21, 13:39 
С оружием такое дело, есть много людей которые не застрелили себя на смерть, много таких что максимум прострелили себе ногу, и ещё больше таких которые вообще не калечились оружием никак.
В отличии от сишечки, на которой вы не найдёте ни одной популярной программы/библиотеки без 0дней дырени в истории.
Ответить | Правка | Наверх | Cообщить модератору

125. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +4 +/
Сообщение от Michael Shigorinemail (ok), 16-Дек-21, 18:19 
(спокойно так) А если найду?
Ответить | Правка | Наверх | Cообщить модератору

134. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноньимъ (ok), 17-Дек-21, 00:18 
> (спокойно так) А если найду?

Я конечно писал гиперболой.

Будет интересно посмотреть на этот код, и узнать о подходе к разработке который позволил этого добиться.

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

137. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Ordu (ok), 17-Дек-21, 07:41 
Я присоединяюсь к просьбе выше: найди. Было бы интересно посмотреть. Ну или хотя бы знать, что такой код на C существует.
Ответить | Правка | К родителю #125 | Наверх | Cообщить модератору

152. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от anonymous (??), 17-Дек-21, 11:30 
Всегда можно какую-нибудь маленькую примитивную программу (вроде cat-а) привести в пример. Вряд ли будет интересный ответ :)
Ответить | Правка | Наверх | Cообщить модератору

156. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (156), 17-Дек-21, 15:51 
Можно, но это чистой воды чит будет, а не серьезный ответ. Причём, это будет понимать даже шигорен.
Ответить | Правка | Наверх | Cообщить модератору

169. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Ordu (ok), 19-Дек-21, 01:26 
А в cat не было багов?
Ответить | Правка | К родителю #152 | Наверх | Cообщить модератору

190. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 10:00 
> А в cat не было багов?

У него и опций уже с десяток. А баги не только сишники делают, log4j подтвердит. И CVE на растовый софт, а они что, особые? Если писать софт то и CVE будут.

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

194. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Ordu (ok), 23-Дек-21, 10:38 
>> А в cat не было багов?
> У него и опций уже с десяток. А баги не только сишники
> делают

Дык ты можешь привести пример сишной "популярной программы/библиотеки без 0дней дырени в истории" или нет?

> log4j подтвердит.

О, они чуть-ли не тьюринг-полный рантайм шаблонизатор запилили с сознательно заложенной возможностью запуска произвольного кода. Они бы ещё rm -rf /* сделали бы. Это настолько за пределами разумного, что это почти уже не баг, а злоумышленный бекдор.

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

> И CVE на растовый софт, а они что, особые?

Да. Пойти и посчитай количество проблем с памятью у растового софта. Или чуть шире: количество багов, которые при эксплуатации могут дать что-то, кроме DoS, вызванного падением процесса в полуконтролируемом формате.

Если ты возьмёшь две рандомизированные выборки CVE -- одну C'шную, а другую Rust'овую, то даже если оттуда кто-нибудь эти выбранные описания багов "анонимизирует", то есть перепишет так, чтобы суть бага осталась бы, а всё, что позволяет идентифицировать язык было бы удалено, то ты всё равно сможешь сказать, какая из этих выборок сишная, а какая растовая.

Ты даже можешь попросить эти выборки "анонимизировать" ещё сильнее, оставить лишь потенциал для эксплуатации даваемый багом -- DoS, DDoS, OOM, arbitrary code execution, -- и по этой очень обрывочной информации сказать какая выборка была создана на основании растовых CVE, а какая -- на основании сишных.

То есть -- да, CVE на растовый софт особые.

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

197. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (-), 23-Дек-21, 12:18 
> Дык ты можешь привести пример сишной "популярной программы/библиотеки без 0дней дырени
> в истории" или нет?

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

> Они бы ещё rm -rf /* сделали бы.

Это за них сделали в bumblebee. На баше, вроде, чем он так уж хуже? На нем же и RCE под рутом через DHCP сервер влепили. Тоже почти как бэкдор, хотя реально пихание непровереных данных куда попало без понимания последствий. А специальные значения - это так удобно. Пока их не начинает присылать сеть.

> потому что скорость движения пули ограничена, равно как и скорость распространения
> сигналов по нервной системе.

Верования что от всего спасет безопасный рантайм как-то способствует отключения у кодера мозга. За него же подумали другие. Или нет?

> Да. Пойти и посчитай количество проблем с памятью у растового софта.

Как ни странно, даже такое есть. Так то в расте и нормальные идеи есть, но реализация получилась странной, а гайд по unsafe напоминает проблемы си, вид в профишь. Только еще яп в 20 раз сложнее и синтаксис костылями облепили. А все-равно не хватило для линукскернела, еще два самосвала костылей.

> Или чуть шире: количество багов, которые при эксплуатации могут дать что-то, кроме
> DoS, вызванного падением процесса в полуконтролируемом формате.

Это про растовский panic? А что, DoS вполне себе атака. Алсо раст

> сможешь сказать, какая из этих выборок сишная, а какая растовая.

Пожалуй. Но это в основном потому что на сях кодить начали в других реалиях.

> То есть -- да, CVE на растовый софт особые.

Так то они наверное на каждый яп со своим колоритом. На сях например eval() так просто не сделаешь. Или репы контролируемые майкрософтом, амазоном и гуглом - тоже безопасно смотрится, в плане контроля над окружением. Недоверяемыми субъектами.

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

202. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Ordu (ok), 23-Дек-21, 13:36 
>> Дык ты можешь привести пример сишной "популярной программы/библиотеки без 0дней дырени
>> в истории" или нет?
> Так сходу - нет, потому что не задавался вопросом.

А я задавался. Не искал, но задавался. И я не видел ни одной не дырявой.

> А примеры популярных программ и библиотек на расте вообще еще поискать.

Ну да, давай будем стрелки переводить.

> Верования что от всего спасет безопасный рантайм как-то способствует отключения у кодера
> мозга. За него же подумали другие. Или нет?

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

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

218. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 24-Дек-21, 13:02 
> А я задавался. Не искал, но задавался. И я не видел ни одной не дырявой.

А на каком ассортименте это вообще изучалось? И как с другими сравнивалось? И еще, для новоязов вообще статический анализ и понимание их проблем как правило не развиты.

> Ну да, давай будем стрелки переводить.

Я гайд на unsafe раст почитал и не понял чем это принципиально от сей отличается. Примерно те же проблемы. А без unsafe он вообще чего может? К другим ЯП интерфейсить - unsafe. Системные либы? Unsafe. Cисколы? Unsafe. Стандартные либы раста? Unsafe везде. Их боги пишут, они не ошибаются? А точно, в таких горах кода, перепахиваемых с такой скоростью? Или их просто анализировать никому неохота, какой толк с анализа если через неделю все перетрясли?

> И вот это тоже ничётак -- воевать с соломенным чучелом. Ты знаешь
> хоть одного кодера, кто верит в то что безопасный рантайм спасёт от всего?

Судя по коментам их тут орда. Хотя по растовой версии сабжа и не скажешь, довольно дохлая.

> Или хоть одного кодера, у кого мозги отключились от перехода с C на что-то высокоуровневое?

Вот именно сишные кодеры как-то не очень на раст рвутся. У сей плюс в том что они относительно простые, отсутвие высокоуровневых наворотов позволяет легко и быстро въехать в чужой проект. А когда там концепции и абстракции уже упс, номер не катит. Запатчить за 10 минут то что напрягало? СЕЙЧАС! Сперва пару дней в стиль мышления кодера извольте. А оно надо? Я хотел исправить то и это а не изучать полет мысли какого-то чудака.

> Я не знаю ни одного.

Я вообще ни 1 сишного кодера перешедшего на раст не видел. Может они и бывают, но это странные люди. На вид довольно разные штуки.

> образом, чтобы даже ты мог бы его разгромить аргументацией.

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

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

224. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Ordu (ok), 24-Дек-21, 17:26 
Когда я читаю вот то, что ты пишешь, у меня складывается ощущение, что ты хочешь узнать о расте больше, но какие-то неведомые принципы запрещают тебе задать вопрос, и требуют от тебя наезжать на раст, демонстрируя своё незнание, и, таким образом, провоцируя меня на ответ.

Сорри, чёт у меня сегодня нет настроения вестись на провокации.

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

227. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 02-Янв-22, 10:21 
Как тебе сказать? В расте есть интересные идеи. Но хайпожорское сообщество выезжающее только на поливании других, встроенный пакетный менеджер с репами управляемыми корпами и прочие характерные ништяки держат меня на почтительном расстоянии.
Ответить | Правка | К родителю #224 | Наверх | Cообщить модератору

232. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Ordu (ok), 02-Янв-22, 13:47 
> Как тебе сказать? В расте есть интересные идеи.

Кои ты, судя по твоим словам выше, не понял от слова совсем.

> Но хайпожорское сообщество выезжающее только на поливании других,

Мне непонятна эта фраза. Что для сообщества значит быть "выезжающим"?

А по поводу хайпа: https://thenewwazoo.github.io/whining.html

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

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

Смотри как надо критиковать:
https://chrisdone.com/posts/rust/

https://dev.to/arunanshub/self-referential-structs-in-rust-33cm -- это само по себе не критика раста, но если ты посмотришь на это с точки зрения того, как много чёрной магии требуется только для того, чтобы самореферентную структуру создать, то это отличная демонстрация к предыдущей ссылке. То есть циклический список создать ещё хрен с ним -- его легко можно сделать на raw указателях и не выпендриваться, но нужда в самореферентности иногда в самый неожиданный момент выскакивает, и... не, ouroboros может помочь иногда, но не ты прикинь, ouroboros требует от тебя надо знать разницу между ковариантными и нековариантными типами. Короче раст реально может оказаться очередным хаскелем. Насчёт сборки мусора -- это мне кажется вряд ли, есть же Rc/Arc, и они реально могут решать проблемы лайфтаймов, когда они нерешаемы, но вот превратиться в хаскель, в язык для высоколобых -- это вполне возможно.

https://gist.github.com/ctrlcctrlv/978b3ee4f55d4b4ec415a985e... -- прям-таки не в бровь а в глаз: перфекционизм превыше всего, качество кода важнее его функциональности.

https://kerkour.com/rust-crate-backdoor/ -- это прям напрашивалось, раз есть пакетный манагер.

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

181. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 08:59 
> В отличии от сишечки, на которой вы не найдёте ни одной популярной программы/библиотеки
> без 0дней дырени в истории.

Не ошибается тот кто ничего не делает. А когда все же делает - так вон и на растовые проекты уже сотни CVE понаходили. Это при том что софт на нем еще суметь найти надо.

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

206. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноньимъ (ok), 23-Дек-21, 19:26 
Много людей регулярно всю жизнь использует огнестрельное оружие и умирает при этом от старости, а не случайного выстрела себе в голову.
Ответить | Правка | Наверх | Cообщить модератору

219. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 24-Дек-21, 13:29 
> Много людей регулярно всю жизнь использует огнестрельное оружие и умирает при этом
> от старости, а не случайного выстрела себе в голову.

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

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

73. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от keydon (ok), 16-Дек-21, 07:54 
Ну да, в другом то софте такого не бывает, например heartbleed в openssl которым пользовались чуть меньше чем весь мир. В прошивках роутеров и винде это вообще норма. Чз что ты хочешь от гораздо меньшего проекта с 5 контрибьюторами. Тут же даже альтернатив нет - либо tox, либо matrix, у которого например сайт взламывали.
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

89. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноним (89), 16-Дек-21, 11:18 
Казалось бы, когда получаешь граблями по лбу, ну можно же сделать вывод из произошедшего и выжечь напалмом такие макросы, заменив их константами и/или функциями? Нет, б..ть, скобочки добавили - и так сойдет... О статических анализаторах, ловящих такие ошибки, они тоже не слышали...

Такие вот эксперты по сыкурности...

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

182. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 09:01 
Они внезапно сделали выводы и научились ставить скобки там где нормальные сишники их всегда и ставили. А вас послушать, так если ножиком порезаться так потом даже палку-копалку страшно брать.
Ответить | Правка | Наверх | Cообщить модератору

102. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноньимъ (ok), 16-Дек-21, 13:35 
Справедливости ради.
В описании проекта написано:

>This is an experimental cryptographic network library. It has not been formally audited by an independent third party that specializes in cryptography or cryptanalysis. Use this library at your own risk.

Так-же предоставляется реализация на хаскеле.

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

120. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (89), 16-Дек-21, 15:06 
Тем не менее люди уже этим пользуются, например через тот же qTox, упомянутый в новости.
Ответить | Правка | Наверх | Cообщить модератору

121. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (89), 16-Дек-21, 15:09 
И, кстати, qTox - официальный клиент, который предлагается для загрузки на https://tox.chat/.
Ответить | Правка | Наверх | Cообщить модератору

158. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (158), 17-Дек-21, 16:47 
*: один из тех, о которых разработчики знают. На вики есть ещё целая пачка
Ответить | Правка | Наверх | Cообщить модератору

7. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –7 +/
Сообщение от Аноним (9), 15-Дек-21, 23:26 
Это просто превосходно. Нормальные люди этим говном не пользуются. Вместо этого у них есть форк, в котором они всё это дело перепиливают на rust. И избавляются от insecurностей, на которые авторы токса болт забили.
Ответить | Правка | Наверх | Cообщить модератору

8. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –7 +/
Сообщение от Аноним (10), 15-Дек-21, 23:27 
лучше бы на java/c# перепилили
Ответить | Правка | Наверх | Cообщить модератору

11. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –8 +/
Сообщение от Аноним (9), 15-Дек-21, 23:32 
Зачем? У обоих есть CFFI, и Rust - безопасен и быстр. Смысла нет, кроме как кроссплатформенность. Но для кроссплатформенности можно просто собрать в bit-код LLVM и запустить его поверх GraalVM.
Ответить | Правка | Наверх | Cообщить модератору

144. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (143), 17-Дек-21, 10:55 
>Но для кроссплатформенности можно просто собрать в bit-код LLVM и запустить его поверх GraalVM.

А GraalVM запустить в виртуалке Фабриса Беллара, написанной на JS. Так победим!

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

15. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –5 +/
Сообщение от Аноним (3), 15-Дек-21, 23:47 
Если затею переписать на ржавчину я ещё могу понять, то затею переписать на managed языки с производительностью хуже питона, нет. Кроме того у них обоих с гуем проблемы. У питона нет проблемы с гуем кстати.
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

20. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от Аноним (20), 15-Дек-21, 23:59 
На ржавчине оно никогда не заработает вообще. Ржавая ОС тому доказательство.
Ответить | Правка | Наверх | Cообщить модератору

35. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (3), 16-Дек-21, 00:39 
Есть ли объективные причины, почему нет? То, что графический софт невозможно написать, это другой разговор, и всё же ситуация лучше чем с го. А так вон гуй даже на php пишут (не спрашивайте зачем).
Ответить | Правка | Наверх | Cообщить модератору

54. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (51), 16-Дек-21, 03:01 
> Есть ли объективные причины, почему нет?
> графический софт невозможно написать

Хороший мальчик :) сам спросил - сам ответил.

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

107. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от _ (??), 16-Дек-21, 13:42 
>>> На ржавчине оно никогда не заработает вообще. Ржавая ОС тому доказательство.
>> Есть ли объективные причины, почему нет?
> Хороший мальчик :) сам спросил - сам ответил.

Хороший опеннетный балабол :) сам громко испортил воздух - сам оперативно перевел стрелки.


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

191. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 10:07 
> На ржавчине оно никогда не заработает вообще.

Вариант на нем есть, но что-то не видно фанатов раста, так что он недоделаный и отстающий в развитии. Видимо рекламить на форуме лучше чем програмить на этом.

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

42. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –4 +/
Сообщение от Аноним (9), 16-Дек-21, 01:23 
>Кроме того у них обоих с гуем проблемы.

Нет у шарпа проблем с GUI.

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

44. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от Аноним (3), 16-Дек-21, 01:46 
Есть, он не кроссплатформа. У жабы хотя бы кроссплатформа. Игры на дотнете тоже шлак, можно любую юнити поделку взять как пример. Больше всего вымораживает, сколько памяти оно потребляет на пустом месте конечно, но тормоза тоже.
Ответить | Правка | Наверх | Cообщить модератору

99. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (99), 16-Дек-21, 13:05 
Игры на дотнете не шлак. 7 days to die тому пример. Отличная игрушка, хотя памяти действительно есть овердофига.
Ответить | Правка | Наверх | Cообщить модератору

126. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (3), 16-Дек-21, 19:04 
Ты кстати знаешь, какая она лагучая даже для 1 игрока? Отличная не отличная это дело десятое, для игры которую 10 лет разрабатывают могло быть и лучше. А вот архитектурные недостатки никуда не денутся уже.
Ответить | Правка | Наверх | Cообщить модератору

105. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноньимъ (ok), 16-Дек-21, 13:41 
Он вендорлок, это особенность, а не недостаток.
Если решили сделать карьеру в шарпе то нужно возлюбить майкрософт и виндовс как себя самого.
Ответить | Правка | К родителю #44 | Наверх | Cообщить модератору

192. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 10:09 
> Если решили сделать карьеру в шарпе то нужно возлюбить майкрософт и виндовс
> как себя самого.

Для этого надо себя очень крепко не любить. Error: condition check never true.

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

205. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноньимъ (ok), 23-Дек-21, 18:34 
Или очень любить...

Правильно, любить деньги.

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

209. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 24-Дек-21, 06:46 
Деньги можно заработать массой более приятных способов чем копание в том что изрыгает майковская индусня и маркетинг. Я проверял.
Ответить | Правка | Наверх | Cообщить модератору

217. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноньимъ (ok), 24-Дек-21, 12:30 
На самом деле.
Не знаю как сейчас, но раньше у МС была шикарная инфраструктура.

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

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

220. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 24-Дек-21, 13:37 
И все будет прекрасно. Пока MS не выкатит новую версию, не посоветовавшись с вами, не забыв сломать обратную совместимость, так что у ваших клиентов софт чего-то умер. И теперь вместо отпуска вы истошно ж@пы рвете в темпе вальса, иначе бизнесу вообще пиндык.
"Ненужно" решать дурацкие проблемы? Красивая теория. На практике правда почему-то совсем другое наблюдается. В паре с маркетинговыми метаниями маек довольно специфично получается. А никогда не видели memleak о 15 гигз в неделю? Не, никто понятия не имеет как его в дотнете вообще дебажить.
Ответить | Правка | Наверх | Cообщить модератору

221. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноньимъ (ok), 24-Дек-21, 13:44 
> И все будет прекрасно. Пока MS не выкатит новую версию, не посоветовавшись
> с вами, не забыв сломать обратную совместимость, так что у ваших
> клиентов софт чего-то умер. И теперь вместо отпуска вы истошно ж@пы
> рвете в темпе вальса, иначе бизнесу вообще пиндык.

Что-то я вообще не помню такого. Вы фантазируете.

> Красивая теория. На практике правда почему-то совсем
> другое наблюдается. В паре с маркетинговыми метаниями маек довольно специфично получается.

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

> А никогда не видели memleak о 15 гигз в неделю? Не

Нет, не видел такого никогда.

> никто понятия не имеет как его в дотнете вообще дебажить.

Ну, эм, так людям учиться нужно, причём тут дотнет и МС?
В дотнете прекрасные средства дебага, открывай да смотри буквально куда память уходит, о чём речь вообще?
https://docs.microsoft.com/en-us/visualstudio/profiling/dotn...
https://docs.microsoft.com/en-us/visualstudio/profiling/memo...

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

228. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 02-Янв-22, 12:25 
> Что-то я вообще не помню такого. Вы фантазируете.

У меня не настолько хорошая фантазия, гражданин евангелист.

> Не знаю что у вас там получается, но мой знакомы больше 10
> лет занимается дотнетом, и у него всё прекрасно получается.

Я видел другие вещи, типа хардкоринга всех вплоть до хедкватеров с топами, пмами и дирами направлений в выхи и/или по ночам. А чего им было делать, если стараниями мс корп софт упал и кастомеры пошли оптом на нерест? И сорян, это не "знакомые" и "фантазии", такое шоу можно только лично увидеть, если звезды так встанут.

> Нет, не видел такого никогда.

Зато это видел я. Без всяких "знакомых". Ну, да, пораньше.

> https://docs.microsoft.com/en-us/visualstudio/profiling/dotn...

К счастью, мне оно на... не уперлось сейчас, вместе с "офигенным" апстримом и их супертулами. Я уже довольно давно чисто линуксное тело, достиг в этом определенных успехов, и ни разу не пожалел о радикальной смене направлений. Это гораздо круче любых мсов и их офигенных тулов.

> https://docs.microsoft.com/en-us/visualstudio/profiling/memo...

Ложка хороша к обеду. Сейчас я от этого всего, к счастью, очень далек. И вообще, понимаешь, в линухе я могу сделать удобно себе, автоматизировать малой кровью рутину, а многие системные операции отрабатывают в разы быстрее. И есть ряд крутых эффективных технологий. Которыми я могу пользоваться без маркетингового булшита и искусственных ограничений. А еще я могу запилить себе системные образы как мне надо. Без ваших бдских кейлогеров, "улучшений", онлайнакаунтов и что там еще за д@рьмо сегодня попало под хвост маркетингомому отделу. Сами это жрите!

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

233. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноньимъ (ok), 02-Янв-22, 14:38 
Инструменты эти были в дотнете всегда.
Я уже понял, что у вас негативный опыт с горе энтрерпрайзом.
И дотнет вам очень не нравится и вообще ненужен.

Мой же знакомый известный ПМ. Его опыту и тому, сколько готовы за его труд платить компании, я доверяю.

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

234. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 02-Янв-22, 15:21 
> Инструменты эти были в дотнете всегда.

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

> Я уже понял, что у вас негативный опыт с горе энтрерпрайзом.

С компаниями из топ500, явно не хучшими из. Бывают ли лучше? Может быть.

> И дотнет вам очень не нравится и вообще ненужен.

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

> Мой же знакомый известный ПМ. Его опыту и тому, сколько готовы за
> его труд платить компании, я доверяю.

Я видел эн пмов и покруче, вероятно. Спору нет, в целом кондовые, крутые, но... но MS может временами обломать даже таких.

Как мс баги чинит - это вообще дно. Сейчас немного этого дна можно посмотреть на их гитхабе даже, там немного отсвечивает временами. Я видел баги в дотнете. Баги в виндовом рантайме и либах, баги в хреновой куче редистрибутаблов. И общее у них то - что почти никто и никогда это не чинит, сподвинуть MS на нормальный фикс, устраняющий проблему - эпопея! А если даже и чинят, то тайминги такие что можно от старости случайно помереть. Я просто сравнил с тем как оно у опенсорсников... ну... последний раз когда я мочил core-level баг в кернеле, заняло 2.5 дня, и это был крутой и кайфовый процесс. Вокруг майкрософта просто не бывает ничерта сравнимого. Экосистемой и культурой дева не вышли. Другой мир. Отличающийся, имхо, совсем не в лучшую сторону.

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

223. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноньимъ (ok), 24-Дек-21, 16:29 
>Не, никто понятия не имеет как его в дотнете вообще дебажить.

А сколько уже пытаются то задебажить?
Я могу за 1000$ решить проблему за 1-2 недели.

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

229. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 02-Янв-22, 12:31 
> А сколько уже пытаются то задебажить?

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

> Я могу за 1000$ решить проблему за 1-2 недели.

Ну, удачи в поиске клиентуры, все такое. А лучшее что в моей жизни было относительно MS и дотнета - развидеть все это наконец, хахаха! Я не спорю, денег там есть, но окружение - унылейший булшит.

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

52. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноньимъ (ok), 16-Дек-21, 03:00 
Шарп по скорости на уровне сипипи. Иногда может и обгонять в зависимости от опций сборки и погоды на марсе.
На нём успешно хайлоад делают.
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

60. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от penetrator (?), 16-Дек-21, 03:19 
медленней, но смотря что, смотря где, шарп настолько неоднороден, что под моно и коре на винде и линуксе может отличаться в разы в разные стороны, но плюсы обычно все-таки по-быстрее, не сильно, но оптимизированный плюсовый код задроченный под специальные инструкции CPU вообще вне конкуренции

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

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

195. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 10:53 
У toxcore на вики есть пример бота. Полстраницы тривиального си. Собрать можно минут за 10, потребление ресурсов такое что на домашнем роутере можно ботнет из чатботов запустить. Покажите удельную производительность :)
Ответить | Правка | Наверх | Cообщить модератору

66. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (3), 16-Дек-21, 04:11 
Хайлоад на чём только не делают. Собственно, так оно и превращается в хайлоад. Я видел какие-то бенчмарки для коре, но то, что сейчас в продакшене до сих пор, ни в какое сравнением с плючами поставить невозможно.
Ответить | Правка | К родителю #52 | Наверх | Cообщить модератору

142. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноньимъ (ok), 17-Дек-21, 09:03 
Хайлоад это когда выполнение задачи упирается в железо, а собственно код пишется таким образом чтобы не создавать ненужных помех и приближаться к теоретической производительности железа...

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

В крайнем случае вставкой ансейва шарп в С++ и превращается, что позволяет переоптимизировать  критические участки кода.

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

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

230. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (-), 02-Янв-22, 12:39 
Между нами, я затрудняюсь себе представить на .нете вон то, сабжевое :). Это было бы бессмысленно и беспощадно имхо.
Ответить | Правка | Наверх | Cообщить модератору

164. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от _kp (ok), 18-Дек-21, 01:09 
> Шарп по скорости на уровне сипипи. Иногда может и обгонять в зависимости
> от опций сборки и погоды на марсе.
> На нём успешно хайлоад делают.

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


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

Как то мне поставили задачу чисто вычислительный модуль на с# переписать, ну я и понаписал, грубо все, что ни есть то статики, выделения памяти в процессе работы строго по минимуму, уродливые глобальные структуры данных, безапасность почти поделил на ноль ...
но с быстродействием вышло действительно на уровне си, при 3х кратном перерасходе ОЗУ.
Только в таком стиле и не пишут, по причине низкой производительности труда и высокого риска ошибок, да и вне спортивного интереса, оно неприятно.
Итого: производительность с# на уровне си, только в специально написанном коде, но не в практичном повседневном.

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

53. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноньимъ (ok), 16-Дек-21, 03:01 
Гошка для такого подходит.
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

183. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 09:21 
> лучше бы на java/c# перепилили

Не думаешь же ты что тебе это напишут сишники, растеры и хаскелисты? А если и напишут, новый log4j получится, они же не в курсе ваших best practices...

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

78. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от СкажемДружноНа.НеНужно (?), 16-Дек-21, 09:53 
Альтернативу на хрусте пишут картошкины смузибои пускающие слюни на хрусты французских булок и трамвайчиков за соседней границей.
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

84. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от lombock (?), 16-Дек-21, 10:37 
альтернативу на хрустике пишут либо за деньги либо по глупости. потому что секурность в случае хрустика = 0. достаточно лишь:
1) выяснить кому принадлежит crates.io
2) и вспомнить как быстро улеглись страсти по модераторской команде.. напомню, там было дело об игнорировании своего же кока. это прям как комми и их спецмагазины для номенклатуры на фоне лозунгов о равноправии
Ответить | Правка | Наверх | Cообщить модератору

184. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 09:30 
Пилят и на расте, и на хаскеле, но медленно и печально. Видимо большинство рекламирующих это добро не пробовало на нем прогать.
Ответить | Правка | Наверх | Cообщить модератору

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

16. Скрыто модератором  +/
Сообщение от Анонн (?), 15-Дек-21, 23:49 
Ответить | Правка | Наверх | Cообщить модератору

18. Скрыто модератором  –1 +/
Сообщение от Аноним (33), 15-Дек-21, 23:53 
Ответить | Правка | Наверх | Cообщить модератору

38. Скрыто модератором  +2 +/
Сообщение от Пончик (?), 16-Дек-21, 00:57 
Ответить | Правка | К родителю #16 | Наверх | Cообщить модератору

68. Скрыто модератором  +/
Сообщение от gogo (?), 16-Дек-21, 05:33 
Ответить | Правка | Наверх | Cообщить модератору

19. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от Аноним (20), 15-Дек-21, 23:58 
Вы тот протокол видели? Там же сплошное смузи. Куда им работа с памятью да ещё в C
Ответить | Правка | Наверх | Cообщить модератору

25. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (-), 16-Дек-21, 00:24 
нда, когда говорили что си простой язык, они это восприняли как школьники
Ответить | Правка | Наверх | Cообщить модератору

27. Скрыто модератором  +/
Сообщение от Аноним (33), 16-Дек-21, 00:29 
Ответить | Правка | Наверх | Cообщить модератору

57. Скрыто модератором  +1 +/
Сообщение от Аноньимъ (ok), 16-Дек-21, 03:06 
Ответить | Правка | Наверх | Cообщить модератору

109. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (158), 16-Дек-21, 13:48 
Он реально простой. Даже чем-то на шелл смахивает. Есть правда куча всяких библиотек (OpenSSL), которые абсолютно невменяемое API предоставляют, похожее на пошаговую загрузку линукса, когда мне всё что нужно было - это зашифровать блок данных. Но большинство POSIX функций компактные и удобно используются.
Ответить | Правка | К родителю #25 | Наверх | Cообщить модератору

117. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (-), 16-Дек-21, 14:44 
вот и пример подъехал. наверное хруст не такая уж и плохая идея для любителей компактных функций. си очень сильно упрощает работу с память и стеком, вносит миллиард плюшек и батареек вроде аргументов функций, упаковок, макросов и тд. но вся эта поверхностная вакханалия создает впечатление что это очередной петон или жыэс. нет, это не так
Ответить | Правка | Наверх | Cообщить модератору

210. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 24-Дек-21, 06:49 
> Вы тот протокол видели? Там же сплошное смузи. Куда им работа с памятью да ещё в C

Протокол кстати получше чем у многих других. И никакого особого смузи, скорее наоборот, простенько и топорно настолько что расширить иногда проблема. Но это лучше чем XSLT трансформации, безразмерные XML и всякая вебдрянь блокируемая выносом 1 сайтика.

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

21. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Sw00p aka Jerom (?), 16-Дек-21, 00:12 
сразу видно, что программисты чсвешники, которые даже калькулятор не писали, а потом говорят зачем писать калькуляторы и базовые хелловорлды
Ответить | Правка | Наверх | Cообщить модератору

22. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 16-Дек-21, 00:18 
> как "length - 1 + 32 * 2 + 24", что приводило к перезаписи данных в стеке,

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

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

211. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (-), 24-Дек-21, 06:54 
> Но подождите, а где же миллиарды пользователей с валгриндами только и ждущие чего
> бы затестировать ?

Один из них как раз и зарепортил это. Сюрприз. Правда у него asan или ubsan, но тоже дело.

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

32. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от Зз (?), 16-Дек-21, 00:34 
Блин,да у них каждый UDP-пакет стэк портил, как оно вообще работало?
Ответить | Правка | Наверх | Cообщить модератору

40. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от Аноним (33), 16-Дек-21, 01:06 
Так у меня оно толком и не работало сколько не пробовал.
Ответить | Правка | Наверх | Cообщить модератору

63. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от penetrator (?), 16-Дек-21, 03:30 
все работало, вообще без проблем (кроме поиска по истории - жутко тупая вещь)

возможно там нихрена в стеке не было больше

мы же не знаем что оно затирало, может ничего

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

212. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 24-Дек-21, 06:58 
> Блин,да у них каждый UDP-пакет стэк портил, как оно вообще работало?

Не каждый а специально подготовленный. И кроме того небольшая порча стэка может оказаться не замеченой без инструментов типа asan/ubsan. Фэйл поймал некто с fuzzer'ом под asan и тут же и зарепортил. Кто хтел миллионы глаз - вы их и получили, это не эксплуатировалось и было исправлено через чуть ли не считаные часы после репорта. Судя по гитхабу и прочему, все причастные хорошо сработали.

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

46. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от Аноним (46), 16-Дек-21, 02:08 
Таки походу писать тесты иногда полезно
Ответить | Правка | Наверх | Cообщить модератору

64. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от penetrator (?), 16-Дек-21, 03:32 
а в тесте он точно также "протестирует" без скобок

или откуда он скопитырит по-твоему код для тестирования?

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

47. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –2 +/
Сообщение от Аноним (74), 16-Дек-21, 02:44 
> Из-за отсутствия скобок ...

Это дно какое-то. Со скобками всегда лучше перебдеть, чем недобдеть. А уж в ориентированном на безопасность софте и подавно.

Да и вообще, давно пора отправить этот велосипедный Tox на помойку.
Вместо Tox-а можно использовать тот же Jami, в котором почти не изобретают велосипедов, а адаптируют более-менее продуманные стандартные протоколы.

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

55. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (51), 16-Дек-21, 03:05 
> Это дно какое-то.

Ну, растаманы же путали больше-меньше... Почему бы другим не перепутать плюс-минус?

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

62. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноним (74), 16-Дек-21, 03:28 
> Почему бы другим не перепутать плюс-минус?

Здесь они ничего не перепутали. И это была не опечатка.
Здесь они не поставили скобки в том месте, где скобки сами просто напрашиваются.
Из-за этого возникают подозрения, что в их коде полным-полно подобного рас-π-здяйства.

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

92. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Crazy Alex (ok), 16-Дек-21, 11:37 
SIP в 21-м веке? И у них, блин, хоть где-то описана архитектура?
Ответить | Правка | К родителю #47 | Наверх | Cообщить модератору

106. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (74), 16-Дек-21, 13:42 
> SIP в 21-м веке?

SIP оформился в качестве стандарта считай в 21-м веке. А мобильные телекомы в постСовдепе прямо сейчас внедряют модно-молодёжный VoLTE, который на SIP-е построен. И в сетях 5G тоже для голоса SIP применяют.

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

> И у них, блин, хоть где-то описана архитектура?

Да, описана, в разных местах. Ищи. Но вот я не скажу, что описана она достаточно хорошо и подробно.

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

145. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –2 +/
Сообщение от Аноним (143), 17-Дек-21, 11:02 
Нужно было брать IAX2 из Астериска. Использует один единственный порт UDP и для сигнализации, и для медиа.
Ответить | Правка | Наверх | Cообщить модератору

159. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (74), 17-Дек-21, 17:51 
> Нужно было брать IAX2 из Астериска.

Да ну нафиг, IAX2 уже ДАВНО умер. Про него даже уже не вспоминают.
Это же реальная попытка откопать стюардессу, которая уже давным-давно лежит в могиле. Shame on you!

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

132. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от РастоманПитонофил (?), 16-Дек-21, 23:42 
Именно так. Есть лучше? или ты предлагаешь всё в вебню потому что большее не осилил?
Ответить | Правка | К родителю #92 | Наверх | Cообщить модератору

208. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 24-Дек-21, 05:17 
> SIP в 21-м веке? И у них, блин, хоть где-то описана архитектура?

Какой SIP? Вы о чем? У вон того какой-то свой протокол для всего. Он может быть на что-то похож, но идея больше всего напоминает "старый" скайп: пытается работать по udp если может, если не может, по tcp релеит.

В отличие от хипстерской дряни блокируемой 1 хостом эти имеют представление как надо было, с скайпа некоторые идеи слизали. Поэтому оно довольно много где работает, протыкая корпам всякие 443/3389 TCP например. А внутри локалки он и без внешки может запуститься, найдя себе подобных броадкастом/мультикастом.

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

98. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (99), 16-Дек-21, 13:04 
Ну тут нужно именно знать эту особенность чтобы не словить эту ошибку.
Никто в здравом уме не будет писать y = (x*2); или y = (x + x); Это именно тонкий момент с макросами.
Ответить | Правка | К родителю #47 | Наверх | Cообщить модератору

110. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от Аноним (158), 16-Дек-21, 13:57 
Это совсем базовое понимание, что макросы = копипаст в исходники, а не отдельная сущность. Тонкости — это, например, shortcircuit дабы убрать кучу повторяющихся if-error-panic, или цыганские фокусы с namescope дабы юзать одни и те же имена переменных в одной функции, но по факту обращаясь к разным участкам. А скобки в define — это ну прям база. Скажите ещё, что include - это не обычный копипаст объявлений, с которыми потом будет разбираться линковщик
Ответить | Правка | Наверх | Cообщить модератору

122. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноним (74), 16-Дек-21, 17:41 
> Никто в здравом уме не будет писать y = (x*2); ...

А вот так, например, можно и написать: y = z+(x*2);
Скобки в этом случае как бы и не нужны, но они явно улучшают читаемость кода.
И хуже от этих скобок уж точно не будет.

> Это именно тонкий момент с макросами.

Да нет здесь никаких тонких моментов. Во всяком случае для тех, кто имеет хоть какой-то опыт программирования на Си (не helloworld-а, разумеется).

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

123. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от anonymous (??), 16-Дек-21, 17:41 
Как только появится хоть одна полностью децентрализованная и шифрованная альтернатива, так сразу. Почему-то пограммисты предпочитают телеграм боты писать вместо нормального мессенджера.
Ответить | Правка | К родителю #47 | Наверх | Cообщить модератору

130. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (130), 16-Дек-21, 22:49 
Голодают
Ответить | Правка | Наверх | Cообщить модератору

72. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +3 +/
Сообщение от Аноним (72), 16-Дек-21, 07:48 
Есть Jami
Ответить | Правка | Наверх | Cообщить модератору

80. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –5 +/
Сообщение от Брат Анон (ok), 16-Дек-21, 10:03 
Есть неуловимый Джо. И он есть пока он неуловимый. Как только его кто-то поймает -- Джо становится бесполезным и уловимым. Как и твоё не надо.
Ответить | Правка | Наверх | Cообщить модератору

87. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (87), 16-Дек-21, 11:02 
Но в репозитории Fedora его нет.
Ответить | Правка | К родителю #72 | Наверх | Cообщить модератору

146. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (143), 17-Дек-21, 11:04 
У пользователей Fedora руки не оттуда?
Ответить | Правка | Наверх | Cообщить модератору

160. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (160), 17-Дек-21, 17:53 
У нас есть Pidgin.
Ответить | Правка | Наверх | Cообщить модератору

198. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 12:23 
> У нас есть Pidgin.

Под него сабж тоже есть. Хоть плагин и заброшеный, но компилится. И даже работает кой-как. Под фиолетового птица почти все что протокол есть, но реализации обычно такие же кривые как и сам птиц. Этот не исключение.


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

77. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (77), 16-Дек-21, 09:52 
Не используйте макросы. Если вы думаете, что понимаете их, вы ошибаетесь.
Ответить | Правка | Наверх | Cообщить модератору

86. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –4 +/
Сообщение от Аноним (-), 16-Дек-21, 10:54 
Сори бро, мы макросы понимаем
Ответить | Правка | Наверх | Cообщить модератору

93. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (93), 16-Дек-21, 11:56 
малолетки даже не понимают, что прочитали
Ответить | Правка | Наверх | Cообщить модератору

118. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 16-Дек-21, 14:48 
малолетки думают что они умнее всех
Ответить | Правка | Наверх | Cообщить модератору

85. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от InuYasha (??), 16-Дек-21, 10:53 
М-да. Программист сделал ошибку, в интернетах бурления недовольных. Я тоже порой делал ошибки, работал в полусне и засыпал на клавиатуре. На всё желаемое ни сил, ни времени не насрести.
И посмотрю я, как петон-жаба-раст спасут вас от недоставки скобок, ага. Даже математика третьего класса СОШ не спасёт.
Ответить | Правка | Наверх | Cообщить модератору

108. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноньимъ (ok), 16-Дек-21, 13:44 
Только Lisp спасёт!
Я это гарантирую!
Ответить | Правка | Наверх | Cообщить модератору

199. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 12:25 
> Только Lisp спасёт!
> Я это гарантирую!

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

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

207. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноньимъ (ok), 23-Дек-21, 19:36 
К зимней сессии готовься, угаратель.
Ответить | Правка | Наверх | Cообщить модератору

135. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от ist (?), 17-Дек-21, 01:15 
"Программист сделал ошибку" - а других программистов нет? коммиты принимаются без проверки? code review не делается?
Ответить | Правка | К родителю #85 | Наверх | Cообщить модератору

138. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Ordu (ok), 17-Дек-21, 07:45 
> Программист сделал ошибку, в интернетах бурления недовольных.

У опеннетовских растохейтеров подгорает, вот и бурления.

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

88. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от User_o0 (?), 16-Дек-21, 11:10 
Ох ну нашли же, что за кидание на вентилятор? Хоть один проект без дыр? Всё дырявое и точка.
Ответить | Правка | Наверх | Cообщить модератору

95. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от Аноним (72), 16-Дек-21, 12:08 
Ничего нет хуже смартфонов, а всё остальное, десктопное - около дела. Да, не без греха в коде, но всё же не мобильное изделие.
Ответить | Правка | Наверх | Cообщить модератору

214. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 24-Дек-21, 07:21 
> Ничего нет хуже смартфонов, а всё остальное, десктопное - около дела. Да,
> не без греха в коде, но всё же не мобильное изделие.

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

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

96. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (72), 16-Дек-21, 12:12 
У капиталистов ума не хватает финансировать что-то дельное. Энтузиастам чаще всего не комфортно в современном мире IT.
Ответить | Правка | Наверх | Cообщить модератору

97. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (99), 16-Дек-21, 13:01 
А зачем тут использовать макрос если можно использовать константу?
Ответить | Правка | Наверх | Cообщить модератору

111. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +2 +/
Сообщение от Аноним (158), 16-Дек-21, 14:04 
Константа - это переменная в памяти, просто компилятор ругается если изменять её. Макрос, лично для меня, в этой ситуации более напрямую выполняет свою функцию - подстановка текста. А константа может и с типами начать проблемы вызывать, или вообще не дай бог скастоваться в непонятно что.
Ответить | Правка | Наверх | Cообщить модератору

140. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  –1 +/
Сообщение от n00by (ok), 17-Дек-21, 07:54 
enum здесь чем плох?
Ответить | Правка | Наверх | Cообщить модератору

147. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (143), 17-Дек-21, 11:11 
Наверное, и constexpr тоже вариант.
Ответить | Правка | Наверх | Cообщить модератору

154. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от n00by (ok), 17-Дек-21, 12:24 
constexpr это уже Си++. Там и константы вариант:

const int maxarray = 255;
char store_char[maxarray];  // allowed in C++; not allowed in C

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

225. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (225), 02-Янв-22, 07:11 
Ты уверен?
https://godbolt.org/z/6fe6d6Gvs
Ответить | Правка | Наверх | Cообщить модератору

235. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от n00by (ok), 08-Янв-22, 14:16 
Абсолютно. Могли бы сменить версию стандарта, что бы было понятнее, что там на самом деле происходит: ISO C90 forbids array 'store_char' whose size cannot be evaluated (gcc 11.2).
Ответить | Правка | Наверх | Cообщить модератору

161. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (74), 17-Дек-21, 17:56 
> enum здесь чем плох?

Всем, в данном случае! Он вообще был создан совсем не для этого.

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

162. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от n00by (ok), 17-Дек-21, 18:14 
>> enum здесь чем плох?
> Всем, в данном случае!

Пару конкретных причин?

> Он вообще был создан совсем не для этого.

В смысле, следует ориентироваться не на текущий стандарт, а на цели Кернигана и Ритчи? Зачем-то "в реализации на PDP-11 со всеми перечисляемыми переменными оперируют так, как если бы они имели тип INT".

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

165. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (74), 18-Дек-21, 04:45 
Покажи код, а я расскажу, почему следует открутить твои @@.
Ответить | Правка | Наверх | Cообщить модератору

166. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от n00by (ok), 18-Дек-21, 08:15 
Ссылка на код приведена в новости.
Ответить | Правка | Наверх | Cообщить модератору

167. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (74), 18-Дек-21, 10:03 
Ну так и покажи, как ты enum-ом хочешь переписать эту строчку кода.
Ответить | Правка | Наверх | Cообщить модератору

168. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от n00by (ok), 18-Дек-21, 11:27 
Я хочу? Бремя доказательства утверждения "всем плох" лежит на заявителе.
Ответить | Правка | Наверх | Cообщить модератору

170. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (74), 19-Дек-21, 05:16 
Ты не петляй, не петляй.

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

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

Что ж, сделаю себе о регистранте n00by соответствующую "пометку на полях".

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

171. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от n00by (ok), 19-Дек-21, 10:01 
Из попыток объяснить мне, чем плох в данном случае enum, я понял, что тебе не нравится само слово enum, отсутствие префикса #, обработка после фазы препроцессора, наличие фигурных скобок и ещё масса каких-то факторов. Это прямо следует из обобщения "всем плох". Я хотел увидеть пару претензий к enum не на тему вкусовщины. Не вижу причин, по которым я якобы хочу их сам выдумывать.
Ответить | Правка | Наверх | Cообщить модератору

200. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 12:29 
> Пару конкретных причин?

1) Вообще не присутствует в препроцессоре.
2) Какому типу данных enum вообще соответствует? А, хрен его знает, прямо по стандарту? Удобно, удачи в валидации :)

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

204. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от n00by (ok), 23-Дек-21, 14:49 
Спасибо.

>> Пару конкретных причин?
> 1) Вообще не присутствует в препроцессоре.

Что в данном случае зависит от фазы трансляции?

> 2) Какому типу данных enum вообще соответствует? А, хрен его знает, прямо
> по стандарту?

В данном случае все в одной единице трансляции, даже в одном файле. Тип приводится к целому.

> Удобно, удачи в валидации :)

Макрос разве её прошёл? :)

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

213. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 24-Дек-21, 07:15 
> Что в данном случае зависит от фазы трансляции?

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

С #define или -DABCD=3 при компиле потом можно как-то так
#if (ABCD > 2)
...
С enum это не катит. Не существует он там. А в рантайм - уже не то. Это лишние падения, лишние ветки кода и проч.

> В данном случае все в одной единице трансляции, даже в одном файле. Тип приводится к целому.

Которому из таковых? У сей вообще странные взгляды на целые числа, можно увидеть если -Wconversion врубить. Проблема enum'а в том что вообще не специфицировано во что это превратится.

Еще интереснее что если сделать typedef на enum {OPTION1, OPTION2} - потом переменной с тем типом можно влегкую назначить 42 и это как бы ок. Правда в gcc11 статический анализер научился такое замечать, но вообще это надо было в стандарте прописать, а не так.

>> Удобно, удачи в валидации :)
> Макрос разве её прошёл? :)

Он не прошел sanity check на использование скобок. Впрочем, с типами там не сильно лучше enum, однако это хоть как-то специфицировано стандартами.

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

222. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от n00by (ok), 24-Дек-21, 15:31 
>> Что в данном случае зависит от фазы трансляции?
> Скажем так, невидимость штуки в препроцессоре зарубает многие вещи. Даже просто прочекать
> что-нибудь на фазе парсинга нельзя.
> С #define или -DABCD=3 при компиле потом можно как-то так
> #if (ABCD > 2)
> ...
> С enum это не катит. Не существует он там. А в рантайм
> - уже не то. Это лишние падения, лишние ветки кода и
> проч.

В общем случае это верно, но к данному частному не относится.

>> В данном случае все в одной единице трансляции, даже в одном файле. Тип приводится к целому.
> Которому из таковых? У сей вообще странные взгляды на целые числа, можно
> увидеть если -Wconversion врубить. Проблема enum'а в том что вообще не
> специфицировано во что это превратится.

В данном случае -Wconversion не покажет.

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

231. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 02-Янв-22, 12:49 
> В общем случае это верно, но к данному частному не относится.

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

> В данном случае -Wconversion не покажет.

В данном - не покажет. Но вообще, enum'ы с их "а хрен бы его знает что это за тип" довольно странная зверушка. У сей довольно специфичные идеи насчет работы с целыми, но с enum они смогли сделать это еще более странно. Так то обычно работает, но капканы все же есть. Или можно получить совершенно угарные warning на ровном месте при попытке хорошего анализа кода на фазе компиляции и статического анализа, при том - валидные. Некоторые вещи в стандартах задефайнены не очень хорошо, типизация enum одна из таковых.

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

236. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от n00by (ok), 08-Янв-22, 14:48 
Спасибо, единообразие это аргумент. С другой стороны кто-то может захотеть вынести все макросы в заголовочный файл, который включают все подряд, а enum это затруднит.
Ответить | Правка | Наверх | Cообщить модератору

100. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноним (99), 16-Дек-21, 13:08 
А если собирать с разными оптимизациями, то компилятор не мог вычислить значение макроса и подставить в код уже его? И результат был бы другим.
Ответить | Правка | Наверх | Cообщить модератору

114. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноним (158), 16-Дек-21, 14:29 
Компиляция в Си происходит как минимум четырьмя отдельными программами.

1. Макропроцессор. Он изменяет исходный код ТОЛЬКО с помощью своих команд. Он НЕ смотрит в сами исходники и ему в целом по барабану на всё, что не #... На его работу можно посмотреть с помощью флага -E

2. Компилятор. Он обрабатывает уже отредактированный макропроцессором код. Он производит все оптимизации и превращает Си в ассемблерный код, НО ЕЩЁ НЕ В БИНАРЬ. На его работу можно посмотреть флагом -S

3. Ассемблер. Он собирает всё ещё читабельный ассемблерный код в понятный для процессора бинарь. Это ещё не готовая программа, поскольку в бинаре нету всяких данных, даже названия функций к которым делается call не определены, но это уже оптимизированный код, который имеет смысл хранить отдельно, чтобы не заниматься каждый раз компиляцией всего проекта заного. Флаг -c

4. Линковщик. Он превращает все объекты в ИСПОЛНЯЕМЫЙ файл (для линукса и макоси ELF). По сути он собирает из всех .o файлов архив и подставляет всю метадату: откуда брать функцию read, какие библиотеки подгружать из /usr/lib, и т.д. Само собой, этот файл будет работать ТОЛЬКО на системе, которая во первых умеет читать ELF (например, уже рантайм линкером ld-linux-x86-64), и во вторых если после копипаста файлика все пути до библиотек и их версии совпадут (сверяются тупо строки внутри ELF и библиотек, гляньте objdump). Можно собирать статичные файлики, т.е. те, которые весь код берут с собой и в рантайм линковке не нуждаются, но и весить они будут как ваш код + все библиотеки, которые использовались (причём рекурсивно, библиотеки тоже могут использовать библиотеки), в сумме.

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

115. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +1 +/
Сообщение от Аноним (158), 16-Дек-21, 14:33 
да, ответ на вопрос так и не написал. Макросы просто копипастятся в то место, где вы использовали своё define слово. Т.е. для компилятора один и тот же ABC макрос в двух разных местах будет двумя разными участками кода, БУКВАЛЬНО
Ответить | Правка | Наверх | Cообщить модератору

141. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от n00by (ok), 17-Дек-21, 08:01 
> Компиляция в Си происходит как минимум четырьмя отдельными программами.

Стандарт формально определяет раздельные фазы трансляции (макросы разворачиваются на 4-й), но не обязывает реализовать их в виде отдельных программ (Implementations shall behave as if these separate phases occur, even though many are typically folded together in practice).

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

185. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (-), 23-Дек-21, 09:41 
Это вообще препроцессор разбирает. И на приоритете операций случился облом. Задумка была правильная, а вот правильно использовать макросы они научились получив CVE. Эффективный стимул RTFM получился.
Ответить | Правка | К родителю #100 | Наверх | Cообщить модератору

139. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от n00by (ok), 17-Дек-21, 07:50 
81.2. Помещайте тело макроса и его аргументы в круглые скобки.

Это правило одно из основных, но я обнаружил, что множество людей, пользующихся С ежедневно, его забыли. Вот классическая задача:
#define TWO_K 1024 + 1024

Ален И. Голуб, "Веревка достаточной длины, чтобы выстрелить себе в ногу".

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

172. "Переполнение буфера в Toxcore, эксплуатируемое через отправк..."  +/
Сообщение от Аноним (172), 20-Дек-21, 08:00 
> В качестве обходного пути защиты можно отключить использование UDP, оставив поддержку TCP.

Все так и делают, иначе TOX через TOR не завернешь.

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

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

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




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

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