Skip to content

Add 'file createnew' command to Fsutil.yml - #525

Merged
wietze merged 2 commits into
LOLBAS-Project:masterfrom
DevCop95:add-fsutil-createnew
Sep 26, 2026
Merged

wietze merged 2 commits into
LOLBAS-Project:masterfrom
DevCop95:add-fsutil-createnew

Conversation

@DevCop95

@DevCop95 DevCop95 commented Sep 21, 2026 •

Copy link
Copy Markdown
Contributor

Summary of Changes

Adds the file createnew subcommand to yml/OSBinaries/Fsutil.yml.

fsutil.exe file createnew <filename> <length> creates a valid file of an arbitrary size instantaneously on NTFS volumes without writing zeroes or allocating content blocks upfront. Standard unprivileged users can execute this command in any directory where they have write privileges (e.g., %TEMP%, user profiles).

Adversary Usecase & Threat Context

  • Technique / Objective: Tampering & Defense Impairment (Primary MITRE ATT&CK: T1562.001 - Impair Defenses; Secondary: T1499 - Endpoint DoS).
  • Threat actors and evasion proof-of-concepts (such as BigDiskBuster) utilize rapid, zero-overhead file allocation to fill the system/staging drive to 0 bytes remaining. This halts automated security operations, including:
    • Starving the staging storage for Windows Defender definition and platform updates (ProgramData\Microsoft\Windows Defender\Platform\...), leaving the endpoint running outdated signatures while the service superficially reports healthy.
    • Halting local logging and telemetry buffers (e.g., Windows Event Log / EDR local cache).
    • Inducing denial of service on local storage without dropping external compilers or third-party binaries.

Detection & Telemetry

  • Sysmon Event ID 1 (Process Creation): Execution of fsutil.exe containing file createnew in the command-line arguments.
  • Sysmon Event ID 11 (FileCreate): Sudden generation of massive files in temporary or user directories.
  • Windows System Event ID 2013: "The disk is at or near capacity" alert triggered upon exhaustion.

Attribution & References

Verification & Environment Tested

  • Tested on: Windows 11 Pro (25H2, Build 10.0.26200.9457) and Windows 10.
  • Execution Context: Tested under a standard non-elevated user context in %TEMP% (fsutil file createnew %TEMP%\test.tmp <bytes>). File pre-allocation completes instantaneously without requiring elevated administrator rights.
  • Schema Validation: Conforms strictly to LOLBAS YAML schema specifications.
  • CI Pre-checks: Verified locally against .github/workflows/validation.py (Pydantic validation passed cleanly) and .github/.yamllint (yamllint passed with 0 errors/warnings).

@DevCop95
DevCop95 requested a review from a team as a code owner September 21, 2026 15:10

@wietze wietze left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@DevCop95 Clever technique, thanks for adding this to the project.

@wietze
wietze merged commit 2056cb7 into LOLBAS-Project:master Sep 26, 2026
1 check passed
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.

2 participants