stamin4
  • whoami
  • HTB Academy
    • Introduction to Academy
    • Learning Process
    • Vulnerability Assessment
    • Web Requests
    • Introduction to Networking
    • Linux Fundamentals
    • Brief Intro to Hardware Attacks
    • Setting Up
    • Using the Metasploit Framework
    • Security Incident Reporting
    • Introduction to Web Applications
    • JavaScript Deobfuscation
    • Attacking Web Applications with Ffuf
    • Windows Fundamentals
    • File Inclusion
  • HTB Machines
    • Windows
      • 🟢Easy
      • 🟠Medium
      • 🔴Difficult
      • 🟣Insane
    • Linux
      • 🟢Easy
        • Cap
      • 🟠Medium
      • 🔴Difficult
      • 🟣Insane
  • OverTheWire
    • Bandit
      • Nivel 0
      • Nivel 1
      • Nivel 2
      • Nivel 3
      • Nivel 4
      • Nivel 5
      • Nivel 6
      • Nivel 7
      • Nivel 8
      • Nivel 9
      • Nivel 10
  • Base de datos
    • SQL
      • SELECT queries 101
      • Queries with constraints (Pt. 1)
      • Queries with constraints (Pt. 2)
      • Filtering and sorting Query results
      • Simple SELECT Queries
      • Multi-table queries with JOINs
      • OUTER JOINs
      • A short note on NULLs
      • Queries with expressions
      • Queries with aggregates (Pt. 1)
      • Queries with aggregates (Pt. 2)
      • Order of execution of a Query
      • Inserting rows
      • Updating rows
      • Deleting rows
      • Creating tables
      • Altering tables
      • Dropping tables
  • PortSwigger
    • Path Traversal
  • Dockerlabs
    • Trust
    • Firsthacking
    • Upload
Powered by GitBook
On this page
  • Overview
  • HTML
  • Cascading Style Sheets (CSS)
  • Sensitive Data Exposure
  • HTML Injection
  • Cross-Site Scripting (XSS)
  • Back End Servers
  • Web Servers
  • Databases
  • Development Frameworks & APIs
  • Common Web Vulnerabilities
  • Public Vulnerabilities
  1. HTB Academy

Introduction to Web Applications

Overview

El módulo cubre los siguientes temas:

  • ¿Qué es una aplicación web?

  • ¿Cuáles son las arquitecturas comunes de aplicaciones web?

  • ¿Qué significan los términos front-end y back-end?

  • Los componentes principales del front-end de una aplicación web.

  • Uso, sintaxis y ejemplos de HTML, CSS y JavaScript.

  • Principales riesgos de seguridad de componentes front-end y cómo prevenirlos.

  • Introducción a HTML Injection, XSS y CSRF.

  • Los componentes principales del back-end de una aplicación web.

  • ¿Qué es un servidor back-end y cómo se diferencia de un servidor web?

  • ¿Cuáles son los servidores web más comunes y qué ventajas tiene cada uno?

  • ¿Qué tipos de bases de datos existen y dónde se utiliza cada una?

  • Frameworks comunes para el desarrollo de aplicaciones web.

  • ¿Qué son las APIs y cómo se utilizan?

  • OWASP Top 10.


HTML

¿Cuál es la etiqueta HTML que se utiliza para mostrar una imagen?

La respuesta es <img>.


Cascading Style Sheets (CSS)

¿Cuál es la propiedad CSS que se utiliza para alinear un elemento HTML del texto a la izquierda?

CSS define el estilo de cada elemento o clase HTML entre llaves, dentro las cuales se encuentran las propiedades y sus valores: element { property : value; }

En este caso, para alinear un elemento a la izquierda se usa text-align: left;


Sensitive Data Exposure

Desplegamos el target y se nos presenta una IP con un puerto sobre el que está corriendo un servicio web: 94.237.63.93:49943.

Si lo abrimos en el navegador, vemos un panel de inicio de sesión.

Hacemos Crtl + U para ver el código fuente por si existe información sensible expuesta y encontramos una contraseña: HiddenInPlainSight.


HTML Injection

Ingresamos al navegador y colocamos la IP del target. En mi caso: 83.136.253.251:30079.

Nos encontramos con lo siguiente:

Hay un botón que, al clickear sobre él, nos solicita nuestro nombre:

Luego, nuestro input se ve reflejado en el output:

Ahora, el ejercicio consiste en determinar qué se mostraría en la página si usamos el siguiente payload como input: <a href="http://www.hackthebox.com">Click Me</a>

La respuesta es Your name is Click Me.


Cross-Site Scripting (XSS)

Seguimos con la misma web, vamos a probar acontecer un XSS para obtener una cookie de sesión con el siguiente payload: <img src=/ onerror=alert(document.cookie)>

La cookie vale XSSisFun.


Back End Servers

¿Qué sistema operativo usa WAMP? Windows

WAMP es una de las combinaciones existentes de stacks para servidores back-end en la que se emplean las siguientes tecnologías: Windows, Apache, MySQL y PHP.


Web Servers

Si un servidor web devuelve un código de estado HTTP 201, ¿qué significa?

El código HTTP 201 es Created. Significa que la petición fue exitosa y un nuevo recurso fue creado como resultado.


Databases

¿Qué tipo de base de datos es Google's Firebase Database?

Es una base de datos NoSQL.


Development Frameworks & APIs

Hacer una petición por GET a '/index.php?id=0' para buscar por el nombre del usuario con id igual a 1.

Dependiendo del valor que tome el parámetro id, nos devuelve un usuario si es que este existe. Para este caso, el usuario con id=1 es superadmin.


Common Web Vulnerabilities

¿A qué categoría pertenece la vulnerabilidad 'CVE-2014-6271'?

Es un command injection. Permite ejecutar comandos de Bash a través de un ShellShock por una falla al evaluar ciertas variables de entorno específicamente diseñadas.


Public Vulnerabilities

¿Cuál es la puntuación CVSS de la vulnerabilidad CVE-2017-0144?

Tiene una puntuación de 9.3.

PreviousSecurity Incident ReportingNextJavaScript Deobfuscation

Last updated 1 year ago

Para poder responder a esta pregunta, estuve mirando algunas páginas, entre ellas la siguiente: .

CVE-2014-6271