No soy ningún experto en seguridad informática, sin embargo aquí mismo en mi trabajo han iniciado algunos chavos en automatizar varios procesos de la empresa realizando aplicaciones web usando mayormente PHP, y por lo mismo de que no están muy experimentados en el área, yo he detectado algunos errores que he reportado para que se modifiquen, y ahora mi jefe quiere que exponga una mini conferencia a los programadores que tienen en este momento laborando, sobre los riesgos de no aplicar la seguridad necesaria en sus aplicaciones web, y pues ya tengo un par de días preparando de manera dinámica la exposición, mostrando ejemplos de xss, rfi, etc. Y por supuesto, de SQL Injection.
Y aquí es a donde quiero llegar, ya que a pesar de que tengo alguno que otro ejemplo que mostrar, me gustaría enseñarles a los programadores que es posible acceder al servidor usando comandos DOS o bash(lo vi alguna vez en una conferencia que pasó por televisión, pero las letras se veían borrosas), y esto pues apoyándonos con netcat, sin embargo por más que he probado no logro hacer que por medio de una query se ejecute dicho comando de netcat para abrir un puerto. He intentado de varias maneras, entre ellas:
Exec master.dbo.xp_cmdshell ‘dir’;
Exec master..xp_cmdshell ‘dir’;
Y no pasa nada, me sigue mandando este error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'exec master..xp_cmdshell 'dir'' at line 1
Estoy intentando meter este comando directamente para ver que funcione y después usarlo como inyección, pero no me sale nada, y ojalá puedan ayudarme sobre como es el comando correcto para ejecutar comandos, ya sea en una terminal de *nix, o bien, en Windows. Se los voy a agradecer bastante.
Como dato, estoy usando MySQL 5.1.32-community
P.D. ojalá nada tenga que ver con la versión de MySQL, pues alguien me comentó hace tiempo que aun en esta versión era posible, espero no me haya engañado
.









Autor


En línea




.