Categories: Kali Linux

Spray : Password Spraying Tool For Active Directory Credentials

Spray is a Password Spraying tool for Active Directory Credentials by Jacob Wilkin(Greenwolf). These instructions will show you the requirements for and how to use it.

Prerequisites

All requirements come preinstalled on Kali Linux, to run on other flavors or Mac just make sure curl(owa & lync) and rpcclient(smb) are installed using apt-get or brew.

rpcclient
curl

Using Spray

This script will password spray a target over a period of time It requires password policy as input so accounts are not locked out

Accompanying this script are a series of hand crafted password files for multiple languages. These have been crafted from the most common active directory passwords in various languages and all fit in the complex (1 Upper, 1 lower, 1 digit) catagory.

Also Read – WiFiPumpkin3 : Powerful Framework For Rogue Access Point Attack

SMB

To password spray a SMB Portal, a userlist, password list, attempts per lockout period, lockout period length and the domain must be provided.

Usage: spray.sh -smb <targetIP><usernameList><passwordList><AttemptsPerLockoutPeriod><LockoutPeriodInMinutes><DOMAIN>
Example: spray.sh -smb 192.168.0.1 users.txt passwords.txt 1 35 SPIDERLABS
Optionally Skip Username%Username Spray: spray.sh -smb 192.168.0.1 users.txt passwords.txt 1 35 SPIDERLABS skipuu

OWA

To password spray an OWA portal, a file must be created of the POST request with the Username: sprayuser@domain.com, and Password: spraypassword

Usage: spray.sh -owa <targetIP><usernameList><passwordList><AttemptsPerLockoutPeriod><LockoutPeriodInMinutes><RequestsFile>
Example: spray.sh -owa 192.168.0.1 users.txt passwords.txt 1 35 post-request.txt

Lync

To password spray a lync service, a lync autodiscover url or a url that returns the www-authenticate header must be provided along with a list of email addresses;

Usage: spray.sh -lync <targetIP><usernameList><passwordList><AttemptsPerLockoutPeriod><LockoutPeriodInMinutes>
Example: spray.sh -lync https://lyncdiscover.spiderlabs.com/ users.txt passwords.txt 1 35
Example: spray.sh -lync https://lyncweb.spiderlabs.com/Autodiscover/AutodiscoverService.svc/root/oauth/user users.txt passwords.txt 1 35

CISCO Web VPN

To password spray a CISCO Web VPN service, a target portal or server hosting a portal must be provided

Usage: spray.sh -cisco <targetURL><usernameList><passwordList><AttemptsPerLockoutPeriod><LockoutPeriodInMinutes>
Example: spray.sh -ciso 192.168.0.1 usernames.txt passwords.txt 1 35

Password List Update

It is also possible to update the supplied 2016/2017 password list to the current year

Usage: spray.sh -passupdate <passwordList>
Example: spray.sh -passupdate passwords.txt

An optional company name can also be provided to add to the list

Usage: spray.sh -passupdate <passwordList><CompanyName>
Example: spray.sh -passupdate passwords.txt Spiderlabs

Username Generation

A username list can also be generated from a list of common names

Usage: spray.sh -genusers <firstnames> <lastnames> “<<fi><li><fn><ln>>”
Example: spray.sh -genusers english-first-1000.txt english-last-1000.txt”<fi><ln>”
Example: spray.sh -genusers english-first-1000.txt english-last-1000.txt “<fn>.<ln>”

Credit : Jacob WilkinResearch and DevelopmentTrustwave SpiderLabs

R K

Recent Posts

Best OSINT Tools for Journalists 2026: Verify Sources, Images and Claims

Journalists use OSINT to verify public information before publishing. In 2026, misinformation, AI-generated images, fake…

2 hours ago

Install Docker on Ubuntu 20.04: Complete Step-by-Step Guide

Docker is an open-source platform that lets you package and run applications inside containers. Each container…

13 hours ago

Install PostgreSQL on Ubuntu: Database Setup and Admin Guide

PostgreSQL (often called Postgres) is an open-source relational database system. It supports advanced features like JSON…

14 hours ago

Install Xrdp Remote Desktop on Ubuntu: Setup and Connect

Xrdp is an open-source server that lets you connect to your Ubuntu machine from another computer…

14 hours ago

Tomcat 9 on Ubuntu 20.04: Install, Configure, and Start

Apache Tomcat is an open-source web server and Java servlet container. It is one of the…

14 hours ago

Automatic Updates on Ubuntu: Set Up unattended-upgrades

Keeping your Ubuntu system updated is one of the best ways to protect it. Security…

15 hours ago