为了防御XSS跨站脚本攻击,可以采用多种安全措施,但( )不可取
A. 编写安全的代码,对用户数据进行严格检查过滤
B. 阻止用户向 Web页面提交数据
C. 在可能情况下避免提交HTML代码
D. 即使允许提交特定的HTML标签,也必须对该标签的各属性进行仔细检查
查看答案
关于SQL注入说法正确的是( )
A. SQL注入攻击是攻击者直接对Web数据库的攻击
B. SQL注入攻击除了可以让攻击者绕过认证之外,不会再有其他危害
C. SQL注入攻击可以造成整个数据库全部泄露
D. SQL注入漏洞可以通过加固服务器来实现
对于SQL注入和XSS跨站,下列说法中不正确的是( )
A. SQL注入的SQL命令在用户浏览器中执行,而XSS跨站的脚本在Web后台数据库中执行
B. XSS和SQL注入攻击中的攻击指令都是由黑客通过用户输入域注入,只不过XSS注入的是HTML代码(以后称脚本),而SQL注入中注入的是SQL命令
C. XSS和SQL注入攻击都利用了Web服务器没有对用户输入数据进行严格检查和有效过滤的缺陷
D. XSS攻击盗取 Web终端用户的敏感数据,甚至控制用户终端操作,SQL注入攻击盗取Web后台数据库中的敏感数据,甚至控制整个数据库服务器
对于SQL注入攻击的防御,可以采取以下( )措施
A. 要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接
B. 不要把机密信息直接存放,加密或者hash掉密码和敏感的信息;不要使用动态拼装SQL,可以使用参数化的SQL或者直接使用存储过程进行数据查询存取
C. 对表单里的数据进行验证与过滤,在实际开发过程中可以单独列一个验证函数,该函数把每个要过滤的关键词(如select、1=1等)都列出来,然后每个表单提交时都调用这个函数
D. 以上3个选项都对
在登录结果.jsp中有以下一段代码:SELECT*FROM T_CUSTOMER WHERE ACCOUNT='+account+AND PASSWORD='+ password+';且没有其他转换语句,如果输入的用户账号为“Tom'OR1=1- -”,密码随意输入,则出现的情况是( )
A. 密码错误
B. Tom用户的记录
C. T_CUSTOMER表中的所有记录
D. 以上情况均不对