自学内容网 自学内容网

国科大web安全技术期末考试试卷(附参考答案)

一、选择题(每题1分,共20分)

  1. 以下编程语言中,最不适合用于Web开发的是?

    • A:PHP
    • B:JSP
    • C:JavaScript
    • D:C/C++
    • 答案:D
    • 解析:C/C++主要用于系统编程和应用程序开发,而PHP、JSP和JavaScript都专门为Web开发设计。
  2. 以下属于编码算法的是?

    • A:BASE64
    • B:MD5
    • C:SHAI
    • D:RSA
    • 答案:A
    • 解析:BASE64是一种编码算法,用于将二进制数据编码为ASCII字符。MD5和SHA1是哈希算法,RSA是加密算法。
  3. 以下哪种攻击,不能视为“代码注入”?

    • A:SQL注入
    • B:XSS
    • C:CSRF
    • D:文件包含
    • 答案:C
    • 解析:CSRF(跨站请求伪造)不是代码注入攻击,而是利用用户的身份在未授权的情况下执行操作。
  4. 以下关于HTTP协议的说法,有明显错误的是?

    • A:HTTP是应用层协议,通常承载于TCP协议之上,常用端口号是80
    • B:HTTPS协议是HTTP协议的升级版本,解决了HTTP协议固有的安全问题
    • C:HTTP协议存在先天性弊端,如采用明文传输数据,且身份认证缺乏校验
    • D:采用HTTP协议通信时,存在被中间人攻击的风险
    • 答案:B
    • 解析:虽然HTTPS确实增强了HTTP的安全性,但其描述不够准确,HTTPS使用SSL/TLS加密,而不是简单的“升级”。
  5. 以下哪种Web请求,会受浏览器同源策略的约束?

    • A:使用HTML的标签,跨域请求一张图片
    • B:使用HTML的<script>标签,跨域请求一个Javascript 文件
    • C:使用HTML的<iframe>标签,跨域请求一个HTML页面
    • D:使用 Javascript的 XMLHttpRequest方法,跨域请求一段JSON信息
    • 答案:D
    • 解析:XHR请求受到同源策略的限制,而其他选项(如<img><script><iframe>)在某些情况下可以跨域。
  6. 以下关于SSRF的说法,哪一个是正确的?

    • A:无法实现本地文件的获取
    • B:无法用于绕过Chrome 浏览器的沙箱机制
    • C:无法攻击运行在内网或本地的应用程序
    • D:无法对内网的Web应用进行指纹识别
    • 答案:B
    • 解析:SSRF(服务器端请求伪造)可以通过利用服务器的请求能力,潜在地绕过沙箱机制。
  7. 相比较而言,以下哪款工具,最不可能用于Web渗透攻击?

    • A:中国菜刀
    • B: SQLMap
    • C: Burpsuite
    • D:NoScript
    • 答案:D
    • 解析:NoScript是一个浏览器扩展,用于阻止脚本执行,而其他工具(如中国菜刀、SQLMap和Burpsuite)则用于渗透测试。
  8. 以下关于HTTPS的说法,哪一个是错误的?

    • A:在正式传输数据前,通信双方先进行身份确以
    • B:通信双方在密钥协商过程中,使用非对称密钥传输数据
    • C:通信双方在密钥协商后,使用非对称密钥传输数据
    • D:HTTPS 通信常用端口号是443
    • 答案:C
    • 解析:在密钥协商后,双方使用对称密钥进行数据传输,而非非对称密钥。
  9. 以下关于Cookie 和Session的说法,有明显错误的是:

    • A:Cookie 用在客户端,用于辨别用户身份和维持状态
    • B:Session 用在服务端,用于辨别用户身份和维持状态
    • C:浏览器Cookie 的Secure 属性是为了防止Cookie被JavaScript读取和修改
    • D:必从安全性角度考虑,应该多使用Session;从性能角度考虑,应该多使用Cookie
    • 答案:C
    • 解析:Secure属性是为了防止Cookie在非HTTPS连接中被传输,而不是防止JavaScript读取。
  10. 以下关于DNS的说法,有明显错误的是:

    • A:DNS 协议典型的端口号是53,既使用UDP协议,也使用TCP协议
    • B:全球有13台DNS根服务器,其中1台主根服务器,12台辅根服务器,上面保存了全球绝大部分域名对应的IP地址
    • C:DNS的查询方式有两种:递归查询和迭代查询
    • D:DNS 是Domain Name System的缩写,是提供域名和IP地址相互映射的一个分布式数据库
    • 答案:B
    • 解析:虽然全球有13台根服务器,但并不是所有的域名信息都保存在这些服务器上。
  11. 以下哪个条SQL语句(运行环境:Mysql),一般不会引发数据库报错?

    • A. select exp((select * from(select userO)a)
    • B. select updatexml(0x3a,concat(1,(select userO))),1)
    • *C. select 1 from (select count(*),concat(select userO),floor(rand(0)2))x from information schema.tables group by x)a
    • D. select’<?php@eval($_POST['c']);?>’ into outfile 'd:Nwww\m.php
    • 答案:D
    • 解析:选项D是将内容写入文件,不会引发语法错误,而其他选项由于语法问题可能会报错。
  12. 哪个符号,被黑客广泛地用于SQL注入测试?

    • A:下划线符
    • B:反斜线符
    • C:单引号符
    • D:非上述答案
    • 答案:C
    • 解析:单引号符(')常用于SQL注入,以结束字符串并注入恶意SQL代码。
  13. 以下关于浏览器安全机制的说法,有明显错误的是?

    • A:沙箱(Sandbox)是一种隔离对象/线程/进程的机制,目的是控制其访问系统资源的权限
    • B:各个浏览器对同一种安全机制的实现方式并不一定相同
    • C:地址空间布局随机化(AddressSpace Layout Randomization)和数据执行保护(Data Execution Prevention)是浏览器上特有的安全机制
    • D:MemGC(Memory Garbage Collector)是一种内存管理机制
    • 答案:C
    • 解析:地址空间布局随机化和数据执行保护并不是浏览器特有的机制,它们在操作系统层面也有实现。
  14. 以下文件类型(后缀),不会被黑客用作Webshell的是?

    • A:PHP文件
    • B:JSP文件
    • C:TXT文件
    • D:非上述答案
    • 答案:C
    • 解析:TXT文件通常不被用作Webshell,因为它们不能被服务器执行。
  15. 以下工具或命令,不能用来做中间人攻击的是?

    • A:Wireshark
    • B:Burpsuit
    • C:MITMProxy
    • D:Fiddler
    • 答案:A
    • 解析:Wireshark是一个网络流量分析工具,不能直接用于中间人攻击,而其他工具可以。
  16. 以下关于PHP文件包含漏洞的说法,有明显错误的是?

    • A:PHP的文件包含漏洞,通常由include()、 include_once()、require()、require_once()这四个函数引发
    • B: PHP的文件包含漏洞利用时,被包含的文件必须是Web服务器能够解析的特定的文件类型
    • C: PHP的文件包含漏洞的利用方式,可以分为包含本地文件和包含远程链接两种
    • D:PHP 文件包含漏洞形成的条件是:PHP 代码中通过动态变量的方式引入需要包含的文件,且用户能够控制该动态变量的值
    • 答案:B
    • 解析:文件包含漏洞可以包含任意文件,不限于特定的文件类型。
  17. 下列关于XXE说法错误的是?

    • A:攻击者可以利用XXE的方式实施 SSRF 攻击
    • B:利用超大外部DTD文件加载实施拒绝服务攻击时,要求DTD文件格式必须是Well-formed
    • C:在blindXXE场景下,攻击者可以通过URL或FTP迂回获取文件内容
    • D:攻击者可以在外部文档定义实体时引用参数实体
    • 答案:D
    • 解析:参数实体通常不被允许在外部文档中被引用。
  18. 以下关于0Auth的说法,有明显错误的是?

    • A. OAuth 是一种认证(Authentication)协议,可以使第三方网站在不获得用户在目标网站账户密码的情况下,使用目标网站的资源
    • B. OAuth 2.0定义了四种授权方式:授权码模式(authorization code)、简化模式(implicit)、密码模式(resource owner password credentials)、客户端模式(client credentials)
    • C. OAuth2.0的授权码模式(authorization code)是功能最完整、流程最严密的授权模式
    • D. OAuth免去了用户注册过程,提高了用户体验,因此颇受欢迎
    • 答案:A
    • 解析:OAuth是一种授权(Authorization)协议,而非认证协议。
  19. 以下关于XSS的说法,有明显错误的是?

    • A:XSS 攻击发生在Web客户端,是客户端Web安全的头号敌人
    • B:XSS攻击类型可以粗略地分为反射型XSS,存储型XSS,DOM-Based XSS
    • C:XSS安全问题都是JavaScript引发的
    • D:XSS的危害大,包括网页挂马、窃取Cookie、传播Web蠕虫、发动DDoS等
    • 答案:C
    • 解析:虽然JavaScript是XSS攻击的主要载体,但XSS问题不仅限于JavaScript。
  20. 下列关于clickjacking说法错误的是?

    • A. clickjacking的利用方式主要有图片覆盖劫持、FLASH点击劫持、浏览器拖拽劫持、触屏劫持等。
    • B. "Cross Site Double Clicking Attack"利用了人类对于快速视觉变化难以作出反应的特性,通过弹窗方式打破framebusting限制诱使用户双击,从而达到攻击目的。
    • C. X-FRAME-OPTIONS 和Frame Busting 是应对ClickJacking攻击的常用防御方式。
    • D. 利用clickjacking 不可能拿到Android设备的控制权。
    • 答案:D
    • 解析:clickjacking可以在某些情况下影响移动设备的操作,存在一定的风险。

二、名词解释(每题2分,共6分)

  1. SQL注入:一种安全漏洞,攻击者通过在SQL查询中插入恶意代码,操控数据库执行未授权的操作,从而获取、修改或删除数据。

  2. SSO (Single Sign-On,单点登陆):一种用户身份验证过程,允许用户使用一个账户在多个应用程序中进行身份验证,简化用户体验,减少多次登录的需求。

  3. 浏览器同源策略:一种安全机制,限制一个网站的脚本只能访问同源(协议、域名和端口相同)的资源,以防止恶意网站窃取敏感信息。

三、简答题(每题4分,共12分)

  1. 请简述XSS攻击的类型,并分别阐述其原理。

    • 反射型XSS:攻击者将恶意脚本嵌入到URL中,当用户点击该链接时,恶意脚本在浏览器中执行。
    • 存储型XSS:恶意脚本被存储在服务器上(如数据库),当用户访问页面时,脚本被加载并执行。
    • DOM-Based XSS:通过修改客户端的DOM结构,直接在用户的浏览器中执行恶意脚本。
  2. 请简述鱼叉式网络钓鱼(Spear Phishing)和水坑攻击(Watering Hole)原理。

    • 鱼叉式网络钓鱼:攻击者针对特定目标发送伪装的邮件,诱使用户点击链接或下载恶意附件,窃取信息或植入恶意软件。
    • 水坑攻击:攻击者识别目标用户常访问的网站,感染这些网站以传播恶意代码,当目标用户访问时,便会被攻击。
  3. 请分别简述CSRF(Cross-Site Request Forgery,跨站请求伪造)和SSRF(Server-Side Request Forgery,服务端请求伪造)原理。

    • CSRF:攻击者诱使用户在已认证的会话中执行非预期的操作,利用用户的身份进行未授权的请求。
    • SSRF:攻击者诱使服务器向内部或外部地址发起请求,可能导致敏感信息泄露或内部服务被攻击。

四、论述题(共12分)

  1. 某研究所承担了很多国家重要科研项目,是境外APT组织重点针对的目标。如果请你为该单位设计网络安全体系,你会采取哪些措施来降低与Web相关的APT(Advanced Persistent Threat)攻击风险?(3分)这些措施各有什么作用?(3分)之间又有什么联系?(3分)

    • 措施

      1. 定期进行安全审计和渗透测试。
      2. 实施多因素身份验证(MFA)。
      3. 加强员工的安全意识培训。
    • 作用

      1. 安全审计和渗透测试可以识别系统漏洞,及时修复。
      2. MFA增加了身份验证的复杂性,降低账户被攻破的风险。
      3. 安全意识培训提升员工对网络钓鱼等攻击的识别能力。
    • 联系

      1. 安全审计发现的漏洞可通过MFA和培训来加强防护。
      2. 培训员工识别钓鱼攻击,减少因人而导致的安全事件。
  2. 经过《Web安全技术》课程的学习,你认为自己最大的收获是什么?(3分)

    • 我最大的收获是对Web安全的全面理解,包括常见的攻击方式及其防护措施。这让我意识到安全不仅是技术问题,更是管理和策略的问题,必须综合考虑。

原文地址:https://blog.csdn.net/beta___/article/details/144433430

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!