Я разрабатываю кроссплатформенный агент безопасности, ориентированный в основном на Windows. В будущем мне может понадобиться аналогичный подход для macOS. Одной из важнейших функций является режим «временной приостановки», которым управляет ИТ-администратор, при котором агент прекращает мониторинг на определенный период времени.
Проблема: Пользователи могут попытаться продлить периоды приостановки, вручную изменив системные часы (настенные часы), пока агент находится в автономном режиме. (Я могу использовать доверенный сервер для получения текущего времени, когда агент находится в сети.) Поскольку мой продукт использует логику, основанную на времени, мне необходимо убедиться, что системное время не было изменено.
Текущий подход: В настоящее время я использую фоновый поток, который опрашивает каждые 2 секунды. Он сравнивает std::chrono::system_lock (на который может влиять пользователь) с std::chrono::steady_lock (который является монотонным и не должен прыгать). Этот подход не кажется правильным. Я ищу более идиоматический способ C++20 или альтернативный подход, который мог бы использовать внутренние события, специфичные для ОС, не жертвуя при этом слишком большой переносимостью.
Ниже приведен минимально воспроизводимый пример моей текущей логики, которую я пишу с помощью чат-бота. Он компилируется на VS2022 C++20. Есть ли более стандартный или надежный способ реализовать это для контекста, чувствительного к безопасности? Действительно ли мне нужно иметь дело с собственными вещами для Windows?
#include
#include
#include
using namespace std::chrono_literals;
int main() {
auto last_system = std::chrono::system_clock::now();
auto last_steady = std::chrono::steady_clock::now();
std::cout
Подробнее здесь: https://stackoverflow.com/questions/798 ... -using-c20
Как обнаружить подделку (переходы) системных часов для продукта безопасности с использованием C++20? ⇐ C++
Программы на C++. Форум разработчиков
1767787179
Anonymous
Я разрабатываю кроссплатформенный [b]агент безопасности[/b], ориентированный в основном на Windows. В будущем мне может понадобиться аналогичный подход для macOS. Одной из важнейших функций является режим «временной приостановки», которым управляет ИТ-администратор, при котором агент прекращает мониторинг на определенный период времени.
[b]Проблема:[/b] Пользователи могут попытаться продлить периоды приостановки, вручную изменив системные часы (настенные часы), пока агент находится в автономном режиме. (Я могу использовать доверенный сервер для получения текущего времени, когда агент находится в сети.) Поскольку мой продукт использует логику, основанную на времени, мне необходимо убедиться, что системное время не было изменено.
[b]Текущий подход:[/b] В настоящее время я использую фоновый поток, который опрашивает каждые 2 секунды. Он сравнивает std::chrono::system_lock (на который может влиять пользователь) с std::chrono::steady_lock (который является монотонным и не должен прыгать). Этот подход не кажется правильным. Я ищу более идиоматический способ C++20 или альтернативный подход, который мог бы использовать внутренние события, специфичные для ОС, не жертвуя при этом слишком большой переносимостью.
Ниже приведен минимально воспроизводимый пример моей текущей логики, которую я пишу с помощью чат-бота. Он компилируется на VS2022 C++20. Есть ли более стандартный или надежный способ реализовать это для контекста, чувствительного к безопасности? Действительно ли мне нужно иметь дело с собственными вещами для Windows?
#include
#include
#include
using namespace std::chrono_literals;
int main() {
auto last_system = std::chrono::system_clock::now();
auto last_steady = std::chrono::steady_clock::now();
std::cout
Подробнее здесь: [url]https://stackoverflow.com/questions/79862369/how-to-detect-system-clock-tampering-jumps-for-a-security-product-using-c20[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия