RODGAR
  • Whoami
  • HackTheBox
    • Hard
      • ⛔HackTheBox Vintage
    • Medium
      • HackTheBox Cascade
      • HackTheBox TombWatcher
      • Copy of HackTheBox TombWatcher
      • HackTheBox Monteverde
      • HackTheBox Resolute
      • HackTheBox Administrator
      • HackTheBox Escape
      • HackTheBox Authority
    • Easy
      • HackTheBox Active
      • HackTheBox Sauna
      • HackTheBox Support
      • HackTheBox Forest
      • HackTheBox Cicada
      • HackTheBox Timelapse
      • HackTheBox Return
  • CTF WRITEUP's
    • TryHackme
      • TryHackme 0day
      • TryHackme Daily Bugle
      • TryHackme Blog
      • TryHackme Year of the Owl
      • TryHackme Wgel CTF
      • TryHackme Chill Hack
      • TryHackme Wonderland
      • TryHackne OhSINT
      • TryHackme Cold VVars
      • TryHackme Dav
      • TryHackme RootMe
      • TryHackMe Basic Pentesting
      • TryHackMe Simple-CTF
      • TryHackMe Vulnversity
      • Tryhackme Kenobi
    • Burp Suite
      • 1️⃣SQL Ijections
        • Laboratorio Uno
        • Laboratorio Dos
        • Laboratorio Tres
        • Laboratorio Cuatro
        • Laboratorio Cinco
        • Laboratorio Seis
        • Laboratorio Siete
    • VulnHub
      • Inferno
      • Election
      • SYMFONOS 3
      • SYMFONOS 2
      • DJinn-3
      • Durian 1
      • DarkHole 2
      • OffSec DC-9
      • OffSec Potato
      • OffSec Pwned1
      • OffSec VIKINGS
      • OffSec Tre
      • OffSec MoneyBox
      • OffSec DEATHNOTE
      • OffSec Gaara
      • OffSec NoName
      • OffSec Katana
      • OffSec Sick0s
    • The Hackers Labs
      • The Hackers Labs Offensive
      • The Hackers Labs Resident
      • The Hacker Labs Base
      • The Hackers Labs Statue
      • The Hackers Labs Luna
      • The Hackers Labs Templo
      • The Hackers Labs GOIKO
      • The Hackers Labs Microsoft
    • Hackmyvm
      • Hackmyvm UP
    • Pivoting
      • Pivoting
      • Internal TryHackme
      • Basic /Doctor
      • Pluck /Brain
  • Privilege escalation
    • Abuso de grupos de usuario especiales
      • Docker
      • LXD
      • ADM
    • Abuso de permisos incorrectamente implementados
    • Detección y explotación de Capabilities
    • Tareas Crom
    • Path Hijacking
    • Abusando de privilegios a nivel de Sudoers
    • Abusando de privilegios SUID
    • Linux Privilege Escalation
  • Shared Files
    • Share Windows Linux
      • Compartir de entre Windows y Linux
      • Compartir de Windows a linux [Impacket-Server]
    • Share Linux
      • Compartir de linux en [PHP]
  • OWASP TOP 10
    • SQL Injections
    • XSS
    • XXE
    • Path traversal Lab
    • LFI con Wrappers
    • Log Poisoning (LFI -> RCE)
    • Server-Side Template Injection (SSTI)
    • Ataque de oráculo de relleno (Padding Oracle)
    • Inyecciones LaTeX
    • Ataques de transferencia de zona (AXFR – Full Zone Transfer)
    • Enumeración y explotación de WebDAV
    • ShellShock
    • Enumeración y explotación de SQUID Proxies
    • Insecure Direct Object Reference (IDORs)
    • Json Web Token
    • Intercambio de recursos de origen cruzado (CORS)
    • Abuso de subidas de archivos
      • Laboratorio 1
      • Laboratorio 2
      • Laboratorio 3
      • Laboratorio 4
      • Laboratorio 5
      • Laboratorio 6
      • Laboratorio 7
      • Laboratorio 8
      • Laboratorio 9
  • Group 1
    • Recursos
Con tecnología de GitBook
En esta página
  1. CTF WRITEUP's
  2. VulnHub

OffSec VIKINGS

AnteriorOffSec Pwned1SiguienteOffSec Tre

Última actualización hace 1 año

Primero que nada con lo basico buscar los puertos abiertos en la maquina.


# Nmap 7.94SVN scan initiated Fri Feb 16 11:53:00 2024 as: nmap -sCV -p22,80 -oN taregt.txt 192.168.1.170
Nmap scan report for 192.168.1.170
Host is up (0.00073s latency).

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 7.6p1 Ubuntu 4ubuntu0.5 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   2048 59:d4:c0:fd:62:45:97:83:15:c0:15:b2:ac:25:60:99 (RSA)
|   256 7e:37:f0:11:63:80:15:a3:d3:9d:43:c6:09:be:fb:da (ECDSA)
|_  256 52:e9:4f:71:bc:14:dc:00:34:f2:a7:b3:58:b5:0d:ce (ED25519)
80/tcp open  http    Apache httpd 2.4.29
|_http-server-header: Apache/2.4.29 (Ubuntu)
|_http-title: Index of /
| http-ls: Volume /
| SIZE  TIME              FILENAME
| -     2020-10-29 21:07  site/
|_
Service Info: Host: 127.0.0.1; OS: Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Fri Feb 16 11:53:12 2024 -- 1 IP address (1 host up) scanned in 11.98 seconds

Ahora con los puertos abiertos observamos las versiones y servicios que corren para cada uno de los puertos.


Si nos vamos ah observar la pagina web observamos que es una pagina web simple.


Haciendo fuzing en la pagina web encuntro el directorio war, yo le habia concatenado la extencion .txt, lo que significa que este directorio es war.txt.


Si nos vamos al txt, observamos que nos estan dando un nuevo directorio, si vamos a este directorio es una traya de info.


  1. Asi que hice lo siguiente descargar todo el contenido.

  2. Luego decodificarlo de base64 y pasarlo a un archivo zip.


7z

  1. Si hacemos uso de 7z l nos lista que dentro del zip hay un archivo llamado king.

  2. Haciendo uso de 7z x para extraer el contenido observamos que me pide contraseña, contraseña que no poseemos.


Binwalk

Hice uso de binwalk y no me pidio contraseña para extraer, observamos que se extrae una carpeta.


Entramos a la carpeta y hay un archivo user.

  1. Tenemos varias posibles contraseñas y usuarios.

  2. Me creo un pass.txt con todas las palabras que se me dieron para hacer un ataque de fuerza bruta, como floki esta en la lista usare este como usuario principal.


Fuerza bruta por SSH y tenemos un usuario y una contraseña para loguearnos.


Escalada de privilegios lxd

Observamos que floki esta en el grupo lxd, el cual podemos usar para escalar privilegios a root creando un contenedor.


  1. Buscamos con search el exploit.

  2. Nos lo descargamos a local y lo renombramos lx.sh.


Echale un ojo, al script y sigue las instrucciones, descarga primero el alpine, luego hacer un bash buil-alpine que nos creara el alpine .gz.

Nota todo esto se hace en local en tu maquina atacante no en la victima ya que para hacer el bash build necesitas ser root.


Tenemos todo preparado.

  1. Primero nos compartimos un servidor con python3 desde local.

  2. Luego desde la maquina victima nos descargamos el lx.sh.

  3. Tambien el alpine.gz.


  1. Ejecutamos el alpine.gz. y observamos que si hacemos un whoami somos root, pero no en la maquina real si no en el contenedor que fue creado. Pero ya con esto podemos darle permisos SUID a la bash, porque el contenedor se monta trayendose la raiz de la maquina real.

  2. En una segunda terminal nos conectamos de nuevo por SSH como floki, y observamos que la bash no tiene permisos SUID.


  1. Estando en el contenedor nos vamos a donde se llevo la raiz de la maquina HOST, /mnt/root, y le asignamos permisos SUID a la bas.

  2. Ahora observamos que la bash si tiene permisos SUID, hacemos un bash -p y somos root y pues tenemos la bandera de root.txt

Maquina resuelta.