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.

LEAVE A REPLY

Please enter your comment!
Please enter your name here