Remote VirtualBox
About
This package is intended to be simple and useful abstraction based on Zeep SOAP client.
It doesn’t depend on ancient VirtualBox Python SDK and even more ancient ZSI (last updated in 2006) and PyXML (thing from 2007) libraries.
The initial goal was to build an easy to use CuckooSandbox machinery.
VirtualBox Webservice
There is an official manual how to start it:
https://www.virtualbox.org/manual/ch09.html#vboxwebsrv-daemon
Install
pip install remotevbox --user
Development version
Pipenv is used here:
pipenv install --dev --pre pipenv shell
Usage example
>>> import remotevbox
>>> vbox = remotevbox.connect("http://127.0.0.1:18083", "vbox", "yourpassphrase")
>>> vbox.get_version()
'6.1.2'
>>> machine = vbox.get_machine("Windows10")
>>> machine.launch()
>>> screenshot_data = machine.take_screenshot_to_bytes()
>>> fp = open('screenshot.png', 'wb')
>>> fp.write(screenshot_data)
>>> fp.close()
>>> machine.put_usagecode(0xE1, 7) # simulate shift key
>>> machine.put_usagecode(6, 7) # simulate letter c
>>> machine.put_usagecode(6, 7, True) # stop "pressing" c
>>> machine.put_usagecode(0xE1, 7, True) # stop "pressing" shift
>>> machine.put_mouse_event(0, 0, dz=5) # scroll with the mouse wheel
>>> machine.absolute_mouse_pointer_supported() # does the gues OS supports absolute mouse pointer ?
>>> machine.put_mouse_event_absolute(110, 40) # set absolute cursor position
>>> machine.send_key_combination(["<ctrl>", "c"]) # send key combination
>>> machine.send_character_string("Hello World!") # send a string from the keyboard
>>> machine.save()
>>> vbox.disconnect()
Metadata
Release files for remotevbox 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| remotevbox-1.0.1.tar.gz | 11.8 kB | Details |
Release files / remotevbox-1.0.1.tar.gz
| Download URL | remotevbox-1.0.1.tar.gz |
|---|---|
| Size | 11.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
88b58b6899c47c856179ab5159aa1222fa0ce7b448564faf2f957d9610928981
|
|
BLAKE2b-256 checksum How to use checksums |
ac63195d5ca7641f21b8c7359297e3bb77f431443a8087bb05b794d2ad33a3d9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.7
|