По пункту 1. Если не сильно наворотили с флагами в themida, то просто запускается приложение. Потом дампится любым способом. Полученный бинарник можно декомпилировать в IDA или еще в чем-то.
Если с флагами в themida сильно наворотили, то распаковать можно при помощи известного скрипта для OllyDbg (здесь он выступает просто запускатором). Полученный бинарник также можно декомпилировать IDA или еще чем-то.
Поставьте на телефон ssh сервер. будет вам и командная строка и scp (копирование файлов). поверх можно sshfs (монтирование диска) прикрутить на компьютере.
Вообще-то minix установлен у всех владельцев интеловских процессоров, которым не более лет десяти. Minix работает в Intel ME. Так что это одна из самых используемых ос в мире.
На счет пруфов смотрите багтрекеры systemd и debian'а. Плохо реагируют не значит что совсем ничего не исправляют, но могут исправить так, что лучше бы и не исправляли вовсе. Скажем вместо простого багфикс релиза, заставлять использовать очередной релиз, в котором куча всего добавлено/изменено включая нужный баг.
общение любого процесса с init это увеличение поверхности атаки, без какого либо практического смысла. Это тоже самое что, на пример повесить локальный mysql на публичный ip без фаервола, и сказать: ну и что, там все равно пароль требуется, и ничего что работа с mysql идет только локально.
На счет пруфов не копался в исходниках systemd, мне это совсем не интересно. Мне надо чтобы init просто работал, но systemd постоянно что-то ломает или сам не работает. Но если разработчики считают что в pid1 можно добавит dbus, то что им мешает добавить туда на пример dns клинт? А чего это тоже важная функция, и ничего что в pid1 она не нужна, зато «так надежнее».
Криво можно сделать и сейчас и в 1994.
Я не говорю что systemd это совсем уж плохой продукт, в нем есть много чего хорошего. Но безопасность там на «отцепись». Также разработчики очень плохо реагируют на баги и уязвимости. Основная проблема что вот это вот все, что вроде как новое, но с никакой безопасностью и надежностью, запихали почти во все дистрибутивы. И этот треш больше нельзя не использовать. Не важно есть ли более безопасные реализации или нету, и systemd использовать приходится…
На счет корректно, ну вот зачем в pid1 dbus? чтобы любой процесс с ним общался? Думаю что pid1 в systemd может делать и многое другое, что ему не положено делать.
Добавление заведомо уязвимой функции в pid1 это ни как не добавляет безопасности и надежности.
dbus в pid1, вот об этом я писал. не думаю что хоть один другой инит может уронить pid1 от dbus сообщения или еще какого либо действия, которое не должно обрабатываться в pid1. И это не случайная ошибка. Это системная ошибка, там все сделано не совсем корректно.
Вместо онлайн сервиса можно сделать docker образ. Который при запуске будет проверять лицензию или открытость проверяемых исходников. Т.е. оно как бы и «онлайн» сервис, т.к. беспланых CI сейчас много, но и от вас требуется только поддерживать этот образ.
Такой образ можно сделать и самим пользователям, но сделать его не нарушая лицензию проблематично, если вообще возможно.
themida обычно портит таблицы импорта и точку входа и что-то еще.
сдампить с отладчика можно без проблем, даже не делая ни каких краш дампов,
а вот при запуске сдампленной программы, она упадет с ошибкой.
С интеграцией все проще. Можно сделать докер образ с выводом ошибок в спец формате в json, и добавить его в pipeline на gitlab. docs.gitlab.com/ee/ci/examples/sast.html
Для github'а тоже можно, но надо использовать скорее всего другой ci чем travis, и писать руками вывод ошибок.
Но к сожалению с открытыми проектами так использовать PVS-Studio не получится, из-за требования бесплатной версии добавлять спец текст до текста лицензии.
Вот тут на пример www.microsoft.com/en-us/wdsi/filesubmission
Если с флагами в themida сильно наворотили, то распаковать можно при помощи известного скрипта для OllyDbg (здесь он выступает просто запускатором). Полученный бинарник также можно декомпилировать IDA или еще чем-то.
В линукс систему оно просто устанавливает гостевые утилиты от hyperv, возможно чуть переделанные.
линейный список имен файлов + различные атрибуты
общение любого процесса с init это увеличение поверхности атаки, без какого либо практического смысла. Это тоже самое что, на пример повесить локальный mysql на публичный ip без фаервола, и сказать: ну и что, там все равно пароль требуется, и ничего что работа с mysql идет только локально.
На счет пруфов не копался в исходниках systemd, мне это совсем не интересно. Мне надо чтобы init просто работал, но systemd постоянно что-то ломает или сам не работает. Но если разработчики считают что в pid1 можно добавит dbus, то что им мешает добавить туда на пример dns клинт? А чего это тоже важная функция, и ничего что в pid1 она не нужна, зато «так надежнее».
Я не говорю что systemd это совсем уж плохой продукт, в нем есть много чего хорошего. Но безопасность там на «отцепись». Также разработчики очень плохо реагируют на баги и уязвимости. Основная проблема что вот это вот все, что вроде как новое, но с никакой безопасностью и надежностью, запихали почти во все дистрибутивы. И этот треш больше нельзя не использовать. Не важно есть ли более безопасные реализации или нету, и systemd использовать приходится…
На счет корректно, ну вот зачем в pid1 dbus? чтобы любой процесс с ним общался? Думаю что pid1 в systemd может делать и многое другое, что ему не положено делать.
Добавление заведомо уязвимой функции в pid1 это ни как не добавляет безопасности и надежности.
dbus в pid1, вот об этом я писал. не думаю что хоть один другой инит может уронить pid1 от dbus сообщения или еще какого либо действия, которое не должно обрабатываться в pid1. И это не случайная ошибка. Это системная ошибка, там все сделано не совсем корректно.
у него я вижу только один большой недостаток, цензура от гугла по ip (хостится на gcloud)
Такой образ можно сделать и самим пользователям, но сделать его не нарушая лицензию проблематично, если вообще возможно.
сдампить с отладчика можно без проблем, даже не делая ни каких краш дампов,
а вот при запуске сдампленной программы, она упадет с ошибкой.
Вот тут люди плачутся, но похоже от администрации ни какой реакции: gitlab.com/gitlab-com/migration/issues/649
Для github'а тоже можно, но надо использовать скорее всего другой ci чем travis, и писать руками вывод ошибок.
Но к сожалению с открытыми проектами так использовать PVS-Studio не получится, из-за требования бесплатной версии добавлять спец текст до текста лицензии.