Конкурсная статья Динамический анализ файлов VirtualBox+Python

Pernat1y

(L2) cache
Пользователь
Регистрация
19.04.2008
Сообщения
448
Реакции
119
Баллы
49
Апдейт 0.5:
* Все функции вынесены в отдельные файлы: vm_functions.py - управление ВМ и support_functions.py - всё остальное (на данный момент генерация рандомных имён, подсчёт контрольной суммы для файла и вывод линков на Google/VT).
* Основной скрипт перенесён в demo.py
* Добавлена функция для получения информации о доступных ВМ
* Добавлена проверка на наличие файла - если файл был удалён (АКА статический детект), то скрипт не будет дожидаться таймаута а просто перейдёт к следующей задаче
* Добавлен адрес BTC для желающих помочь :)

Берём, как обычно, с Гита
 

Pernat1y

(L2) cache
Пользователь
Регистрация
19.04.2008
Сообщения
448
Реакции
119
Баллы
49
Версия 0.6:
* Теперь можно выбирать все доступные в виртуалбоксе ВМ ('--vms all') и снапшоты ('--snapshots all'). Юзать аккуратно, чтобы не задеть машины для этого не предназначенные :)
* Добавлена функция для получения списка доступных снапшотов у определенной ВМ - vm_functions.list_snapshots(vm)
* Скрипт теперь понимает, что его хотят остановить (Ctrl+C)
* Добавлена опция для выбора рандомного разрешения экрана из списка наиболее популярных ('--resolution random')
* Прочие фиксы и твики

В следующей версии думаю добавить простой веб интерфейс с минимальным функционалом (залитие файла и отображение скриншотов после завершения анализа).

Внимание, вопрос: скрипт кто-то юзает? Есть какой-то фидбэк?
 

Triada

RAM
Пользователь
Регистрация
13.12.2019
Сообщения
112
Реакции
42
Баллы
24
Я кое что придумал, если получится то будет годно
 

NaMneCash

(L3) cache
Пользователь
Регистрация
05.10.2019
Сообщения
274
Реакции
171
Баллы
38
Версия 0.6:
* Теперь можно выбирать все доступные в виртуалбоксе ВМ ('--vms all') и снапшоты ('--snapshots all'). Юзать аккуратно, чтобы не задеть машины для этого не предназначенные :)
* Добавлена функция для получения списка доступных снапшотов у определенной ВМ - vm_functions.list_snapshots(vm)
* Скрипт теперь понимает, что его хотят остановить (Ctrl+C)
* Добавлена опция для выбора рандомного разрешения экрана из списка наиболее популярных ('--resolution random')
* Прочие фиксы и твики

В следующей версии думаю добавить простой веб интерфейс с минимальным функционалом (залитие файла и отображение скриншотов после завершения анализа).

Внимание, вопрос: скрипт кто-то юзает? Есть какой-то фидбэк?
Error while stopping VM: VBoxManage: error: Invalid machine state: PoweredOff (must be Running, Paused or Stuck)
VBoxManage: error: Details: code VBOX_E_INVALID_VM_STATE (0x80bb0002), component ConsoleWrap, interface IConsole, callee nsISupports
VBoxManage: error: Context: "PowerDown(progress.asOutParam())" at line 619 of file VBoxManageControlVM.cpp

Вот тебе и баг репорт.


ps
ошибка была связана с тем, что я забыл указать лог и пасс.
Но все равно держи баг репорт.
Функция --info not work пробовал и 1 ставить и 0
 
Последнее редактирование:

Pernat1y

(L2) cache
Пользователь
Регистрация
19.04.2008
Сообщения
448
Реакции
119
Баллы
49
Error while stopping VM: VBoxManage: error: Invalid machine state: PoweredOff (must be Running, Paused or Stuck)
VBoxManage: error: Details: code VBOX_E_INVALID_VM_STATE (0x80bb0002), component ConsoleWrap, interface IConsole, callee nsISupports
VBoxManage: error: Context: "PowerDown(progress.asOutParam())" at line 619 of file VBoxManageControlVM.cpp

Вот тебе и баг репорт.
Оно не смогло стопнуть уже остановленную ВМ. Такое случается, это норм :)

Но все равно держи баг репорт.
Функция --info not work пробовал и 1 ставить и 0
Спасибо. Должно быть пофикшено в 0.6.1:
* All functions now return exactly 3 values: [exit_code, stdout, stderr]
* New function to get IP addresses of guest - vm_functions.list_ips(vm)
* Fixes in arguments parser
 
Последнее редактирование:
Верх