Skip to content

Security/complete hardening - #752

Open
prithvee07 wants to merge 7 commits into
mandiant:mainfrom
prithvee07:security/complete-hardening
Open

prithvee07 wants to merge 7 commits into
mandiant:mainfrom
prithvee07:security/complete-hardening

Conversation

@prithvee07

Copy link
Copy Markdown

No description provided.

prithvee07 and others added 7 commits July 17, 2026 17:14
Correctness fixes:
- vbox-adapter-check: fix inverted --dynamic_only filter that scanned
  non-dynamic VMs and skipped the .dynamic malware VMs it should check
- install.ps1: single-quote MyGet URL so the $filter OData query is sent
  instead of being expanded to an empty PowerShell variable
- vboxcommon: fix malformed snapshot rename quoting; add re.escape() to
  snapshot-name regexes

Robustness:
- install.ps1: make the HTTPS request authoritative in Test-WebConnection
  so networks that block ICMP are not wrongly failed
- vboxcommon: bound the VERR_NO_LOW_MEMORY retry loop (was unbounded)
- install.ps1: harden the Boxstarter version parse against odd output

Code quality:
- vboxcommon: replace eval() in wait_until with a callable predicate;
  correct the timeout docstring
- install.ps1: remove undefined $configPathUrl, dead $numCategories, and
  a duplicate Get-AdditionalPackages; hoist the constant VMname assignment
  out of the env loop; fix synopsis typos

Tests & CI:
- add virtualbox/test_vbox_tools.py (16 tests over the VBoxManage parsers)
- add .github/workflows/test.yml (byte-compile + pytest)
- add IMPROVEMENT_REPORT.md documenting findings and status

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…etwork toggle

- install.ps1: warn when -password is used (visible via process enumeration/shell
  history in an RE lab) and scrub the plaintext/SecureString copies after building
  credentials.
- install.ps1: replace repeated New-Object + per-property assignment blocks in both
  WinForms GUI sections with New-Object -Property ([ordered]@{...}), removing the
  repeated $control. prefix noise across ~80 controls. Verified via PSScriptAnalyzer,
  AST parse, and an automated before/after property-order equivalence check.
- virtualbox: add vbox-set-network.py to isolate (fix every non-safe NIC) or restore
  NAT (setup/downloads) on a single named VM with one command, live, without forcing
  a VM shutdown mid-analysis. Extracted the shared live-vs-poweroff NIC switch into
  vboxcommon.set_nic() and reused it from vbox-adapter-check.py's disable_adapter().

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@google-cla

google-cla Bot commented Aug 16, 2026

Copy link
Copy Markdown

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

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

Successfully merging this pull request may close these issues.

1 participant