Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proxy Support #109

Closed
Kolano opened this issue May 24, 2017 · 5 comments
Closed

Proxy Support #109

Kolano opened this issue May 24, 2017 · 5 comments

Comments

@Kolano
Copy link

Kolano commented May 24, 2017

I think I'm seeing a problem with the "vmcloak install" command post setting up proxy environment variables...

vmcloak install seven0 vcredist
...
Traceback (most recent call last):
  File "/usr/local/bin/vmcloak", line 11, in <module>
    load_entry_point('VMCloak==0.4.4a1', 'console_scripts', 'vmcloak')()
  File "/usr/local/lib/python2.7/dist-packages/click-6.6-py2.7.egg/click/core.py", line 716, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/click-6.6-py2.7.egg/click/core.py", line 696, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python2.7/dist-packages/click-6.6-py2.7.egg/click/core.py", line 1060, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python2.7/dist-packages/click-6.6-py2.7.egg/click/core.py", line 889, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python2.7/dist-packages/click-6.6-py2.7.egg/click/core.py", line 534, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/VMCloak-0.4.4a1-py2.7.egg/vmcloak/main.py", line 290, in install
    a.ping()
  File "/usr/local/lib/python2.7/dist-packages/VMCloak-0.4.4a1-py2.7.egg/vmcloak/agent.py", line 36, in ping
    return self.get("/", timeout=5)
  File "/usr/local/lib/python2.7/dist-packages/VMCloak-0.4.4a1-py2.7.egg/vmcloak/agent.py", line 22, in get
    return requests.get(url, *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/api.py", line 72, in get
    return request('get', url, params=params, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/api.py", line 58, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 518, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 639, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/adapters.py", line 514, in send
    raise ReadTimeout(e, request=request)
requests.exceptions.ReadTimeout: HTTPConnectionPool(host='10.1.10.23', port=3128): Read timed out. (read timeout=5)

Proxy details set via the standard HTTP_PROXY / HTTPS_PROXY / http_proxy / https_proxy environment variables. Other commands utilizing the proxy seem to work out...

wget https://cdn.arstechnica.net/wp-content/uploads/2016/02/5718897981_10faa45ac3_b-640x624.jpg
--2017-05-23 21:56:31--  https://cdn.arstechnica.net/wp-content/uploads/2016/02/5718897981_10faa45ac3_b-640x624.jpg
Connecting to 10.1.10.23:3128... connected.
Proxy request sent, awaiting response... 200 OK
Length: 97530 (95K) [image/jpeg]
Saving to: ‘5718897981_10faa45ac3_b-640x624.jpg’

100%[===================================================================================================================>] 97,530      --.-K/s   in 0.02s

2017-05-23 21:56:31 (3.99 MB/s) - ‘5718897981_10faa45ac3_b-640x624.jpg’ saved [97530/97530]

This seems to lock the VM causing later commands to generate snapshots to fail...

DEBUG:vmcloak.vm:Running command: ['/usr/bin/VBoxManage', 'createvm', '--register', '--name', 'vm1', '--basefolder', '/home/pass/.vmcloak/vms']
DEBUG:vmcloak.vm:Running command: ['/usr/bin/VBoxManage', 'modifyvm', u'vm1', '--ostype', 'Windows7_64']
DEBUG:vmcloak.vm:Running command: ['/usr/bin/VBoxManage', 'modifyvm', u'vm1', '--ioapic', 'on', '--cpus', '2']
DEBUG:vmcloak.vm:Running command: ['/usr/bin/VBoxManage', 'modifyvm', u'vm1', '--mouse', 'usbtablet']
DEBUG:vmcloak.vm:Running command: ['/usr/bin/VBoxManage', 'modifyvm', u'vm1', '--memory', '2048']
DEBUG:vmcloak.vm:Running command: ['/usr/bin/VBoxManage', 'modifyvm', u'vm1', '--vram', '16']
DEBUG:vmcloak.vm:Running command: ['/usr/bin/VBoxManage', 'storagectl', u'vm1', '--add', 'ide', '--name', 'IDE']
DEBUG:vmcloak.vm:Running command: ['/usr/bin/VBoxManage', 'modifyhd', u'/home/pass/.vmcloak/image/seven0.vdi', '--type', 'multiattach']
VBoxManage: error: Medium '/home/pass/.vmcloak/image/seven0.vdi' is locked for writing by another task
VBoxManage: error: Details: code VBOX_E_INVALID_OBJECT_STATE (0x80bb0007), component Medium, interface IMedium, callee nsISupports
VBoxManage: error: Context: "COMSETTER(Type)(DiskType)" at line 556 of file VBoxManageDisk.cpp
ERROR:vmcloak.vm:[-] Error running command: Command '['/usr/bin/VBoxManage', 'modifyhd', u'/home/pass/.vmcloak/image/seven0.vdi', '--type', 'multiattach']' returned non-zero exit status 1
Traceback (most recent call last):
  File "/usr/local/bin/vmcloak", line 11, in <module>
    load_entry_point('VMCloak==0.4.4a1', 'console_scripts', 'vmcloak')()
  File "/usr/local/lib/python2.7/dist-packages/click-6.6-py2.7.egg/click/core.py", line 716, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/click-6.6-py2.7.egg/click/core.py", line 696, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python2.7/dist-packages/click-6.6-py2.7.egg/click/core.py", line 1060, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python2.7/dist-packages/click-6.6-py2.7.egg/click/core.py", line 889, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python2.7/dist-packages/click-6.6-py2.7.egg/click/core.py", line 534, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/VMCloak-0.4.4a1-py2.7.egg/vmcloak/main.py", line 489, in snapshot
    hostname or random_string(8, 16), adapter, vm_visible
  File "/usr/local/lib/python2.7/dist-packages/VMCloak-0.4.4a1-py2.7.egg/vmcloak/main.py", line 416, in do_snapshot
    m, h = initvm(image, name=vmname, multi=True, ramsize=ramsize, cpus=cpus)
  File "/usr/local/lib/python2.7/dist-packages/VMCloak-0.4.4a1-py2.7.egg/vmcloak/main.py", line 56, in initvm
    m.attach_hd(image.path, multi=multi)
  File "/usr/local/lib/python2.7/dist-packages/VMCloak-0.4.4a1-py2.7.egg/vmcloak/vm.py", line 113, in attach_hd
    self._call("modifyhd", hdd_path, type_="multiattach")
  File "/usr/local/lib/python2.7/dist-packages/VMCloak-0.4.4a1-py2.7.egg/vmcloak/vm.py", line 40, in _call
    raise CommandError
vmcloak.exceptions.CommandError
@jbremer
Copy link
Member

jbremer commented May 24, 2017

Ah, yes, we had a similar "issue" at some point in Cuckoo. Let me attempt to fix it for you.

@jbremer
Copy link
Member

jbremer commented May 24, 2017

Please find the untested commit above. You can install it with pip install vmcloak==0.4.4a2. Please let me know if that solves your issue :-)

@Kolano
Copy link
Author

Kolano commented May 24, 2017

Yes, things seem to work out with 0.4.4a2.

@Kolano
Copy link
Author

Kolano commented May 24, 2017

BTW, it looks like info on the actual install of VMCloak is missing from README.md. The prereq's are covered but not the VMCloak install itself. May want to document: "pip install vmcloak" there.

@jbremer
Copy link
Member

jbremer commented May 24, 2017

Done, thanks!

@jbremer jbremer closed this as completed May 24, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants