beafn28
  • 👩‍💻¡Bienvenidos a mi HackBook!
  • WRITEUPS
    • DockerLabs
      • BuscaLove
      • Amor
      • Injection
      • BorazuwarahCTF
      • Trust
      • Picadilly
      • Pinguinazo
      • AguaDeMayo
      • BreakMySSH
      • NodeClimb
      • Move
      • Los 40 ladrones
      • Vulnvault
      • Pntopntobarra
      • Library
      • Escolares
      • ConsoleLog
      • Vacaciones
      • Obsession
      • FirstHacking
      • SecretJenkins
      • HedgeHog
      • AnonymousPingu
      • ChocolateLovers
      • Dockerlabs
      • Pressenter
      • Candy
      • JenkHack
      • ShowTime
      • Upload
      • Verdejo
      • WalkingCMS
      • WhereIsMyWebShell
      • Whoiam
      • Winterfell
      • -Pn
      • Psycho
      • Mirame
      • Backend
      • Paradise
      • Balurero
      • Allien
      • Vendetta
      • FindYourStyle
      • Stellarjwt
      • File
      • Redirection (Por completar)
      • Extraviado
      • Patriaquerida
      • Tproot
      • Internship
      • Walking Dead
      • Bicho (Por completar)
      • BaluFood
    • TryHackMe
      • Brooklyn Nine Nine
      • Blue
    • HackTheBox
      • Nibbles
      • Starting Point
        • Meow
        • Fawn
        • Dancing
        • Redeemer
        • Appointment
        • Sequel
        • Crocodile
        • Responder
        • Three
        • Archetype
        • Oopsie
        • Vaccine
        • Unified
        • Explosion
        • Preignition
        • Mongod
        • Synced
        • Ignition
        • Bike
        • Funnel
        • Pennyworth
        • Tactics
        • Included
        • Markup
        • Base
      • BoardLight
      • Cap
      • TwoMillion
      • Lame
      • Legacy
      • Devel
      • Beep
      • Optimum
      • Arctic
      • Jerry
      • Sau
      • GoodGames
      • Challenges
        • Emdee five for life
        • MarketDump
      • Intro to Dante
      • Heist
      • OpenAdmin
      • Nest
      • Curling
    • Vulnhub
      • Wakanda
      • Election (Por terminar)
    • The Hacker Labs
      • Avengers
      • Can you hack me?
      • Fruits
      • Microchoft
      • TickTakRoot
      • Grillo
      • Mortadela
      • Zapas Guapas
      • Sal y Azúcar
      • Cyberpunk
      • Papafrita
      • PizzaHot
      • Decryptor
      • Academy
      • Cocido andaluz
      • Find Me
      • Quokka
      • Campana Feliz
      • Bocata de Calamares
      • Casa Paco
      • Torrijas
    • Vulnyx
      • Fuser
      • Blogguer
      • Lower
      • Exec
      • Diff3r3ntS3c
      • Hacking Station
      • Experience
      • Eternal
      • Agent
      • Infected
      • Admin
      • War
      • Hosting
    • OverTheWire
      • Natas
        • Nivel 0-5
        • Nivel 6-11
        • Nivel 12-17
        • Nivel 18-23
        • Nivel 24-29
        • Nivel 30-34
      • Leviathan
        • Nivel 0-7
      • Krypton
      • Bandit
        • Nivel 0-10
        • Nivel 11-20
        • Nivel 21-30
        • Nivel 31-34
    • Proving Ground Play
      • Monitoring
      • DriftingBlues6
  • APUNTES HACKING
    • Pentesting Basics
      • Web Enumeration
      • Public Exploits
      • Types of Shells
      • Privilege Escalation
      • Transfering Files
    • Network Enumeration with NMAP
      • Host Discovery
      • Host and Port Scanning
      • Saving the Results
      • Service Enumeration
      • Nmap Scripting Engine
      • Performance
      • Firewall and IDS/IPS Evasion
    • Footprinting
      • Domain Information
      • Cloud Resources
      • FTP
      • SMB
      • NFS
      • DNS
      • SMTP
      • IMAP/POP3
      • SNMP
      • MySQL
      • MSSQL
      • Oracle TNS
      • IPMI
      • Linux Remote Management Protocols
      • Windows Remote Management Protocols
    • Information Gathering - Web Edition
      • WHOIS
      • DNS
        • Digging DNS
      • Subdomains
        • Subdomain Bruteforcing
        • DNS Zone Transfers
        • Virtual Hosts
        • Certificate Transparency Logs
      • Fingerprinting
      • Crawling
        • robots.txt
        • Well-Known URIs
        • Creepy Crawlies
      • Search Engine Discovery
      • Web Archives
      • Automating Recon
    • Vulnerability Assessment
      • Vulnerability Assessment
      • Assessment Standards
      • Common Vulnerability Scoring System (CVSS)
      • Common Vulnerabilities and Exposures (CVE)
    • Nessus
      • Getting Started with Nessus
      • Nessus Scan
      • Advanced Settings
      • Working with Nessus Scan Output
      • Scanning Issues
    • OpenVAS
      • OpenVAS Scan
      • Exporting The Results
    • Reporting
    • File Transfers
      • Windows File Transfer Methods
      • Linux File Transfer Methods
      • Transferring Files with Code
      • Miscellaneous File Transfer Methods
      • Protected File Transfers
      • Catching Files over HTTP/S
      • Living off The Land
      • Detection
      • Evading Detection
    • Shells & Payloads
      • Anatomy of a Shell
      • Bind Shells
      • Reverse Shells
      • Payloads
        • Automating Payloads & Delivery with Metasploit
        • Crafting Payloads with MSFvenom
        • Infiltrating Windows
        • Infiltrating Unix/Linux
        • Spawning Interactive Shells
      • Introduction to Web Shells
        • Laudanum, One Webshell to Rule Them All
        • Antak Webshell
        • PHP Web Shells
      • Detection & Prevention
    • Metasploit
      • MSFConsole
      • Modules
      • Targets
      • Payloads
      • Encoders
      • Databases
      • Plugins
      • Sessions
      • Meterpreter
      • Writing and Importing Modules
      • Introduction to MSFVenom
      • Firewall and IDS/IPS Evasion
    • Password Attacks
      • John The Ripper
      • Network Services
      • Password Mutations
      • Password Reuse / Default Passwords
      • Attacking SAM
      • Attacking LSASS
      • Attacking Active Directory & NTDS.dit
      • Credential Hunting in Windows
      • Credential Hunting in Linux
      • Passwd, Shadow & Opasswd
      • Pass the Hash (PtH)
  • WEB SECURITY
    • Path Traversal
    • SQL Injection
    • Control de Acceso
  • Mis CTFs
    • Pequeñas Mentirosas
    • CryptoLabyrinth
    • Elevator
    • Facultad
  • PREPARAR EJPTv2
    • Máquinas
    • Curso de Mario
      • Presentación + Preparación de Laboratorios
      • Conceptos Básicos de Hacking
      • Explotación de Vulnerabilidades y Ataques de Fuerza Bruta
      • Explotación vulnerabilidades Web
      • Enumeración y Explotación del Protócolo SMB, SAMBA, SNMP, IIS y RDP
      • Hacking Entornos CMS
      • Escalada de Privilegios + Post Explotación
      • Pivoting con Metasploit
  • Preparar OSCP
    • Información
    • Máquinas
      • Linux
        • Fácil
        • Medio
        • Difícil
      • Windows
        • Fácil
        • Medio
        • Difícil
Powered by GitBook
On this page
  • Introducción a los Servidores Web y Web Shells en Pentesting
  • ¿Qué es un Web Shell?

Was this helpful?

  1. APUNTES HACKING
  2. Shells & Payloads

Introduction to Web Shells

Introducción a los Servidores Web y Web Shells en Pentesting

Es casi seguro que nos encontraremos con servidores web durante nuestro aprendizaje y práctica activa de pentesting. Gran parte de los servicios de software del mundo se están trasladando a plataformas basadas en la web, accesibles a través de la World Wide Web usando un navegador y HTTP/S. Solo considera el sitio web en el que estamos ahora. Está completamente en el navegador, accesible desde cualquier lugar del mundo utilizando cualquier dispositivo conectado a Internet. Los modernos medios de entretenimiento, como los videojuegos, la música y la transmisión de videos, son accesibles a través de navegadores y aplicaciones. Esto significa que nos encontraremos apuntando a aplicaciones web cada vez más a medida que pase el tiempo.

Además, durante las pruebas de penetración externas, a menudo encontramos que las redes perimetrales de los clientes están bien reforzadas. No exponen servicios vulnerables como SMB u otros elementos que solíamos encontrar con frecuencia. Estos elementos ahora los anticipamos principalmente durante una prueba de penetración interna. Durante nuestras pruebas de penetración externas, comúnmente "entramos" (obtenemos un pie dentro de la red interna) a través de ataques a aplicaciones web (ataques de carga de archivos, inyección SQL, RFI/LFI, inyección de comandos, etc.), pulverización de contraseñas (contra RDS, portales VPN, Citrix, OWA y otras aplicaciones que utilizan autenticación de Active Directory) y ingeniería social.

Las aplicaciones web son a menudo la mayoría de lo que vemos expuesto durante una evaluación de red externa y, a menudo, presentan una enorme superficie de ataque. Podemos encontrar formularios de carga de archivos públicamente disponibles que nos permiten subir directamente un web shell de PHP, JSP o ASP.NET. Algunas funcionalidades durante las pruebas autenticadas pueden estar presentes o, nuestro favorito personal, una funcionalidad de auto-registro donde podemos ingresar y subir un web shell (después de eludir las verificaciones del lado del cliente) en el área de carga de la foto de perfil del usuario. También podemos encontrar aplicaciones como Tomcat, Axis2 o WebLogic, que permiten desplegar código JSP a través de un archivo WAR como parte de su funcionalidad. Incluso podemos encontrar un servicio FTP mal configurado que permite cargas de archivos directamente en el directorio web del servidor. Hay muchas otras maneras en las que podemos encontrar para cargar un web shell que están fuera del alcance de este módulo.

¿Qué es un Web Shell?

Un web shell es una sesión de shell basada en el navegador que podemos usar para interactuar con el sistema operativo subyacente de un servidor web. Nuevamente, para obtener ejecución remota de código a través de un web shell, primero debemos encontrar una vulnerabilidad en un sitio web o aplicación web que nos dé capacidades de carga de archivos. La mayoría de los web shells se obtienen subiendo una carga útil escrita en un lenguaje web en el servidor objetivo. Las cargas útiles que subimos deben darnos capacidad de ejecución remota de código dentro del navegador. Las secciones y desafíos que siguen se centrarán principalmente en ejecutar comandos a través de nuestros web shells en el navegador. Sin embargo, es esencial saber que confiar solo en el web shell para interactuar con el sistema puede ser inestable e poco fiable porque algunas aplicaciones web están configuradas para eliminar cargas de archivos después de un cierto período de tiempo. Para lograr persistencia en un sistema, en muchos casos, esta es la forma inicial de obtener ejecución remota de código a través de una aplicación web, que luego podemos usar para actualizar a un shell inverso más interactivo.

En las próximas secciones, aprenderemos y experimentaremos con varios web shells que nos permiten interactuar con el sistema operativo subyacente de un servidor web a través del navegador.

PreviousSpawning Interactive ShellsNextLaudanum, One Webshell to Rule Them All

Last updated 7 months ago

Was this helpful?