Информация об изменениях

Сообщение Re[3]: Шифрование кода – 2023 от 27.02.2023 10:21

Изменено 27.02.2023 10:39 Carc

Re[3]: Шифрование кода – 2023
Здравствуйте, Khimik, Вы писали:

K>Здравствуйте, Черный 😈 Властелин, Вы писали:



ЧВ>>3) Антивирусы тоже не особо понимают код виртуальной машины, а следовательно на всякий случай задетектим его как вирус. Короче говоря ложных срабатываний полно, особенно у говно-антивирусов второго эшелона.


K>Это, как я понимаю, главная проблема. Может быть, стоит купить протектор, но использовать его без функции шифрования кода? Что он ещё умеет?

Причем тут шифрование? Проблема в другом: важное выделено жирным.

Антивирусы тоже не особо понимают код виртуальной машины

Хоть шифруй, хоть не шифруй — внутри все равно код виртуальной машины, которую анвири вкурить со смыслом не могут.

Но зло в другом!
Виртуальная машина или нет, шифрован код или нет — анвири все равно тупят, тупили и тупить будут.

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

Сказано-сделано!
Схема простая:
1) заводится именованный эвент, который ожидается в фоновом потоке в первом уже работающем экземпляре.
2) Второй экземпляр софтины, если запущен с определенным ключом командной строки (MySoft.exe /флаг_с_вещами_на_выход) открывает так называемый тьфу-млин, открывает вышеупомянутый эвент, сигналит, и тут же завершается (второй экземпляр)
3) первый (уже работающий) экземпляр, ловит в фоновом потоке событие, и как-то уже разруливается по делу, что мол пора завершаться: закрыть окна, сказать пользователю до свиданья, все дела.

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

Ну и прикрутилась к этой схеме простенькая отдельная exe-тулза для завершения работающего экземпляра приложения.
Совсем простенькая!
3 строчки кода(три, Карл! три): OpenEvent + SetEvent + CloseHandle.

И что тут блин началось!
Ага, млин да это мелварь, да всё такое, да она лезет в непонятные эвенты Виндовс.....
А я ж прихирел! Несколько раз перепроверял, пересобирал, еще раз перепроверял. И еще раз прихеривал, но уже сильнее...
Ан фиг! Мелварь и всё точка!

И ничего так, что основная софтина с десятком подобных эвентов дело имеет — с ней всё в порядке.
И опять же ничего так, что оная основная софтина шарится по чужим адресным пространствам, и какими только способами туда не пролезает. Моя софтина — в чужое адресное пространство "в дверь", а там заперто. Гуй с ним. Тогда через окно? Законопачено? Тады через чердак! И там не пущатЪ? Ну да фиг с Вами, тогда и по кул-хацки можно...
Ну и мало того, что лазиет по чужим адресным пространствам — дык это основная софтина, еще и данные оттуда, из-за забора к себе отгружает.

Казалось бы, вот на чтобы ругаться бы... Ан фиг! К основной софтине претензий нет.
А мелко-поделке в 3 строки кода (те самые OpenEvent+SetEvent...) — ПРЕТЕНЗИИ ТАКИ ЕСТЬ!!!

И это не говноантивирусы, это все таки был Avast — не самый поганый антивирус!

PS: зато родился лайф-хак как общаться в тех поддержкой Аваста на предмет false positive detection.
1) Начинать сходу по русски! Причем на русском-матерном! Пускай шекспирят на конференциях, да журналюгам очки втирают на аглицком. Здесь разговор по делу.

2) Начинать сие послание султанам-нах, нужно с эпической фразы: "Здорово щеглы, плятЪ!!!" (C).

3) Далее перечисление трех упомянутых функций, описание что и зачем, ссылка на официальную доку на официальном же сайте.

4-ое по списку но не менее важное: предложение выгнать нафиг студентов — рукожопых лоботрясов (C) аналитигоф первой линии!. Ну или хотя бы отправить в неоплачиваемый отпуск.
А сэкомноленные средств А — всенепременно и заобязательно совместно — пропить. В хорошей компании, отличным чешским пивом.

Проверено!
Результат 100-процентный.
Забегали, засуеитились. Через секунду тикет висел уже в поддержке, через пару часов уже отписались в стиле "извини, колллега, хирню сморозили". Через два часа уже был именно что официальный ответ: ля-ля, ля-ля — наш косяк — в течении суток поправим и публичные база, при ежедневном апдейте сигнатурных баз.
Re[3]: Шифрование кода – 2023
Здравствуйте, Khimik, Вы писали:

K>Здравствуйте, Черный 😈 Властелин, Вы писали:



ЧВ>>3) Антивирусы тоже не особо понимают код виртуальной машины, а следовательно на всякий случай задетектим его как вирус. Короче говоря ложных срабатываний полно, особенно у говно-антивирусов второго эшелона.


K>Это, как я понимаю, главная проблема. Может быть, стоит купить протектор, но использовать его без функции шифрования кода? Что он ещё умеет?

Причем тут шифрование? Проблема в другом: важное выделено жирным.

Антивирусы тоже не особо понимают код виртуальной машины

Хоть шифруй, хоть не шифруй — внутри все равно код виртуальной машины, которую анвири вкурить со смыслом не могут.

Но зло в другом!
Виртуальная машина или нет, шифрован код или нет — анвири все равно тупят, тупили и тупить будут.

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

Сказано-сделано!
Схема простая:
1) заводится именованный эвент, который ожидается в фоновом потоке в первом уже работающем экземпляре.
2) Второй экземпляр софтины, если запущен с определенным ключом командной строки (MySoft.exe /флаг_с_вещами_на_выход) открывает так называемый тьфу-млин, открывает вышеупомянутый эвент, сигналит, и тут же завершается (второй экземпляр)
3) первый (уже работающий) экземпляр, ловит в фоновом потоке событие, и как-то уже разруливается по делу, что мол пора завершаться: закрыть окна, сказать пользователю до свиданья, все дела.

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

Ну и прикрутилась к этой схеме простенькая отдельная exe-тулза для завершения работающего экземпляра приложения.
Совсем простенькая!
3 строчки кода(три, Карл! три): OpenEvent + SetEvent + CloseHandle.

И что тут блин началось!
Ага, млин да это мелварь, да всё такое, да она лезет в непонятные эвенты Виндовс.....
А я ж прихирел! Несколько раз перепроверял, пересобирал, еще раз перепроверял. И еще раз прихеривал, но уже сильнее...
Ан фиг! Мелварь и всё точка!

И ничего так, что основная софтина с десятком подобных эвентов дело имеет — с ней всё в порядке.
И опять же ничего так, что оная основная софтина шарится по чужим адресным пространствам, и какими только способами туда не пролезает. Моя софтина — в чужое адресное пространство "в дверь", а там заперто. Гуй с ним. Тогда через окно? Законопачено? Тады через чердак! И там не пущатЪ? Ну да фиг с Вами, тогда и по кул-хацки можно...
Ну и мало того, что лазиет по чужим адресным пространствам — дык это основная софтина, еще и данные оттуда, из-за забора к себе отгружает.

Казалось бы, вот на чтобы ругаться бы... Ан фиг! К основной софтине претензий нет.
А мелко-поделке в 3 строки кода (те самые OpenEvent+SetEvent...) — ПРЕТЕНЗИИ ТАКИ ЕСТЬ!!!

И это не говноантивирусы, это все таки был Avast — не самый поганый антивирус!

PS: зато родился лайф-хак как общаться в тех поддержкой Аваста на предмет false positive detection.
1) Начинать сходу по русски! Причем на русском-матерном! Пускай шекспирят на конференциях, да журналюгам очки втирают на аглицком. Здесь разговор по делу.

2) Начинать сие послание султанам-нах, нужно с эпической фразы: "Здорово щеглы, плятЪ!!!" (C).

3) Далее перечисление трех упомянутых функций, описание что и зачем, ссылка на официальную доку на официальном же сайте.

4-ое по списку но не менее важное: предложение выгнать нафиг студентов — рукожопых лоботрясов (C) аналитигоф первой линии!. Ну или хотя бы отправить в неоплачиваемый отпуск. А сэкомноленные средств А — всенепременно и заобязательно совместно — пропить. В хорошей компании, отличным чешским пивом.

Проверено!
Результат 100-процентный.
Забегали, засуеитились. Через секунду тикет висел уже в поддержке, через пару часов уже отписались в стиле "извини, колллега, хирню сморозили". Через два часа уже был именно что официальный ответ: ля-ля, ля-ля — наш косяк — в течении суток поправим и публичные база, при ежедневном апдейте сигнатурных баз.