{"id":29024,"date":"2021-08-14T13:25:34","date_gmt":"2021-08-14T13:25:34","guid":{"rendered":"https:\/\/www.conectasoftware.com\/glossary\/inyeccion-de-sql\/"},"modified":"2023-07-05T20:42:03","modified_gmt":"2023-07-05T20:42:03","slug":"inyeccion-de-sql","status":"publish","type":"glossary","link":"https:\/\/www.conectasoftware.com\/magazine\/glosario\/inyeccion-de-sql\/","title":{"rendered":"Inyecci\u00f3n de SQL<span class=\"dashicons \" data-icon=\"\" style=\"color:#000;display:inline;vertical-align:baseline;\"><\/span>"},"content":{"rendered":"<h2><b>\u00bfQu\u00e9 es una Inyecci\u00f3n de SQL?<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Una inyecci\u00f3n de SQL es un m\u00e9todo por el cual, se infiltra c\u00f3digo intruso a trav\u00e9s de una vulnerabilidad que se encuentra presente en una aplicaci\u00f3n haciendo uso del lenguaje de consultas SQL en una base de datos.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Se dice que se produce una inyecci\u00f3n de SQL en el momento en el que se inserta una sentencia SQL dentro de un c\u00f3digo SQL programado, con la finalidad de alterar el funcionamiento normal de la aplicaci\u00f3n y lograr as\u00ed que se ejecute la porci\u00f3n de c\u00f3digo invasor incrustado dentro de la base de datos, independientemente de si se trata de una aplicaci\u00f3n de escritorio o de una aplicaci\u00f3n web (entre otros).<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Adem\u00e1s, se trata a nivel de <a href=\"https:\/\/www.conectasoftware.com\/magazine\/ciberseguridad\/introduccion-conceptos-basicos-ciberseguridad\/\">seguridad inform\u00e1tica<\/a> como un problema, y se debe tener siempre en cuenta por parte del programador para que sea prevenida.<\/span><\/p>\n<h2><b>\u00bfCu\u00e1ndo aparecieron las inyecciones de SQL?<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">La primera vez que se habl\u00f3 de inyecciones de SQL fue en el a\u00f1o 1998 gracias al afamado hacker James Forristal, qui\u00e9n hac\u00eda uso del nickname Rain Forest Puppy a trav\u00e9s de un art\u00edculo en el que describ\u00eda una t\u00e9cnica novedosa. Dicho art\u00edculo se llam\u00f3 <\/span><b>NT Web Technology Vulnerabilities<\/b><span style=\"font-weight: 400;\"> (ya que en aquellos a\u00f1os se hac\u00eda uso del sistema operativo Windows NT) y describ\u00eda que, a trav\u00e9s de <\/span><b>conexiones ODBC<\/b><span style=\"font-weight: 400;\"> junto con un <\/span><b>servidor de datos Microsoft SQL Server 6.5<\/b><span style=\"font-weight: 400;\"> se pod\u00edan ejecutar consultas y comandos usando el lenguaje SQL.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">La vulnerabilidad consist\u00eda en que, a trav\u00e9s de la inyecci\u00f3n de c\u00f3digo SQL en una aplicaci\u00f3n (por lo general una aplicaci\u00f3n web) se pod\u00eda modificar la manera en la que se realizaban las consultas a una base de datos consiguiendo as\u00ed, evadir los mecanismos de seguridad que exist\u00edan, ejecutar comandos en el servidor o recuperar datos sensibles (entre muchas otras).<\/span><\/p>\n<h2><b>\u00bfPara qu\u00e9 utilizan los atacantes las Inyecciones de SQL?<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Los ataques de inyecci\u00f3n de SQL son utilizados con el objetivo de tener un acceso m\u00e1s directo y profundo de la base de datos administrativa de una aplicaci\u00f3n. Se intenta recuperar correos electr\u00f3nicos y contrase\u00f1as e informaci\u00f3n financiera y confidencial vali\u00e9ndose de que los usuarios no tienen la costumbre de utilizar distintas contrase\u00f1as en distintas plataformas, si no siempre utilizar la misma.<\/span><\/p>\n<blockquote><p><span style=\"font-weight: 400;\">Un informe presentado por <\/span><a href=\"https:\/\/www.akamai.com\/es\/es\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Akamai<\/span><\/a><span style=\"font-weight: 400;\"> del 2019 expon\u00eda que el 36% de los ataques a entidades financieras se hac\u00eda a trav\u00e9s de inyecciones de SQL.<\/span><\/p><\/blockquote>\n<h2><b>\u00bfC\u00f3mo combatir las inyecciones de SQL?<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Existen varios enfoques generales de c\u00f3mo prevenir las inyecciones SQL de una aplicaci\u00f3n:<\/span><\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li style=\"font-weight: 400;\"><b>Prevenci\u00f3n a trav\u00e9s del c\u00f3digo fuente<\/b><span style=\"font-weight: 400;\">. Se deben aplicar una serie de buenas pr\u00e1cticas cuando se trabaja con consultas hacia una base de datos que utiliza el lenguaje de consultas SQL. Para ello, se deben consultar las APIs de los lenguajes de programaci\u00f3n y utilizar aquellos procedimientos y t\u00e9cnicas que se encuentren lo m\u00e1s actualizado posible.\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li style=\"font-weight: 400;\"><b>Uso de firewalls<\/b><span style=\"font-weight: 400;\">. Se debe colocar un firewall delante de la aplicaci\u00f3n para inspeccionar y filtrar el tr\u00e1fico entrante.\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li style=\"font-weight: 400;\"><b>Actualizaci\u00f3n e instalaci\u00f3n de parches<\/b><span style=\"font-weight: 400;\">. Muchas veces, los profesionales de las tecnolog\u00edas de la informaci\u00f3n desarrollan parches que suplen los problemas t\u00e9cnicos que pueda tener una aplicaci\u00f3n una vez que se ha descubierto una vulnerabilidad. Se debe estar al d\u00eda en cuanto a dichos parches ya que prev\u00e9n muchos ataques inform\u00e1ticos a parte de las inyecciones de SQL.\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><a href=\"https:\/\/www.conectasoftware.com\/producto\/ciberseguridad-para-ecommerce-ebook\/\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-17043\" src=\"https:\/\/www.conectasoftware.com\/magazine\/wp-content\/uploads\/2020\/04\/ciberseguridad-ebook.jpg\" alt=\"\" width=\"1800\" height=\"600\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00bfQu\u00e9 es una Inyecci\u00f3n de SQL? Una inyecci\u00f3n de SQL es un m\u00e9todo por el cual, se infiltra c\u00f3digo intruso a trav\u00e9s de una vulnerabilidad que se encuentra presente en una aplicaci\u00f3n haciendo uso del lenguaje de consultas SQL en una base de datos.\u00a0 Se dice que se produce una inyecci\u00f3n de SQL en el [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":17127,"menu_order":0,"template":"","meta":{"content-type":"","footnotes":""},"glossary-categories":[97,92],"glossary-tags":[],"glossary-languages":[],"class_list":{"0":"post-29024","1":"glossary","2":"type-glossary","3":"status-publish","4":"has-post-thumbnail","6":"glossary-categories-ciberseguridad","7":"glossary-categories-ecommerce"},"_links":{"self":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary\/29024","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary"}],"about":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/types\/glossary"}],"author":[{"embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/users\/1"}],"version-history":[{"count":1,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary\/29024\/revisions"}],"predecessor-version":[{"id":37754,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary\/29024\/revisions\/37754"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/media\/17127"}],"wp:attachment":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/media?parent=29024"}],"wp:term":[{"taxonomy":"glossary-categories","embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary-categories?post=29024"},{"taxonomy":"glossary-tags","embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary-tags?post=29024"},{"taxonomy":"glossary-languages","embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary-languages?post=29024"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}