Hacking Tools

goLAPS : The Ultimate Guide To Managing LAPS Passwords with Golang

goLAPS is a tool designed to interact with the Local Administrator Password Solution (LAPS) in a domain environment.

It allows users to retrieve and set LAPS passwords for domain-joined computers using simple binding over LDAP and LDAPS protocols. This project was inspired by pyLAPS and serves as a learning exercise in Golang.

Capabilities Of goLAPS

  • Retrieve LAPS Passwords: goLAPS can fetch all LAPS passwords from a domain controller using the “get” command. It supports filtering based on the samAccountName of computers, allowing users to target specific machines.
  • Set LAPS Passwords: The tool also enables setting the LAPS password for a target computer using the “set” command.
  • LDAP and LDAPS Support: goLAPS currently supports simple binding on both LDAP and LDAPS protocols for secure communication with the domain controller.

Usage

Retrieve LAPS Passwords

To retrieve LAPS passwords, users can run the following command:

bash./golaps get -D <DomainControllerIP> -u <Username> -p <Password> -d <Domain> [-f <Filter>]
  • -D: Specifies the IP or FQDN of the Domain Controller.
  • -u: Username for authentication.
  • -p: Password for authentication.
  • -d: Domain of the authenticating user.
  • -f: Optional filter for computer names.
  • -o: Optional output file name for CSV results.

Set LAPS Password

To set a LAPS password for a target computer, use:

bash./golaps set -D <DomainControllerIP> -u <Username> -p <Password> -d <Domain> -t <TargetComputerFQDN> -P <NewLAPSPassword>
  • -t: FQDN of the target computer.
  • -P: New LAPS password to set.

goLAPS is currently in its “SenseCon 2024 Edition” version, developed by Felipe Molina de la Torre (@felmoltor) with contributions from François Reinaud on argument parsing and Deon Wilemse on testing infrastructure.

goLAPS provides a useful tool for managing LAPS passwords in a domain environment, leveraging Golang for its implementation.

It offers flexibility in retrieving and setting passwords securely, making it a valuable asset for system administrators managing domain-joined computers.

Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

Kali Linux Commands Cheat Sheet: Complete Quick Reference

This cheat sheet covers the essential Kali Linux commands every pentester and ethical hacker uses…

3 days ago

What I Wish I Knew Before Learning Malware Analysis and Reverse Engineering

When I first started learning malware analysis and reverse engineering, I thought the hardest part…

7 days ago

git fetch vs git pull: How They Work and When to Use Each

Both git fetch and git pull talk to a remote repository, but they do very different things to your…

2 weeks ago

git cherry-pick Command: Apply Commits from Another Branch

Sometimes the change you need already exists, just on the wrong branch. A hotfix lands…

2 weeks ago

Best Email APIs for Secure Business Email: Why Developers Are Moving Beyond SMTP

Email is still one of the most important communication channels inside modern applications. Password resets,…

3 weeks ago

Nginx Commands in Linux: Start, Stop, Reload, Test, and Log

Nginx is a high-performance web server and reverse proxy trusted by some of the largest…

3 weeks ago