代码注入是利用Web应用在输入校验上的逻辑缺陷,或者部分脚本函数本身存在的代码执行漏洞,而实现的攻击手法。
代码注入的用途
蓄意的恶意使用
使用代码注入通常被认为是一种恶意行为,事实上,这种行为是经常发生的。在黑色或破译系统中,通过代码注入技术来获取信息、提权或非法访问某个系统是非常流行的。用于恶意目的的代码注入可以包括:
-通过SQL注入意来修改 数据库 值。
-从对网站外观的破坏,到对敏感数据的严重破坏,都可能产生影响。
-在用户访问恶意网站时,通过网页浏览器或其插件对安全隐患进行代码注入,以便在用户机器上安装流氓软件。
-通过PHP或ASP注入或在服务器端运行恶意代码来安装流氓软件。
-在UNIX系统中,Shell注入安全隐患可以用来修改setuidroot二进制数据,达到提权到root权限使用的目的。
-在窗口系统中,通过Shell注入的安全隐患来处理系统服务,从而达到提权到本地系统使用权限的目的。
-利用HTML/脚本注入(跨站点脚本)在网页浏览器上进行连接盗取/cookies窃取冒充他人,获取他人个人敏感数据。
蓄意的善意使用:有些人可能出于好心而使用代码注入。举例来说,通过代码注入来改变或调试一个程序或系统的行为,可以在没有任何恶意的情况下“摆弄”系统以某种方式表现其行为。一般来说,即使相当善意的代码注入使用都不被建议使用。
非蓄意的用途:某些用户可能会不经意的进行代码注入,因为他们对程序提供的输入,没列在当初开发系统者的考虑中。