Intro
Deze machine behandelt het brute-forcen van account credentials & het omgaan met publieke exploits. Hier is een link naar de doos.
Opsomming
Nmap scan
Zoals gewoonlijk beginnen we met een Nmap scan.
PORT STATE SERVICE VERSIE 80/tcp open http Microsoft IIS httpd 8.5 | http-methodes: | Ondersteunde methoden: GET HEAD OPTIONS TRACE POST |Potentieel riskante methoden: TRACE | http-robots.txt: 6 verboden vermeldingen |Account/*.* /search /search.aspx /error404.aspx |/archief /archive.aspx |_http-server-header: Microsoft-IIS/8.5 |_http-titel: hackpark | hackpark amusement 3389/tcp open ssl/ms-wbt-server? | ssl-cert: Onderwerp: commonName=hackpark | Uitgever: commonName=hackpark | Type openbare sleutel: rsa | Openbare sleutel bits: 2048 | Handtekeningalgoritme: sha1metRSAEncryptie | Niet geldig voor: 2020-10-01T21:12:23 | Niet geldig na: 2021-04-02T21:12:23 | MD5: 3032 2fb5 4e45 55fa e4d8 a136 f99f 86d3 |_SHA-1: e191 17b5 7329 905e 23e3 93ca d5b1 fbac a510 663b |_ssl-date: 2021-02-09T08:23:14+00:00; -1s van scantijd. Service Info: OS: Windows; CPE: cpe:/o:microsoft:windows
We hebben een open Microsoft webserver & een RDP poort. Laten we, terwijl we de website inspecteren, op de achtergrond naar andere interessante directories zoeken.
Gobuster directory brute-forcing
=============================================================== Gobuster v3.0.1 door OJ Reeves (@TheColonial) & Christian Mehlmauer (@_FireFart_) =============================================================== [+] Url: http://10.10.33.120/ [Draden: 10 [Woordenlijst: /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt [+] Statuscodes: 200,204,301,302,307,401,403 [User Agent: gobuster/3.0.1 [Volg Redir: waar [Uitgebreid: waar [Time-out: 10s =============================================================== 2021/02/09 11:14:40 Starten gobuster =============================================================== http://10.10.33.120/contact (Status: 200) http://10.10.33.120/search (Status: 200) http://10.10.33.120/archives (Status: 200) http://10.10.33.120/archive (Status: 200) http://10.10.33.120/content (Status: 403) http://10.10.33.120/contactus (Status: 200) http://10.10.33.120/contacts (Status: 200) http://10.10.33.120/contact_us (Status: 200) http://10.10.33.120/admin (Status: 200)
Met de resultaten van gobuster vinden we de admin login pagina. Als we het type verzoek bekijken door het formulierelement te inspecteren, zien we POST-verzoeken die gegevens naar de webserver sturen.
We hebben ook vastgesteld dat de gebruikersnaam admin is, die in de URL van het inlogformulier staat. Nu we het verzoektype weten en een URL hebben voor het inlogformulier, kunnen we beginnen met het brute-forcen van de account.
Exploitatie
Hydra account brute-forcing
1. Ga naar de inlogpagina van de website en probeer in te loggen met willekeurige gegevens.
2. Druk op“F12” of open“Toggle Tools” in Firefox.
3. Selecteer het tabblad“Netwerk“.
4. Probeer in te loggen met willekeurige gegevens.
5. Zoek en selecteer het“POST“-verzoek in de kolom“Methode“.
6. Kopieer de URL vanaf“/Account/login” en plak die ergens om je commando op te bouwen:
7. Druk in de rechter tab op“Request“, scroll helemaal naar beneden en kopieer de inhoud van“Request payload“, en voeg toe aan de vorige link, gescheiden door een dubbele punt ( : ).
8. Vervang uw getypte gebruikersnaam & wachtwoord door ^USER^ & ^PASS^
9. Voeg aan het eind “:Login mislukt” toe aan uw commando.
10. Resultaat:
Deze string bestaat uit drie delen, gescheiden door dubbele punten:
pad naar de pagina van het aanmeldingsformulier : verzoekinstantie : foutmelding die wijst op een storing
Searchsploit
Na het inloggen als admin, vinden we de BlogEngine versie 3.3.6.0 en zoeken we naar een exploit:
Kopieer de exploit lokaal, verander het IP & de poort en begin te luisteren naar de gekozen poort.
Volgens de exploit beschrijving moeten we het volgende doen:
1. Navigeren naar inhoud
2. Berichten
3. Nieuw
4. Upload Exploit (naam moet PostView.ascx zijn)
5. Publiceren
6. Bezoek http://TARGET_IP/?theme=../../App_Data/files
om een schelp te krijgen
Privilege-escalatie
Systeminfo om een overzicht te krijgen
Laten we de specificaties van de machine bekijken:
c:\windowssystem32\inetsrv>systeminfo Hostnaam: HACKPARK OS Naam: Microsoft Windows Server 2012 R2 Standaard OS Versie: 6.3.9600 N/A Build 9600 OS Fabrikant: Microsoft Corporation OS Configuratie: Standalone server OS Bouwtype: Multiprocessor Gratis Geregistreerde eigenaar: Windows gebruiker Geregistreerde organisatie: Product ID: 00252-70000-00000-AA886 Originele installatiedatum: 8/3/2019, 10:43:23 AM Opstarttijd systeem: 2/9/2021, 3:19:24 AM Fabrikant van het systeem: Xen Systeemmodel: HVM domU Systeemtype: x64-gebaseerde PC ...
Whoami privileges controleren
c:\windowssystem32\inetsrv>systeminfo PRIVILEGES INFORMATIE ---------------------- Privilege Naam Beschrijving Staat ============================= ========================================= ======== SeAssignPrimaryTokenPrivilege Een token op procesniveau vervangen Uitgeschakeld SeIncreaseQuotaPrivilege Aanpassen van geheugenquota voor een proces Uitgeschakeld SeAuditPrivilege Beveiligingsaudits genereren Uitgeschakeld SeChangeNotifyPrivilege Omzeilen van traversecontrole Ingeschakeld SeImpersonatePrivilege Impersoneren van een cliënt na authenticatie Ingeschakeld SeCreateGlobalPrivilege Globale objecten creëren Ingeschakeld SeIncreaseWorkingSetPrivilege Verhogen van een proceswerkset Uitgeschakeld
Windows gebruikt tokens om ervoor te zorgen dat accounts de juiste rechten hebben om bepaalde acties uit te voeren. Accounttokens worden aan een account toegekend wanneer gebruikers zich aanmelden of geverifieerd worden.
Er zijn twee soorten toegangsmunten:
- primaire toegangstokens: die welke aan een gebruikersaccount zijn gekoppeld en bij het aanmelden worden gegenereerd
- impersonatietokens: hiermee kan een bepaald proces (of een thread in een proces) toegang krijgen tot bronnen met behulp van het token van een ander (gebruiker/cliënt) proces.
We kunnen tokenimitatie gebruiken om toegang tot het systeem te krijgen.
Winlogon referenties
Laten we het register controleren op User Autologon / Winlogon referenties:
... LastUsedUsername REG_SZ administrator AutoAdminLogon REG_DWORD 0x1 DefaultUserName REG_SZ administrator DefaultPassword REG_SZ 4q6[redacted]Fdxs
Het lijkt erop dat we wat admin credentials hebben gevonden; laten we de open RDP poort gebruiken om verbinding te maken met de machine.
We hebben de vlag ongewoon teruggehaald. Laten we doorgaan met de normale weg om een andere zwakte van deze doos uit te buiten.
Niet-genoteerde dienstenpaden
Laten we zoeken naar ongequoteerde servicepaden:
AWS Lite Guest Agent AWSLiteAgent C:\Program Files\XenTools\LiteAgent.exe Auto System Scheduler Service WindowsScheduler C:\PROGRA~2\SYSTEM~1\WService.exe Auto
Laten we de naam van de dienst opvragen voor meer informatie.
[SC] QueryServiceConfig SUCCESS SERVICE_NAME: WindowsScheduler TYPE : 10 WIN32_OWN_PROCESS START_TYPE : 2 AUTO_START ERROR_CONTROL : 0 NEGEREN BINARY_PATH_NAME : C:\PROGRA~2\SYSTEM~1\WService.exe LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : System Scheduler Service : SERVICE_START_NAME : LocalSystem
Kijk in de logbestanden voor de juiste binaire naam die automatisch wordt uitgevoerd. In de kaart van de systeemplanner kunt u de
message.exe
met een gegenereerde shell exec om een admin-shell als alternatief te krijgen.
0 Comments