Впрочем, не всегда можно скомпилять себе тулчейн.
Я тоже этим всем занимаюсь.
Часто приходится инлайнить обфусцированный код для создания строк, при помощи forсeinline и alloca.
В коде это выглядит как sprintf(buf, CSTRA(«top secret»), ...);
Я бы искал во внутренних структурах ld-linux*.
Собственно, именно он и занимается обработкой LD_PRELOAD и аналогичной фигни.
Поэтому факт загрузки по LD_PRELOAD чего-то оставит в нем следы.
Если нужно с полпинка поднять специализированный веб-сервер, то есть вполне современный вариант на Java и Netty.
То есть, общий вывод из этого такой.
Сервить странички на C++ в 2019 году нужно только разве что, если у вас там глубокий embedded и вы занимаетеь байтоеб… ом.
Обновление публикации #2: Какие еще иски и к каким компаниям недавно предъявляла Rambler Group, можно посмотреть тут. А там в качестве ответчиков: Google, ISPIRIA Networks, CloudFlare, «МЭЙЛ.РУ Груп».
ИЧСХ, большая часть исков «удовлетворено», кое-где «удовлетворено частично».
Так себе тенденция.
Например, вы глубокий параноик и считаете, что весь более-менее сложный софт уязвим.
Поэтому какие-то злобные хакеры перидоческих находят зиродеи в этих ваших апачах, энджинксах, и пехапе.
И сразу же идут атаковать ваш сайт.
Поэтому вы пишете свой веб-сервер, у которого будет свой аутентичный набор уязвимостей, которые никому не известных.
Но это до первого попадания бинаря в лапы варага.
И да, HTTP запрос надо ручками парсить, а то вдруг что…
Вариант c циклом четкий, красивый, обозримый.
Его корректность легко доказать.
Я бы еще оттуда убрал вещественную арифметику, оставив только целые числа.
И убрал выход за пределы массива при нуле байт :)
Да я вот периодически задумываюсь, что всякие фантастические рассказики начинают тупо сбываться.
Оруэлла со своим 1984 уже даже язык не поворачивается называть фантастикой.
Его уже в принципе реализовали как минимум в одной прекрасной стране.
Идем дальше.
Ну, если начать рассуждать об изъянах традиционного понимания,
то проституция — это тоже такая работа, вообще говоря.
Очень востребованная, кстати.
Станут ли все на свете стримерами?
Кто будет этим стримерам платить, если простой народ в основной массе перестанет зарабатывать?
Так много вопросов и так мало ответов!
Хех, но вы же в итоге вынуждены будете признать, что автоматизация ручного труда уничтожила в свое время огромное число рабочих профессий.
То была автоматизация ручного труда, сейчас идет автоматизация интеллектуального труда.
Это явный тренд и он прет, как асфальтовый каток.
Кстати, где вы видели у меня светлое будущее?
Про юношеский максимализм промолчу. Откуда он у меня в мои 30+? :)
Переоценены?
Ну ок, рассмотрим промежуточный вариант.
Индус без образования клепает по одному драйверу в день при помощи экспертной системы на основе ИИ и ЯП с формальной верификацией, получает $10 в час, и заменяет собой целый отдел из 10 сеньоров.
Интересно наблюдать, как легко люди привыкают к новому.
Вчера ты лучший в мире, сегодня тебя уделал ИИ.
В какой-то момент каждый с этим столкнется :)
Например, вчера ты писал сложнейшие драйвера под диковинные устройства, имел хорошую ЗП, и гордился собой.
А сегодня ты не то чтобы даже не уникален, а вообще не нужен.
Тебя заменили на ИИ, который генерит код драйвера по спецификации за доли секунды, и делает это без ошибок.
В какой-то момент человек станет вообще никому не нужен, в том числе и самим людям.
И что самое страшно, люди легко к этому привыкнут!
Вообще, современная история человечества — это, на мой взгляд, история отказа от иллюзий.
Когда-то давно люди верили в свою вечную душу, бога на небе, ценность человеческой жизни и т.д.
Хотя последнее было всегда под вопросом, если честно.
Теперь мы не верим в бога и вечную душу, но ценность человеческой жизни пока еще держится.
Это происходит благодаря потому, что чтобы «создать» человека нужно N лет и M денег, и каждый человек хорош в чем-то своем, уникален.
Иллюзия уникальности/ценности рухнет последней, когда аналоги человеческой личности, превосходящие оригинал, будут создаваться за доли секунды в промышленных масштабах.
И потом все, конец :) Будет какая-то совсем другая история.
Искал небольшую мышку Logitech с Unifying Receiver, купил Logitech M325.
Также давно использую коврик A4TECH X7 Gaming.
Так вот, данная мышка на данном коврике проявляет «анизотропию».
Если положить коврик в «ландшафтном» положении и водить мышку слева-направо, то курсор будет двигаться слева-направо.
А вот если положить в «портретном», то курсор будет уходить вверх по краям.
И вообще, есть ощущения, что что-то не так.
Точность страдает, курсор ведет себя неинтуитивно.
Бесит так, что аж скулы сводит.
Причем, это именно комбинация коврик+мышка.
Если поменять один из компонентов, эффект «анизотропии» исчезает.
Короче, что это за эффект такой, и как в будущем избежать подобных проблем?
Как вы биты считаете?
Википедия говорит о двух младших битах первого байта.
На картинке (с википедии) как-бы тоже b0 и b1.
Но потом вспомнил, что я сегодня с похмелья, и полез на Bit Twiddling Hacks :)
graphics.stanford.edu/~seander/bithacks.html#ConditionalSetOrClearBitsWithoutBranching
bool f; // conditional flag
unsigned int m; // the bit mask
unsigned int w; // the word to modify: if (f) w |= m; else w &= ~m;
w ^= (-f ^ w) & m;
// OR, for superscalar CPUs:
w = (w & ~m) | (-f & m);
Я тоже этим всем занимаюсь.
Часто приходится инлайнить обфусцированный код для создания строк, при помощи forсeinline и alloca.
В коде это выглядит как sprintf(buf, CSTRA(«top secret»), ...);
Заинлайненый alloca в цикле — мой любимый баг :)
Вообще, это конечно колхоз.
Обфускацию должен делать компилятор.
2&>1? Кровь из глаз :(
Собственно, именно он и занимается обработкой LD_PRELOAD и аналогичной фигни.
Поэтому факт загрузки по LD_PRELOAD чего-то оставит в нем следы.
То есть, общий вывод из этого такой.
Сервить странички на C++ в 2019 году нужно только разве что, если у вас там глубокий embedded и вы занимаетеь байтоеб… ом.
ИЧСХ, большая часть исков «удовлетворено», кое-где «удовлетворено частично».
Так себе тенденция.
Например, вы глубокий параноик и считаете, что весь более-менее сложный софт уязвим.
Поэтому какие-то злобные хакеры перидоческих находят зиродеи в этих ваших апачах, энджинксах, и пехапе.
И сразу же идут атаковать ваш сайт.
Поэтому вы пишете свой веб-сервер, у которого будет свой аутентичный набор уязвимостей, которые никому не известных.
Но это до первого попадания бинаря в лапы варага.
И да, HTTP запрос надо ручками парсить, а то вдруг что…
Его корректность легко доказать.
Я бы еще оттуда убрал вещественную арифметику, оставив только целые числа.
И убрал выход за пределы массива при нуле байт :)
Оруэлла со своим 1984 уже даже язык не поворачивается называть фантастикой.
Его уже в принципе реализовали как минимум в одной прекрасной стране.
Идем дальше.
то проституция — это тоже такая работа, вообще говоря.
Очень востребованная, кстати.
Станут ли все на свете стримерами?
Кто будет этим стримерам платить, если простой народ в основной массе перестанет зарабатывать?
Так много вопросов и так мало ответов!
То была автоматизация ручного труда, сейчас идет автоматизация интеллектуального труда.
Это явный тренд и он прет, как асфальтовый каток.
Кстати, где вы видели у меня светлое будущее?
Про юношеский максимализм промолчу. Откуда он у меня в мои 30+? :)
Ну ок, рассмотрим промежуточный вариант.
Индус без образования клепает по одному драйверу в день при помощи экспертной системы на основе ИИ и ЯП с формальной верификацией, получает $10 в час, и заменяет собой целый отдел из 10 сеньоров.
Человек — это тоже в некотором смысле компьютер (механизм, машина), если че.
Вчера ты лучший в мире, сегодня тебя уделал ИИ.
В какой-то момент каждый с этим столкнется :)
Например, вчера ты писал сложнейшие драйвера под диковинные устройства, имел хорошую ЗП, и гордился собой.
А сегодня ты не то чтобы даже не уникален, а вообще не нужен.
Тебя заменили на ИИ, который генерит код драйвера по спецификации за доли секунды, и делает это без ошибок.
В какой-то момент человек станет вообще никому не нужен, в том числе и самим людям.
И что самое страшно, люди легко к этому привыкнут!
Вообще, современная история человечества — это, на мой взгляд, история отказа от иллюзий.
Когда-то давно люди верили в свою вечную душу, бога на небе, ценность человеческой жизни и т.д.
Хотя последнее было всегда под вопросом, если честно.
Теперь мы не верим в бога и вечную душу, но ценность человеческой жизни пока еще держится.
Это происходит благодаря потому, что чтобы «создать» человека нужно N лет и M денег, и каждый человек хорош в чем-то своем, уникален.
Иллюзия уникальности/ценности рухнет последней, когда аналоги человеческой личности, превосходящие оригинал, будут создаваться за доли секунды в промышленных масштабах.
И потом все, конец :) Будет какая-то совсем другая история.
Искал небольшую мышку Logitech с Unifying Receiver, купил Logitech M325.
Также давно использую коврик A4TECH X7 Gaming.
Так вот, данная мышка на данном коврике проявляет «анизотропию».
Если положить коврик в «ландшафтном» положении и водить мышку слева-направо, то курсор будет двигаться слева-направо.
А вот если положить в «портретном», то курсор будет уходить вверх по краям.
И вообще, есть ощущения, что что-то не так.
Точность страдает, курсор ведет себя неинтуитивно.
Бесит так, что аж скулы сводит.
Причем, это именно комбинация коврик+мышка.
Если поменять один из компонентов, эффект «анизотропии» исчезает.
Короче, что это за эффект такой, и как в будущем избежать подобных проблем?