{"id":1000390,"date":"2007-02-04T10:33:11","date_gmt":"2007-02-04T15:33:11","guid":{"rendered":"http:\/\/www.elharo.com\/blog\/software-development\/web-development\/2007\/02\/04\/all-injection-attack-vectors\/"},"modified":"2007-02-04T10:34:33","modified_gmt":"2007-02-04T15:34:33","slug":"all-injection-attack-vectors","status":"publish","type":"post","link":"https:\/\/www.elharo.com\/blog\/software-development\/web-development\/2007\/02\/04\/all-injection-attack-vectors\/","title":{"rendered":"All Injection Attack Vectors"},"content":{"rendered":"<p>For my next book, I&#8217;m trying to develop a reasonably comprehensive list of technologies which are potentially vulnerable to injection attacks. SQL injection is the most common, but there are of course many others.  So far here are the ones I\u00e2\u20ac\u2122ve got. What else am I missing?<\/p>\n<ul>\n<li>SQL<\/li>\n<li>XPath<\/li>\n<li>XQuery<\/li>\n<li>XSLT<\/li>\n<li>JavaScript<\/li>\n<li>LDAP<\/li>\n<\/ul>\n<p><!--more--><\/p>\n<p>Partially, this is a question of which languages have an eval() function, either directly or indirectly. For instance, although theoretically one could imagine a service that accepted Java source code from a user, compiled it, and then executed the result, that&#8217;s so complex an approach few if any services have been implemented like that. <\/p>\n<p>By contrast the <code>eval()<\/code> function in JavaScript will take any string and execute it. That&#8217;s why JSON worries me so much. SQL is not execute directly, but most languages including PHP, JSP, and so forth have ways to easily convert strings into SQL statements. If you&#8217;re not careful about what&#8217;s in those strings, you can find all records in your database deleted because of an errant semicolon.<\/p>\n<p>So where else do injection attacks arise? I can&#8217;t imagine this list exhausts all the possibilities. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>For my next book, I&#8217;m trying to develop a reasonably comprehensive list of technologies which are potentially vulnerable to injection attacks. SQL injection is the most common, but there are of course many others. So far here are the ones I\u00e2\u20ac\u2122ve got. What else am I missing? SQL XPath XQuery XSLT JavaScript LDAP<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[410],"class_list":["post-1000390","post","type-post","status-publish","format-standard","hentry","category-web-development","tag-flash"],"_links":{"self":[{"href":"https:\/\/www.elharo.com\/blog\/wp-json\/wp\/v2\/posts\/1000390","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.elharo.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.elharo.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.elharo.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.elharo.com\/blog\/wp-json\/wp\/v2\/comments?post=1000390"}],"version-history":[{"count":0,"href":"https:\/\/www.elharo.com\/blog\/wp-json\/wp\/v2\/posts\/1000390\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.elharo.com\/blog\/wp-json\/wp\/v2\/media?parent=1000390"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.elharo.com\/blog\/wp-json\/wp\/v2\/categories?post=1000390"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.elharo.com\/blog\/wp-json\/wp\/v2\/tags?post=1000390"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}