You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,14 @@
2
2
3
3
All notable changes to RedSand are documented here. Format based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Note: the artifacts here are Windows Sandbox configs and PowerShell scripts rather than a versioned API, so semver is followed loosely — minor version bumps reflect meaningful additions to the user-facing surface.
4
4
5
+
## [2.2] - 2026-05-28
6
+
7
+
### Added
8
+
-**`build-wsb.ps1`** - added an option to provide local directory that will be mapped into the Sandbox
9
+
10
+
### Changed
11
+
-**Profiles** - by default, mapping gitignored `Tools` directory, to drop-in portable tooling, can be further tweaked - check out README's `Using your own tools` section
The tool-pack builder asks for install scope — pick **Global** for the sandbox (admin install via scoop's `--global`) or **Per-user** if you're generating something for your everyday machine. The generated script adapts: per-user output drops the `#Requires -RunAsAdministrator` line and the `--global` flag, so the same builder works for both RedSand and standalone use.
164
165
166
+
### Using your own tools (`Tools/`)
167
+
168
+
Every profile maps `Tools/` read-only into the sandbox at `C:\users\WDAGUtilityAccount\Desktop\Tools\`. Three ways to put things there:
169
+
170
+
1.**Drop files directly.** Copy a portable tool's folder (e.g. an extracted `dnSpy/`) into `Tools/`. It shows up inside the sandbox immediately on next launch.
171
+
2.**Junction to an existing host install.** If a tool already lives somewhere on your host (e.g. `C:\Program Files\IDA Free 9.0`), create a directory junction without copying anything:
`/J` doesn't require admin (unlike `/D` symlinks). The sandbox sees `Desktop\Tools\IDA\` mapped to that host directory — read-only, so the sandbox can't mutate your install.
176
+
3.**Map an arbitrary host path directly in a wsb.** When a tool lives somewhere awkward (different drive, path with spaces, etc.) and you don't want a junction, add a `MappedFolder` to your profile's `.wsb` with an explicit `<SandboxFolder>` destination:
177
+
```xml
178
+
<MappedFolder>
179
+
<HostFolder>D:\Reverse Engineering\Binary Ninja</HostFolder> <!-- where it lives on YOUR machine -->
180
+
<SandboxFolder>C:\BinaryNinja</SandboxFolder> <!-- where it appears INSIDE the sandbox -->
181
+
<ReadOnly>true</ReadOnly>
182
+
</MappedFolder>
183
+
```
184
+
`<HostFolder>` is the source on the host; `<SandboxFolder>` is the *destination* inside the VM. Omit `<SandboxFolder>` and the mapping defaults to `C:\users\WDAGUtilityAccount\Desktop\<basename>\` — fine for most folders, but `<SandboxFolder>` is useful when (a) you want a clean path like `C:\BinaryNinja\` that scripts inside the sandbox can reference, (b) two host folders share a basename and would collide on the default Desktop scheme, or (c) the host folder name contains spaces and you'd rather not navigate `Desktop\Binary Ninja\` in PowerShell.
185
+
186
+
**Don't want to hand-edit XML?**`build-wsb.ps1` handles this interactively. When you say yes to "Add another mapped folder?" it prompts for:
187
+
```
188
+
Host path (any: ..\Input\, or absolute like D:\Tools\Binja): D:\Reverse Engineering\Binary Ninja
189
+
Read-only? [Y/n]: y
190
+
Map to a specific path inside the sandbox (defaults to Desktop\<folder name>)? [y/N]: y
The generated wsb gets a `MappedFolder` block with both `<HostFolder>` and `<SandboxFolder>` set. The summary screen shows custom destinations as `host -> sandbox` so you can verify before writing.
194
+
195
+
`Tools/` itself is gitignored, so anything you put there stays local to your machine.
196
+
165
197
## Security notes
166
198
167
199
A few things worth knowing before you drop sensitive material into the sandbox:
0 commit comments