El atacante no lo sabe directamente, pero escanea el sitio web con sondas para detectar vulnerabilidades RCE / RFI / LFI e inyecta un código específico en las solicitudes y en los parámetros GET / POST únicos.
Cuando saben que el resultado cambia según la entrada del usuario suministrada, prueban parámetros únicos con diferentes códigos para diferentes ataques.
eval()
en su mayoría no es necesario y nunca debe usarse para una entrada que pueda ser manipulada por los atacantes.
Esto también se menciona en la documentación oficial de PHP, donde advierten sobre los riesgos.
enlace
Precaución
La construcción del lenguaje eval () es muy peligrosa porque permite la ejecución de código PHP arbitrario. Se desaconseja así su utilización. Si ha verificado cuidadosamente que no hay otra opción que utilizar este constructo, preste especial atención a no pasarle ningún dato proporcionado por el usuario sin haberlo validado correctamente de antemano.
Como desarrollador web, nunca he usado ni necesitado eval()
.
Pero esto aún no está relacionado con JavaScript, incluso si existe eval()
en JavaScript, pero para ejecutar solo el código JavaScript.