Computer and operating system
Collects computer name, manufacturer, model, BIOS information, Windows caption/version, motherboard information, and related system details.
Windows Information Collection Utility
Recon is a PowerShell-based Windows information-collection utility that gathers an extensive snapshot of the current computer, user account, networking, software, hardware, activity, browser, and Wi-Fi configuration into local output files and a ZIP archive.
System Inventory
Recon gathers a broad inventory of the computer using Windows CIM/WMI, registry, networking, process, service, and command-line interfaces.
Collects computer name, manufacturer, model, BIOS information, Windows caption/version, motherboard information, and related system details.
Records processor details, installed memory capacity and module information, and graphics adapter/driver/resolution information.
Enumerates logical drives, volume labels, drive types, file systems, serial numbers, capacity/free space, and connected USB/COM-style devices.
Collects signed Plug-and-Play driver information and traditional installed-software entries from the machine uninstall registry.
Accounts & Security State
Enumerates Windows user-account information including caption, domain, name, full name, and SID.
Reads Windows UAC policy values and maps them to the configured notification level.
Checks whether the Local Security Authority process reports that it is running as a protected process.
Reads the Terminal Server registry setting to report whether Remote Desktop connections are enabled.
Network Data
The script queries ipinfo.io/ip for the public IP address and gathers local Ethernet/Wi-Fi IPv4 addresses, prefix origin, adapter status, and MAC addresses.
Uses netsh wlan show networks mode=Bssid to collect nearby SSIDs along with authentication and encryption information.
The current script enumerates saved WLAN profiles and requests profile details with keys shown in clear text, then records the profile names and recovered password values.
Collects local/remote address information, connection states, applied settings, owning process IDs, and attempts to associate connections with processes.
User Activity
Runs the Windows tree command against the current user profile with files included, producing a directory/file listing.
Copies the current user's PSReadLine ConsoleHost history into the Recon output folder.
Recursively scans the current user profile, sorts files by last-write time, and records the 50 most recently modified file paths.
Records the file names currently present in the user's Windows Startup folder.
Browser Data
The current script attempts to read local browser data files and extract URL-like text from them.
Targets the Default profile's History database and Bookmarks file.
Targets the Default profile's History database and Bookmarks file.
Targets places.sqlite under a *.default-release profile for history-related URL extraction.
Matched browser records are appended to a local BrowserData.txt file in the Recon results folder.
Location
Recon loads the Windows System.Device assembly and uses GeoCoordinateWatcher to request location information. When Windows grants access and a result is available, latitude and longitude are included in the computer-data output.
Processes, Services & Tasks
Records process handle, process name, executable path, and command line through WMI.
Records Windows service state, internal name, display name, and executable/path information.
Runs Get-ScheduledTask and includes the task information in the collected results.
Runs klist sessions and stores the resulting Windows authentication-session information.
Output
Recon creates a timestamped folder under the current user's temporary directory using a name based on the Windows username. It gathers multiple text files there, copies the results folder to the script directory, and also creates a ZIP archive in the temporary directory.
Optional Upload Functions
The current source contains optional Dropbox and Discord upload functions. They only execute when the corresponding configuration variables are populated.
If the Dropbox token variable is populated, the script can upload the generated ZIP archive through the Dropbox content API.
If the Discord webhook variable is populated, the script can send the ZIP archive to that configured webhook.
Cleanup
At the end of the current script, Recon performs additional cleanup beyond deleting its own working files.
The script recursively attempts to remove contents under the current user's %TEMP% directory.
Deletes values under the current user's Windows RunMRU registry key.
Removes the PSReadLine history file after having previously copied that history into the Recon results.
Runs Clear-RecycleBin -Force, which empties the Windows Recycle Bin.
%TEMP% and the Recycle Bin affects more than Recon's own output.
How To Run
FAQ
No. The current script also collects user, network, browser, Wi-Fi, recent-file, process, service, task, session, and activity information.
Yes. The current script requests saved WLAN profile information with clear-text keys and records the recovered values.
Yes. It attempts URL extraction from Edge, Chrome, and Firefox browser data files.
It requests Windows geolocation data and includes latitude/longitude when Windows permits access and a coordinate is available.
The current script contains optional Dropbox and Discord upload functions that execute when their corresponding configuration values are populated.
Yes. The current script includes cleanup commands for temporary files, Run history, PowerShell history, and the Recycle Bin.