¿Por qué los sitios web PHP son hackeados fácilmente?

Primero entiendes que es exactamente PHP?

  • PHP (preprocesador de hipertexto) es un lenguaje de script de uso general de código abierto ampliamente utilizado que es especialmente adecuado para el desarrollo web y puede integrarse en HTML.
  • En lugar de muchos comandos para generar HTML (como se ve en C), las páginas PHP contienen HTML con código incrustado que hace “algo” (en este caso, muestra “¡Hola, soy un script PHP!”). El código PHP está encerrado en [] Que le permiten entrar y salir del “modo PHP”.

Ejemplo

<? php

echo “Hola, soy un script PHP”;

?>

  • Lo que distingue a PHP de algo como JavaScript del lado del cliente es que el código se ejecuta en el servidor, generando HTML que luego se envía al cliente. El cliente recibiría los resultados de ejecutar ese script, pero no sabría cuál era el código subyacente.
  • Lo mejor de usar PHP es que es extremadamente simple para un recién llegado, pero ofrece muchas características avanzadas para un programador profesional.

Entonces, ¿por qué es tan fácil hackearlo?

Las vulnerabilidades en el código PHP generalmente son causadas por un error que cometió un desarrollador al escribir el código original. Es bastante común que un desarrollador lance una aplicación PHP que funcione perfectamente, pero no anticipe todas las formas en que los hackers en la red intentarán obtener acceso.

La mayoría de las vulnerabilidades a continuación son causadas por la entrada del usuario ‘sin desinfectar’. Es decir, la entrada de un usuario que la aplicación web acepta pero contiene código malicioso o se pasa a una parte de la aplicación de una manera que crea una vulnerabilidad.

Las vulnerabilidades en PHP generalmente se agrupan en categorías según su tipo. A continuación se muestra una lista de los tipos más comunes de vulnerabilidades en el código PHP

  • La ejecución remota de código se produce cuando un atacante puede cargar código en su sitio web y ejecutarlo. Un error en una aplicación PHP puede aceptar la entrada del usuario y evaluarlo como código PHP. Esto podría, por ejemplo, permitir a un atacante decirle al sitio web que cree un nuevo archivo que contenga código que le otorgue acceso total al sitio web.
  • Cross-Site Scripting o XSS ocurre cuando un atacante hace que el código malicioso se cargue en el navegador de un visitante del sitio web y se ejecute. Este código puede realizar acciones maliciosas como robar cookies de usuario, que pueden otorgar acceso de nivel administrativo, o realizar funciones como el usuario que puede otorgar acceso adicional.
  • Inyección de objetos PHP Este es un ataque más complejo que ocurre cuando una aplicación PHP toma la entrada del usuario y la pasa a una función llamada ‘unserialize ()’ que toma un objeto almacenado y lo convierte en un objeto en la memoria.
  • Omisión de autenticación En ocasiones, un desarrollador de PHP pensará que está validando correctamente que un visitante del sitio tiene el nivel de acceso correcto antes de realizar una acción, pero de hecho está comprobando lo incorrecto.

No se trata de lenguajes PHP

Incluso los sitios web de back-end de Python pueden ser pirateados

La mayoría de los sitios web PHP usan WordPress o joomla CMS y el problema con CMS es que son más vulnerables que un back-end personalizado escrito desde cero.

Por lo general, las empresas y los usuarios de estos marcos no actualizan la versión del marco o los complementos (que son la parte más vulnerable) son vulnerables a la piratería. O use la configuración de contraseña predeterminada u olvide eliminar el inicio de sesión de administrador a través de cualquier URL, algunos incluso descargan e instalan complementos pirateados desde torrent que nuevamente están infectados.

Por lo tanto, la falla no es del lenguaje PHP, la mayoría de los errores y hacks son el resultado de la ignorancia del usuario.

La seguridad no está en los idiomas … está construida usando el lenguaje … en mis últimos 15 años de experiencia he parcheado PHP, ASP clásico, .net, Python, aplicaciones web Java … como regla general, no use complementos gratuitos / scripts como phpThumb, ckeditor, etc., si necesita parchearlos primero … segundo siempre filtre la entrada y salida del sistema … tercero no use la ruta de directorio común / simple y los nombres de usuario como / admin / etc.

Codificación feliz y segura …

Porque es el lenguaje más simple para aprender y hacer en la práctica.

Por lo tanto, es bastante simple encontrar las vulnerabilidades en los sitios web codificados en PHP.

OkeyShourov