Сегодня покажу простой и универсальный способ удаления файлов после выполнения. Для этого будем использовать планировщик заданий Windows, который позволит удалить файл не имея физического доступа к компьютеру.
Еще по теме: Фреймворки для обхода антивирусов
Скрипт для удаления файла после выполнения
Для этого я написал простой код.
Статья для обучения пентестеров (этичных хакеров). Распространение вредоносных программ карается лишением свободы до четырех лет (статья 273). Мы не хотим, чтобы вы сломали себе жизнь в местах не столь отдаленных, поэтому публикуем статью исключительно в образовательных целях.
- Код начинается с включения нескольких заголовков: iostream используется для операций ввода-вывода. string — для использования класса std::string. cstdlib — для использования функций, таких как system, а windows.h — для функций Windows API, в частности, GetLocalTime. Функция scheduleDeletion принимает два параметра: константную ссылку на строку, представляющую путь к файлу, и целое число, представляющее задержку в минутах.
- Для названия запланированной задачи, определяется строковая переменная taskName. Другая строка command формируется для создания запланированной задачи Windows с использованием командного инструмента schtasks. Эта команда в конечном итоге удалит указанный файл.
- Функция получает текущее местное время с помощью GetLocalTime, сохраняя его в структуре SYSTEMTIME. Добавляет задержку в минутах к текущему времени. Если минуты превышают 60, соответственно корректируется час и нормализуются минуты. Если час превышает 24, то происходит переход через полночь.
- Буфер timeBuffer используется для форматирования скорректированного времени в строку формата HH:MM. Эта форматированная строка времени добавляется к команде.
- Флаг /f добавляется к команде для принудительного создания запланированной задачи, даже если задача с таким именем уже существует. Функция system вызывается для выполнения команды, которая планирует задачу в операционной системе Windows.
- Основная функция проверяет, предоставлены ли точно два аргумента (путь к файлу и задержка в минутах). Если нет, выводится сообщение о правильном использовании и возвращается код ошибки.Если аргументы валидны, второй аргумент (задержка в минутах) преобразуется из строки в целое число. Затем вызывается функция scheduleDeletion с путем к файлу и задержкой в минутах. И наконец, выводится подтверждающее сообщение, указывающее, что удаление запланировано. Эта программа эффективно настраивает запланированную задачу на компьютере с Windows для удаления указанного файла после определенной задержки.
Автоматическое удаление файла после выполнения
Давайте посмотрим, что происходит при запуске.
Результат:
Через 2 минуты файл автоматически удаляется.
На этом все. Теперь вы знаете, как автоматически удалить файл после выполнения используя планировщик задач.
ПОЛЕЗНЫЕ ССЫЛКИ: