|
2.3, A.Stahl (ok), 12:15, 15/02/2018 [^] [^^] [^^^] [ответить]
| +13 +/– |
В своё время была истерия по поводу goto в результате которой про эту команду уже не каждый программист и знает-то иначе кроме как из анекдотов.
Может стоит среди скриптовиков поднять такую же бучу по поводу eval?
| |
|
3.17, pavlinux (ok), 14:01, 15/02/2018 [^] [^^] [^^^] [ответить]
| –9 +/– |
> goto в результате которой про эту команду уже не каждый программист и знает-то
Это копипастакодеры, а не программисты.
| |
3.38, eganru (?), 17:09, 15/02/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
...
__label__ exit;
for(u32 foo = HUGE; foo; --foo){
for(u32 bar = HUGE2; bar; --bar){
if(unlikely(cond(bar)){
foobar(foo, bar);
goto exit;
}
}
}
exit:
...
| |
|
4.71, Аноним (-), 22:30, 15/02/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
Вложенный цикл лучше в отдельную функцию выделить, и goto станет не нужен.
| |
|
5.77, eganru (?), 00:15, 16/02/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
лучше в отдельную функцию выделить - и это будет яркий пример костыля(лишь бы не использовать goto). и дело не только в затруднении читаемости кода на ровном месте.
ясное есть языки без goto. и ничего.
я последние годы пишу на С и asm. в воображаемом мире пугливые розовые единороги решают все свои проблемы избежанием goto.
в реальном мире есть куча куда как более глубоких логических промахов, с которыми не всегда ясно, что вообще делать.
| |
|
6.82, iPony (?), 05:58, 16/02/2018 [^] [^^] [^^^] [ответить]
| –4 +/– |
> в воображаемом мире пугливые розовые единороги решают все свои проблемы избежанием goto.
Кстати про единорогов... Правильность кода - это не пустые слова.
Можешь хоть сколько смеяться, но когда вот такое <CENSORED> пишут не для чисто своей подделки, то за это надо бить томиком чего-нибудь этакого фундаментального по голове.
| |
|
7.87, eganru (?), 08:32, 16/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
этакого фундаментального по голове - я неоднократно видел как куски <CENSORED> своими фундаментальными томами вгоняли в гроб трезвые идеи.
по поводу goto - можете к слову полезть поспорить к Adam Dunkels с его protothreads (c labels as values). рассказать ему как Вы круто все знаете.
*впрочем спорить не намерен. ясное дело что в своих кодах Вы можете делать что хотите.
| |
|
|
5.113, anomymous (?), 12:55, 17/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Вложенный цикл лучше в отдельную функцию выделить, и goto станет не нужен.
Даёшь каждому циклу по функции. А лучше - по целому классу.
... о времена, о нравы ...
| |
|
4.80, Аноним (-), 02:30, 16/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
...
bool cancel = false;
for(u32 foo = HUGE; foo && !cancel; --foo){
for(u32 bar = HUGE2; bar && !cancel; --bar){
if(unlikely(cond(bar)){
foobar(foo, bar);
cancel = true;
}
}
}
...
| |
|
5.88, mickvav (?), 09:26, 16/02/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
По производительности уступает варианту с goto. Всё в функцию и return - это да.
| |
|
6.90, eganru (?), 11:12, 16/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
на создание дополнительной функции должны быть серьезные аргументы.
добавит ли в таком случае функция ясности? точно нет. зачем тогда кого-то этим всем путать?
| |
|
7.104, А (??), 23:13, 16/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> на создание дополнительной функции должны быть серьезные аргументы.
> добавит ли в таком случае функция ясности? точно нет. зачем тогда кого-то
> этим всем путать?
Конечно. Гораздо же лучше одна функция на тысячи две строк и с кучей вложенных друг в друга циклов. С массой goto в произвольные места. Печатаешь потом такую <censored>, прибиваешь распечатку на стену от потолка до пола и разноцветными маркерами размечаешь начала и окончания разных вложенных друг в друга циклов. Очень эффективный метод изучения того что же это <censored> делает. Прежде чем его выбросить в мусор, заменив на обозримый и читабельный код...
| |
|
|
5.114, anomymous (?), 12:56, 17/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
>[оверквотинг удален]
> for(u32 bar = HUGE2; bar && !cancel; --bar){
> if(unlikely(cond(bar)){
>
> foobar(foo, bar);
>
> cancel = true;
> }
> }
> }
> ...
Сами догадаетесь, почему этот метод является ущербным?
| |
|
4.119, Аноним (-), 15:59, 17/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
for(u32 foo = HUGE; foo; --foo){
for(u32 bar = HUGE2; bar; --bar){
if(unlikely(cond(bar)){
foobar(foo, bar);
foo = 0;
break;
}
}
}
| |
|
3.58, adolfus (ok), 19:19, 15/02/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
GOTO -- нормальная команда. Без нее нет жизни. Для выскочить из вложенного цикла при синтаксическом разборе вообще нет альтернативы. Везде, где использование GOTO дает выигрыш в ясности и производительности, его нужно использовать.
| |
|
4.60, A.Stahl (ok), 19:41, 15/02/2018 [^] [^^] [^^^] [ответить]
| –1 +/– |
Ты забыл сообщить нам что вода мокрая и у квадрата целых 4 прямых угла.
| |
4.66, Аноним (-), 20:59, 15/02/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
> вложенного цикла
А нечего вложенные циклы лепить. Функциональщики и вовсе без них как-то живут, и ниче.
| |
|
5.69, Аноним (-), 22:20, 15/02/2018 [^] [^^] [^^^] [ответить]
| –4 +/– |
Функциональщики и прочие маргиналы неплохо обходятся и без программирования вообще - пишут полторы хрени на всю планету, которые погоду не делают. А чтобы страдать этим - используют софт и операционки писаные на чем-нибудь "менее функциональном" и все такое.
С питонистами тоже прикольно вышло. Они так на пхп пшикали, а оказалось что от пхпшников отличаются только названием своего фетиша.
| |
5.141, Аноним (-), 12:30, 21/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Функциональщики и вовсе без них как-то живут
У функциональщиков есть лямбды
| |
|
4.89, mickvav (?), 09:29, 16/02/2018 [^] [^^] [^^^] [ответить]
| –1 +/– |
> GOTO -- нормальная команда. Без нее нет жизни. Для выскочить из вложенного
> цикла при синтаксическом разборе вообще нет альтернативы. Везде, где использование GOTO
> дает выигрыш в ясности и производительности, его нужно использовать.
Если синтаксический разбор делать yacc-ом, то все goto он создаст сам, а в коде на нём уже никакие goto не нужны. Как следствие - исходный код чист, но не совсем на C ;)
| |
|
3.84, Онаним (?), 06:09, 16/02/2018 [^] [^^] [^^^] [ответить]
| –2 +/– |
Согласен. В школьные годы всегда считал, что в каждом нормальном языке должна быть возможность загрузить код на нём из строки, и GOTO мне нравилась, но только чуть подрос - сразу понял, что и то и то - зло.
| |
|
4.123, Аноним (-), 20:31, 17/02/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
> но только чуть подрос - сразу понял
Насколько "чуть"? Полгода хотя бы прошло?
| |
|
|
4.116, anomymous (?), 12:57, 17/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Про ассемблерный JMP такой бучи не было
Вот да, только хотел предложить убрать JMP и оформлять всё CALL/RET'ами.
| |
|
|
2.32, pda (?), 15:48, 15/02/2018 [^] [^^] [^^^] [ответить]
| +3 +/– |
Т.е. использование eval() вас смущает, а широковещательная рассылка сообщений с попыткой их расшифровки и масштабирование этой схемы на весь мир - нет? ;-)
| |
|
3.42, Аноним (-), 17:39, 15/02/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
> а широковещательная рассылка сообщений с попыткой
> их расшифровки и масштабирование этой схемы на весь мир - нет?
> ;-)
И что именно там смущать должно?
| |
|
4.142, Аноним (-), 12:35, 21/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
>> а широковещательная рассылка сообщений
> И что именно там смущать должно?
Может то же самое, что и вариант чисто широковещательного TCP без маршрутирования? Пускай все пакеты получают все узлы, кто получил чужой - просто дропает.
| |
|
3.70, Аноним (-), 22:30, 15/02/2018 [^] [^^] [^^^] [ответить] | +/– | Ты все правильно понял, у штуки проблемы с масштабированием В конце концов хипс... большой текст свёрнут, показать | |
|
|
|
2.6, курлык курлык (?), 12:36, 15/02/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ага, не проверите границы массивов в С - привет переполнение, рут права... Не в питоне дело, а в людях.
| |
|
3.14, Аноним (-), 13:51, 15/02/2018 [^] [^^] [^^^] [ответить]
| –1 +/– |
Используй range-based for loop, передавай по ссылке, и не будет переполнения.
| |
|
|
5.18, Аноним (-), 14:04, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
В Си есть макросы.
Python лучше сравнивать с C++. Си - скорее системный язык.
| |
|
6.135, Аноним (-), 21:42, 19/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> В Си есть макросы.
Для любителей хайлевела на си есть libcello. Там и итераторы есть, и лямбды, и чего там еще. Си вообще штука довольно гибкая на самом деле.
| |
|
7.139, Аноним (-), 22:30, 19/02/2018 [^] [^^] [^^^] [ответить] | +/– | Но и скорость у этого либчелло соответствующая, ближе к жабе и ЖС Сборщик мусо... большой текст свёрнут, показать | |
|
|
|
6.62, Он самый (?), 19:56, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
... а мы будем и дальше за границы массива выходить. Думаю так задумывалось
| |
|
7.67, Crazy Alex (ok), 21:08, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Э... кем задумывалось? Если обо мне речь - то наоборот, я не вижу ни одной причины писать на сях там, где можно писать на плюсах. Ну, или D в режиме "better C" - и там и там можно получить сравнимую проиводительность и потребление с сильно уменьшенными шансами на сишные ошибки и гораздо лучшую читабельность.
| |
|
|
|
|
3.16, Аноним (-), 13:59, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Питон - высокоуровневый язык. И программист, и пользователи за это платят гигантскую цену - капитальный жор памяти и ресурсов итоговым приложением. И при этом питон даже не обеспечивает безопасноть...
| |
|
4.19, нах (?), 14:06, 15/02/2018 [^] [^^] [^^^] [ответить]
| –2 +/– |
удивленно глядя на пару питоновских сервисов (не микро, в смысле, не падают, их не надо быстро-быстро-клонировать) - что я делаю не так, что у меня никаких ужасов не наблюдается?
> И при этом питон даже не обеспечивает безопасноть...
к счастью. А то зачем нам еще одна жаба-EE?
| |
|
5.25, Аноним (-), 14:40, 15/02/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
Дело не в Ваших сервисах. Дело в том, что подобные вещи пропагандируются и пропихиваются как стандарт разработки прикладного ПО массового потребления. И в результате экономия нескольких часов программистов выливается в миллионы потерянных минут пользователями по всему миру. Примеры: ubuntu software center, который запускался минутами, и который Canonical так и не удалось доработать до приемлемой скорости работы; скайпом (я знаю что он не на питоне) и т.д. При том общепризнанный факт - питон не быстрый на столько, что это надо учитывать.
| |
|
6.26, Аноним (-), 14:52, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
убунтовцы упаковщики, а не разработчики.
если у них нет денег, чтобы спроектировать и заплатить за нормальный Sowftware Center, это не значит, что "стандарт".
Вон стим почему-то на спп написан и работает хорошо. А это гораздо более массовый продукт, чем сама убунта.
| |
|
7.35, Аноним (-), 16:29, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Стим работает приемлемо. Не так плохо, как скайп, но и не хорошо. При том до этого лет 10 работал плохо.
| |
|
6.51, Anonymoustus (ok), 18:06, 15/02/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
> И в результате экономия нескольких часов программистов выливается в миллионы потерянных минут пользователями по всему миру.
Всё правильно. Поэтому надо строить фабрики по сжиганию программистов. Слишком их много стало, обленились и обнаглели.
| |
|
|
|
3.29, Iaaa (ok), 15:25, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Точнее не в людях, а в пороге вхождения.
Пока научишься на С делать что-то удобоваримое, поневоле изучишь базовые понятия правильного кодирования; а в питонах всяких или, прости господи, джаваскриптах - xуяк, xуяк и ты уже что-то написал и запустил, можешь гордиться и распространять. Не имея вообще никакого понятия о правилах хорошего тона.
Беда.
| |
|
2.47, Аноним (-), 17:55, 15/02/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Питон, одним словом.
А что скажут анонимные аналитки о недавней уязвимости в КДЕ?
https://www.opennet.dev/opennews/art.shtml?num=48038
> Уязвимость в KDE, позволяющая выполнить код при подключении внешнего носителя
> Если метка раздела VFAT содержит символы '' или $(), то при монтировании через диалог с уведомлением о подключении устройства данные символы интерпретируются как команды shell.
Тоже питон виноват? :)
| |
|
3.124, Аноним (-), 10:37, 18/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Втыкал флешку в Plasma 5.10 с меткой тома 'kcalc', не запускается. Похоже, что именно в 5.12.0 эту "фичу" запилили.
| |
|
|
1.7, Пиони (?), 12:46, 15/02/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +8 +/– |
Кучу лет пишу на Питоне, и до сих пор не встречал ситуаций где нужно было бы использовать eval
| |
|
2.8, анончег (?), 13:12, 15/02/2018 [^] [^^] [^^^] [ответить]
| +8 +/– |
Это Вы эталонную реализацию клиента для p2p-сети Bitmessage ещё не пробовали писать! Вот там без eval-а никак!
| |
|
3.9, Анонй (?), 13:26, 15/02/2018 [^] [^^] [^^^] [ответить]
| +7 +/– |
Если без eval никак да еще и со взодящими данными то это уже вопрос компетентности писателя
| |
|
4.10, A.Stahl (ok), 13:35, 15/02/2018 [^] [^^] [^^^] [ответить]
| +5 +/– |
Не знаю как там с компетентностью писателей, но твой детектор сарказма явно неисправен :)
| |
4.22, Аноним (-), 14:15, 15/02/2018 [^] [^^] [^^^] [ответить]
| –2 +/– |
Говорить о компетентности среди гвидобейсиководов, это как говорить в доме повешенного о верёвке.
| |
|
5.45, Аноним (-), 17:48, 15/02/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Говорить о компетентности среди гвидобейсиководов,
https://www.opennet.dev/opennews/art.shtml?num=48038
> Уязвимость в KDE, позволяющая выполнить код при подключении внешнего носителя
> Если метка раздела VFAT содержит символы '' или $(), то при монтировании через диалог с уведомлением о подключении устройства данные символы интерпретируются как команды shell.
Всегда знал, что кедерасты на самом деле латентные гвидобейсиковцы!
| |
|
|
|
2.43, Аноним (-), 17:44, 15/02/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
Пишу на perl и не один раз встречал ситуацию где оптимальнее использовать eval. На самом деле ничего страшного нет если уметь пользоваться. Если уж совсем расширять возможности, что perl позволяет, к примеру, блочить/разрешать на выполнение определенных операторов. Ругаться на eval - это как ругаться на ножи, это как инструмент (как goto). Дело в том кто и как используется, а проблема в инструменте.
| |
|
3.52, Anonymoustus (ok), 18:09, 15/02/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
Иногда (в ИТ — очень часто) проблема в инструменте. Точнее в том, что не существует способов не дать обезьяне в руки гранату. А дальше уже обезьяна найдёт способ отыскать в гранате чеку.
| |
|
4.61, Аноним (-), 19:56, 15/02/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вы видите проблему в инструменте, но проблема возникает чуть раньше - когда обезьяна попадает в ИТ индустрию. Если сделать невозможным попадание обезьян в ИТ, то проблем в инструменте нет. Так что ..
| |
|
5.65, Аноним (-), 20:58, 15/02/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Вы видите проблему в инструменте, но проблема возникает чуть раньше - когда
> обезьяна попадает в ИТ индустрию. Если сделать невозможным попадание обезьян в
> ИТ, то проблем в инструменте нет. Так что ..
И кто же тогда будет писать и переписывать "приложения" для браузеров, менять местами кнопочки, скруглять и распрямлять рамочки?
| |
|
6.78, Аноним (-), 00:51, 16/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> И кто же тогда будет писать и переписывать "приложения" для браузеров, менять местами кнопочки, скруглять и распрямлять рамочки?
Действительно, я упустил из виду необходимые и важные для обезьян вещи.
| |
|
5.73, Anonymoustus (ok), 22:36, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Вы видите проблему в инструменте, но проблема возникает чуть раньше - когда
> обезьяна попадает в ИТ индустрию. Если сделать невозможным попадание обезьян в
> ИТ, то проблем в инструменте нет. Так что ..
А как это сделать? Раньше этому препятствовал сравнительно высокий порог вхождения. Сегодня не препятствует ничто. Фреймворки «Для обезьян» и книги «Как стать гуру написания гoвнoкoда за 3 часа» общедоступны.
| |
|
4.117, anomymous (?), 12:59, 17/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Иногда (в ИТ — очень часто) проблема в инструменте. Точнее в том, что не
> существует способов не дать обезьяне в руки гранату. А дальше уже
> обезьяна найдёт способ отыскать в гранате чеку.
Проблема не в инструменте. Проблема в доступе обезьяны к таковому.
| |
|
3.94, Аноним (-), 14:26, 16/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Вы не путайте перловый эвал, который eval { code here ; } с питоновским эвалом, который принимает строку.
| |
|
4.97, Аноним (-), 14:40, 16/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Вы не путайте перловый эвал, который eval { code here ; }
> с питоновским эвалом, который принимает строку.
подскажите в чем отличие?
Перл может евалить как выражение, так и блок по сути
это вопрос контекста
| |
4.106, Аноним (-), 06:16, 17/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
В перле две формы eval'a, если что: eval { }, оно не влияет на скорость выполнения и используется как замена эксепшонов, и обычный медленный eval "string" (широко используется для загрузки модулей в рантайме, например).
| |
|
3.95, Аноним (-), 14:37, 16/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Честно говоря не встречал в перле случаев, когда
евал нужен не для обработки исключения.
Я инженер правда, не зарабатываю деньги на перле,
но он мне необхадим как язык. А скажите, реально,
когда еще оптимально использовать этот оператор?
Так, чисто опыта для.
| |
|
2.76, Аноним (-), 23:37, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Кучу лет пишу на Питоне, и до сих пор не встречал ситуаций
> где нужно было бы использовать eval
Либо вам не надо было встраивать бекдоры, либо вы взяли что-то похитрее вроде pickle
| |
|
3.85, pangolin (?), 08:24, 16/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
на самом деле pickle для внешних данных это тоже бекдор :)
Если нужно обмениваться сложными данными - используйте json/xml/yaml и т.п. ну или свой язык реализуйте...
| |
|
4.132, Аноним (-), 18:42, 18/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> на самом деле pickle для внешних данных это тоже бекдор :)
Именно так. Но половина пакетов поставляется с пиклами. Вторая половина не имеет механизмов серализации вообще и пишет в доках "для сериализации юзайте пикл".
| |
4.136, Аноним (-), 21:51, 19/02/2018 [^] [^^] [^^^] [ответить] | +/– | Понимаешь, веб-макака, шифрованные сообщения и криптографические ключи не очень ... большой текст свёрнут, показать | |
|
|
|
1.11, Аноним (-), 13:42, 15/02/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Вот вам и типа безопасные языки. И они от уязвимостей не застрахованы, а то тут принято на Сишечку наезжать.
| |
|
2.20, Аноним (-), 14:10, 15/02/2018 [^] [^^] [^^^] [ответить]
| +3 +/– |
Фронты производительности, потребления ресурсов и безопасности питона прорваны. Кросплатформенности никогда и не было. Теперь у питонистов один аргумент - скорость разработки. И то C++ Qt ставит его под большой вопрос.
| |
|
3.125, Аноним (-), 10:42, 18/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Такое и других скриптовых языков может касаться и исполняемой в JVM Жабы тоже.
| |
|
2.39, PnDx (ok), 17:17, 15/02/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
php не менее безопасный. И (местами) более производительный. А толку?
| |
|
|
2.120, Нанобот (ok), 16:17, 17/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Бэкдор - это если добавлено умышленно с целью получения несанкционированного доступа. И я в жизни не поверю, что рядовой аноним опеннета владеет ясновидением и может гарантировано отличить "умышленно" от "неумышленно"
| |
|
3.121, Аноним84701 (ok), 18:02, 17/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Бэкдор - это если добавлено умышленно с целью получения несанкционированного доступа.
"Правдоподобное отрицание" (plausible deniability), как термин, не зря придумали.
PS:
> И я в жизни не поверю, что рядовой аноним опеннета владеет ясновидением
Зачем владеть?
[CODE]
% ll /dev/crystalball
crw-r----- 0 ??? ??? 0x?? Jan 31 2021 /dev/crystalball
% ll /lib/libastral*
-rw-r----- 777 ??? ??? ??? Feb 29 2033 /lib/libastral.so.42
[/CODE]
Правда да, есть временные сложности с доступом к оборудованию.
| |
|
|
1.13, Xasd (ok), 13:48, 15/02/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +4 +/– |
> Проблема вызвана применением в коде функции eval(), в которой выполнялось содержимое, составленное на основе внешних данных
вот бывают же идииоты..
человеку не хватило возможностей языка СВЕРХвысокого уровня и он решил расширить их за счёт eval()
| |
|
2.27, Аноним (-), 14:54, 15/02/2018 [^] [^^] [^^^] [ответить]
| +5 +/– |
Люди не хотят думать и работать. Поэтому питон, электрон и им подобные в тренде. Вот только выясняется, что не панацея, что думать то все равно надо...
| |
|
|
2.28, Аноним (-), 15:08, 15/02/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
Второй вполне себе напоминает бэкдор:
address = userInput("What address would you like to subscribe to?")
...
address_information = api.decodeAddress(address)
address_information = eval(address_information)
| |
|
|
4.137, Аноним (-), 21:55, 19/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Это божественно
С каких пор codermonkey относят к священным животным?!
| |
|
|
|
|
2.118, anomymous (?), 13:01, 17/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
>> 2018
>> уязвимость с eval
Не просто уязвимость с eval, а передача untrusted input для выполнения в eval.
Это отдельная, элитная категория.
| |
|
1.31, Аноним (-), 15:42, 15/02/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
~/.electrum/wallets/
Они же шифрованные, пока пароль не введёшь Electrum не знает что с ними делать. Толку их копировать?
| |
|
2.34, Аноним (-), 16:27, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Ну может пароль в глобальной переменной? скриптонщиков всего можно ожидать. Тогда в контексте eval он будет. Осталось его только вывести как и содержимое кошельков.
| |
|
|
2.40, PnDx (ok), 17:22, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> а дальше беспощадный брут
Делать больше нечего? Вешаешь кей-логгер. Если не терпится, можно спровоцировать ребут. eval в дикой природе — прекрасен. </sarcasm>
| |
|
1.37, Аноним (-), 17:04, 15/02/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
я, видимо, туповат.
Поясните, пожалуйста, какая взаимосвязь между
PyBitmessage (никогда о нем не слышал)
и Electrum (использую)
кроме как язык ЯП?
| |
|
2.57, Crazy Alex (ok), 18:39, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
То, что Bitmessage используют в основном те, кто занимается криптовалютами - оно и родилось из разговоров на bitcointalk, если я правильно помню.
| |
|
3.59, Аноним (-), 19:20, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
я с 2013-го года имею дело с криптой
в основном по работе
ни разу не слышал про Bitmessage
чего тока люди не готовы написать на питоне :)
спасибо за инфо буду на хайпе теперь.
| |
|
4.68, Crazy Alex (ok), 21:17, 15/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
По-моему хайп на эту тему был лет пять назад, вместе с хайпом по поводу неймкоина, так что здесь вы чуток опоздали ;-)
Есть разница между утверждением "большинство тех, кто связан с криптой, пользуются bitmessage" и "Большинство тех, кто пользуется bitmessage, связаны с криптой". Я говорил о втором - в основном это разного рода cypherpunks и прочие криптоанархисты, но и некоторые из core пользовались. Даже в BIP попало - https://github.com/bitcoin/bips/commits/master/bip-0047.mediawiki
| |
|
3.130, Аноним (-), 17:58, 18/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> То, что Bitmessage используют в основном те, кто занимается криптовалютами
Его пишут хипстеры и пользуются такие же хипстеры. Даже не панки. Cypherpunks при взгляде на это быстро понимают куда ветер дует и сносят от греха этот кусок питона. И таки циферпанков настолько халявно и нагло все-таки не нагревают.
| |
|
|
1.49, Anonymoustus (ok), 18:02, 15/02/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
> Атаке подвергся в том числе Peter Šurda, создатель Bitmessage, ключи которого были скомпрометированы.
Это прекрасно и православно.
| |
1.74, Аноним (-), 22:59, 15/02/2018 [ответить] [﹢﹢﹢] [ · · · ] | +1 +/– | Это не уязвимость, а бекдор Если проект использует eval, compile, pickle, shelv... большой текст свёрнут, показать | |
|
2.91, Аноним (-), 11:32, 16/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Насчет бэкдора - согласен.
Насчет припарок к питону - нет. Так можно на каждый скрипт лепить сложную систему, которая не защитит в результате ни от чего. Почему не настроить профиль Selinux или Apparmor? Профиль на конкретное приложение, а не на сам питон.
| |
|
3.103, Аноним (-), 22:43, 16/02/2018 [^] [^^] [^^^] [ответить] | +1 +/– | Сама по себе система не защищает Зато она даёт индикацию, что может скомпромити... большой текст свёрнут, показать | |
|
2.101, Crazy Alex (ok), 20:25, 16/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
Милашка.
Как простыню бреда писать - так пожалуйста, как запостить туда, где она хоть как-то условно была бы уместна - "Регаться на баг-трекере не буду, залейте туда текст этого сообщения за меня".
| |
2.131, Аноним (-), 18:01, 18/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Это не уязвимость, а бекдор.
Знаешь, если хоть раз в жизни bitmessage увидеть - это таки может быть и уязвимость. Он целиком являет собой кусок наколенной стремной кривизны. Так что это всего лишь вишенка на торте, а вовсе не какое-то там исключение. Протокол непродуманный, костыли навешивали по ходу пьесы и эти костыли больно лупили по практическому использованию. Чего такое удивление очередному мелкому тупняку? Эта штука целиком состоит из "сперва накодим, потом подумаем". Обычное дело для питонистов.
| |
|
3.133, Аноним (-), 18:45, 18/02/2018 [^] [^^] [^^^] [ответить]
| +/– |
>Чего такое удивление очередному мелкому тупняку?
Тупняк это, возможно, мельтдаун. eval же удаленной строки данных - это не тупняк, это бекдор самый натуральный, слепым шеллом называется.
| |
|
4.138, Аноним (-), 22:04, 19/02/2018 [^] [^^] [^^^] [ответить] | +/– | Ты все-же посмотри код этого bitmessage, или вообще попробуй его скачать Что ту... большой текст свёрнут, показать | |
|
|
|
|