Tecnología

Inicio

¿Cómo encontrar SQL Inyecciones en WordPress

¿Cómo encontrar SQL Inyecciones en WordPress


Con sólo un pequeño error en el código de un tema de WordPress o plug-in, un hacker puede tener acceso a su sitio web y desfigurar él, robar información acerca de sus usuarios o incluso eliminar el contenido de su sitio web. Los hackers tienen más éxito con los sitios de WordPress utilizando un método llamado de inyección SQL, donde los trucos de hackers el programa de WordPress en la ejecución de comandos en el servidor de base de datos en su lenguaje de consulta estructurado nativo. Todos los ataques de inyección SQL se pueden prevenir mediante una técnica de programación que está incorporado en WordPress.

WordPress: El objetivo de un hacker

poderes WordPress uno de cada seis sitios web en Internet. Una razón principal de su popularidad es la posibilidad de personalizar fácilmente el diseño y extender la funcionalidad de un sitio web de WordPress uso de temas y plugins desarrolladas por la comunidad. La inmensa popularidad de WordPress hace que sea un objetivo para los hackers automática. Lo que lo hace aún más atractivo es la posibilidad de que los temas y plugins desarrollados por programadores menos experimentados hacer un sitio web más fácil de piratear, y que los que alojar sus propios sitios web de WordPress - Cerca de la mitad de todos los sitios web de WordPress - ganó ' t tiene una seguridad adecuada en sus servidores web para protegerse de los piratas informáticos.

Ataques de inyección SQL

La forma más común de un sitio web de WordPress es hackeado es mediante el uso de la inyección de SQL, aunque es totalmente prevenible. Con la inyección de SQL, un hacker engaña al sistema para que ejecute comandos SQL en la base de datos de WordPress uniéndolos a los datos de entrada del usuario. Los programadores crean riesgos de inyección SQL escribiendo código que acepta la entrada de un usuario y pasa esa entrada textualmente a la base de datos en un comando SQL. El riesgo puede ser eliminado mediante la función de "preparar" en WordPress cuando se mezclan los comandos de base de datos SQL con la entrada del usuario.

Detección automatizada de vulnerabilidades

Puede utilizar el software que pone a prueba su sitio de WordPress para vulnerabilidades de inyección SQL cuando acaba de empezar con una auditoría de seguridad para ayudar a encontrar y eliminar las vulnerabilidades de inyección SQL. El Proyecto Open Web Application Security recomienda dos herramientas: SQLiX propia y sqlmap de OWASP, una herramienta de prueba de penetración de código abierto (enlaces en Recursos). Después de descargar una herramienta, consulte las instrucciones del OWASP para ello. Ambos programas tienen muchas opciones de parámetros de línea de comandos que controlan la forma en que el software pone a prueba su sitio de WordPress.

Lo que hay que auditar

La única manera de estar seguro de que su sitio de WordPress no es vulnerable a un ataque de inyección SQL es para auditar el código fuente. Debido a la vigilancia con que los desarrolladores de WordPress monitorear el código fuente del núcleo en busca de vulnerabilidades, es probable puntos débiles están en código que ha sido autor o en el código fuente de un tema o plugin que está utilizando. Utilice el editor en el módulo de Temas para revisar el código fuente de cada archivo de programa en su tema. Prestar especial atención a cualquier personalización que haya escrito. Utilice el editor en el módulo de plugins para revisar el código fuente para cada plugin que haya activado.

Cómo auditar

Realizar una búsqueda que ignore en el código fuente para cada uno de los siguientes comandos SQL: "crear", "ALTER", "Drop", "SELECT", "actualizar", "BORRAR", "Insertar" y "TRUNCATE". Si el comando incorpora datos de una variable que contiene los datos que podrían haber venido de la entrada del usuario, vuelva a colocar el comando con una versión que utiliza la función "preparar" proporcionado por WordPress .. La función de preparar los datos desinfecta y previene comandos SQL maliciosos se ejecuten en la base de datos. Por ejemplo, cambie: "$ wpdb-> query (" BORRADO DE $ wpdb-> postmeta DONDE post_id = $ user_selected_post ");" con "$ wpdb-> query (prepare (" BORRADO DE $ wpdb-> postmeta DONDE post_id =% d ", $ user_selected_post));" (sin comillas).

Mantenerse actualizado sobre Liberaciones

Una de las tareas más importantes para protegerse contra la inyección de SQL y otros tipos de ataques de piratas informáticos es asegurarse de que su sistema está actualizado. Si una vulnerabilidad de seguridad que se descubre en el sistema central de WordPress o en un tema o plugin que ha mantenido activamente, el autor dará a conocer una nueva versión. Cada vez que una nueva versión de WordPress está disponible, usted debe sostener su base de datos e instalar la nueva versión. Cuando el tema se utiliza o los plugins que hayan activado las actualizaciones problema, debe realizar copias de seguridad de su base de datos e instalar las actualizaciones. Su panel de WordPress indica claramente cuando WordPress, temas y plugins tienen las nuevas versiones que no haya instalado.