クロスサイトスクリプティングの特徴に関する記述として, 適切なものはどれか。
平成24年度 秋期 ITパスポート試験 問60
这道题的解析和你的作答记录。
問 60
- ア
正解 正确答案是ア。跨站脚本攻击(XSS)是利用这样一种 Web 应用程序漏洞的攻击:把用户输入的字符串原样作为 HTML 嵌入页面后返回。留言板的发帖栏、搜索关键词栏、输入内容的确认页面、错误消息等把输入值输出到画面的位置都会成为攻击目标。攻击者在这些输入栏中填入的不是普通字符串,而是含有 <script> 标签等的脚本片段。如果网站一方不对尖括号等特殊字符做转义(无害化)处理就直接输出,该脚本就不再是单纯的文字,而是作为程序送达受害者的 Web 浏览器,并作为该网站页面的一部分被执行。被执行的脚本以该网站的权限运行,因此会造成如下危害:窃取保存在用户 Cookie 中的会话 ID 并发送给攻击者(冒充身份、会话劫持);显示伪造的输入表单,诱使用户输入 ID、密码、信用卡号;篡改页面把用户诱导到别的网站。由于攻击者的脚本是经由陷阱网站或做过手脚的链接、在另一个网站(跨站)上被执行的,因此得名。所以,叙述为「利用了这样一种漏洞:将输入到 Web 网站的数据中所含的恶意脚本原样发送给 Web 浏览器」的ア是正确的。此外,防范的核心是切实做好输出时的转义处理(净化处理),同时也会并用输入值校验与引入 WAF。
错误イ
向未检查输入数据长度的程序发送超出预期长度的数据,这种攻击是缓冲区溢出攻击。从预先准备的存储区域(缓冲区)中溢出的部分会覆盖相邻的内存区域,通过改写返回地址等,使攻击者植入的指令得以执行,或使系统异常终止。被溢出的对象是服务器一侧的内存,与在受害者浏览器上执行脚本的 XSS 相比,其机制和危害的产生方式都不同。
错误ウ
伪装成便利工具或游戏等有用的软件、让用户自己安装并在暗中进行非法动作的,是特洛伊木马(恶意软件的一种)。其特征是欺骗用户使其安装,而不是利用 Web 网站输出处理上的漏洞。侵入之后会进行向外部发送信息、设置后门等动作,但这并不是对 XSS 的说明。
错误エ
文字处理软件和电子表格软件所具备的、记录操作步骤并可在之后调出执行的功能是宏,非法利用该功能来执行不正当处理的是宏病毒。典型情形是打开文档文件时被感染并发作,感染途径是邮件所附带的文档文件等。它瞄准的对象是应用程序的宏功能,与利用 Web 网站输入输出处理漏洞的 XSS 不同。
- 跨站脚本(XSS)的本质在于:利用 Web 网站把输入的字符串不加转义就原样输出到画面的漏洞,让攻击者的脚本在受害者的 Web 浏览器上执行。主要危害是窃取 Cookie 中的会话 ID 从而冒充身份,以及用伪造表单骗取信息;防范的要点是输出时的转义处理(净化处理)。
- 用「瞄准的对象」来区分容易混淆的攻击手法 —— XSS 瞄准把输入值原样输出的 Web 应用程序的漏洞,缓冲区溢出瞄准未检查输入长度的程序的内存,SQL 注入瞄准发往数据库的查询语句,特洛伊木马瞄准用户自身的判断(欺骗其安装),宏病毒瞄准文字处理软件和电子表格软件的宏功能。