{ "topic": "network-attack", "type": "single_choice", "schema_version": "1.0.0", "generated": "2026-09-17T00:00:00+08:00", "questions": [ { "id": "sc-001", "type": "single_choice", "difficulty": 2, "tags": [ "网络攻防", "中间人攻击" ], "question": "中间人攻击(Man-in-the-Middle Attack)的核心原理是什么?", "options": { "A": "直接破解目标主机的密码", "B": "在通信双方之间秘密拦截并可能篡改数据", "C": "利用操作系统漏洞获取 root 权限", "D": "通过大量请求使目标服务器过载" }, "answer": "B", "explanation": "中间人攻击的核心是攻击者将自己置于通信双方之间,能够拦截、读取甚至篡改双方传输的数据,而通信双方对此毫不知情。A 描述的是暴力破解攻击,C 描述的是提权攻击,D 描述的是拒绝服务(DDoS)攻击。", "source": null, "related": [] }, { "id": "sc-002", "type": "single_choice", "difficulty": 1, "tags": [ "网络攻防", "arp欺骗" ], "question": "ARP 协议工作在 OSI 模型的哪一层?", "options": { "A": "应用层", "B": "传输层", "C": "网络层", "D": "数据链路层" }, "answer": "C", "explanation": "ARP(Address Resolution Protocol)协议用于将 IP 地址解析为 MAC 地址,工作在 OSI 模型的网络层(第三层)。虽然 ARP 的结果用于数据链路层的帧封装,但 ARP 协议本身在网络层定义和运作。", "source": null, "related": [] }, { "id": "sc-003", "type": "single_choice", "difficulty": 2, "tags": [ "网络攻防", "arp欺骗" ], "question": "ARP 欺骗攻击中,攻击者通常发送什么类型的 ARP 报文来污染目标主机的 ARP 缓存表?", "options": { "A": "ARP 请求报文,将自己的 MAC 地址映射为网关的 IP", "B": "ARP 应答报文,将自己的 MAC 地址映射为网关的 IP", "C": "RARP 请求报文,请求 IP 地址分配", "D": "免费 ARP 报文,仅用于检测 IP 冲突" }, "answer": "B", "explanation": "在 ARP 欺骗中,攻击者主动发送伪造的 ARP 应答(Reply)报文,声称某个 IP 地址(如网关)对应的 MAC 地址是攻击者的 MAC 地址。目标主机收到后会更新 ARP 缓存表,将后续发往网关的流量发送给攻击者。A 虽然也可能涉及伪造,但 ARP 请求是广播形式,应答是更直接的欺骗手段;C 的 RARP 是逆向 ARP,与此无关;D 的免费 ARP 仅用于 IP 冲突检测,不能直接实现欺骗。", "source": null, "related": [] }, { "id": "sc-004", "type": "single_choice", "difficulty": 2, "tags": [ "网络攻防", "DNS劫持" ], "question": "DNS 劫持攻击的本质是什么?", "options": { "A": "使 DNS 服务器过载导致无法响应", "B": "篡改 DNS 解析过程,使域名指向错误的 IP 地址", "C": "加密 DNS 查询内容以防止被监听", "D": "利用 DNS 协议进行数据外泄" }, "answer": "B", "explanation": "DNS 劫持的本质是攻击者通过篡改 DNS 解析过程(如修改本地 hosts 文件、劫持 DNS 服务器、篡改 DNS 响应报文等),将目标域名解析到攻击者控制的错误 IP 地址上,从而引导用户访问恶意网站。A 描述的是 DNS 洪泛攻击(DDoS 的一种),C 描述的是 DNSSEC 或 DoH 的防御功能,D 描述的是 DNS 隧道技术。", "source": null, "related": [] }, { "id": "sc-005", "type": "single_choice", "difficulty": 1, "tags": [ "网络攻防", "端口扫描" ], "question": "TCP SYN 扫描又被称为「半开扫描」,原因是?", "options": { "A": "扫描只发送一次数据包", "B": "扫描只完成 TCP 三次握手的前两步,不建立完整连接", "C": "扫描只对一半的端口进行探测", "D": "扫描速率只有全连接扫描的一半" }, "answer": "B", "explanation": "TCP SYN 扫描发送 SYN 包后,如果收到 SYN/ACK 响应,说明端口开放,但扫描器发送 RST 包而非最后的 ACK 包来中断连接,因此只完成了三次握手的前两步(SYN → SYN/ACK → RST),没有建立完整的 TCP 连接。这种方式比全连接扫描更隐蔽,且速度更快。", "source": null, "related": [] }, { "id": "sc-006", "type": "single_choice", "difficulty": 2, "tags": [ "网络攻防", "中间人攻击" ], "question": "以下哪种技术可以有效防御 HTTPS 环境下的中间人攻击?", "options": { "A": "使用静态 ARP 绑定", "B": "启用 HTTPS 证书验证和证书固定(Certificate Pinning)", "C": "关闭 ICMP 协议", "D": "使用 UDP 协议替代 TCP" }, "answer": "B", "explanation": "HTTPS 通过 TLS/SSL 加密传输数据,结合证书验证可以确保通信对方的身份合法性。证书固定(Certificate Pinning)进一步限制只有特定证书才被信任,防止攻击者使用伪造证书进行中间人攻击。A 仅防御 ARP 欺骗型中间人攻击,不防 HTTPS 层面的攻击;C 关闭 ICMP 对防御中间人攻击无直接帮助;D 使用 UDP 不仅不能防御中间人攻击,还丢失了 TCP 的可靠性保障。", "source": null, "related": [] }, { "id": "sc-007", "type": "single_choice", "difficulty": 2, "tags": [ "网络攻防", "arp欺骗" ], "question": "在局域网中实施 ARP 欺骗后,攻击者通常还需要开启什么功能才能让目标主机正常上网而不察觉攻击?", "options": { "A": "IP 转发(IP Forwarding)", "B": "NAT 地址转换", "C": "DHCP 服务", "D": "DNS 缓存服务" }, "answer": "A", "explanation": "攻击者通过 ARP 欺骗截获目标主机的流量后,需要开启 IP 转发功能(IP Forwarding),将截获的数据包正常转发给网关,再将网关的响应回传给目标主机。这样目标主机的网络通信不会中断,攻击者可以在中间透明地监听或篡改数据。如果不开 IP 转发,目标主机将无法上网,攻击很容易被发现。", "source": null, "related": [] }, { "id": "sc-008", "type": "single_choice", "difficulty": 1, "tags": [ "网络攻防", "DNS劫持" ], "question": "以下哪一项属于 DNS 劫持的常见实施方式?", "options": { "A": "修改目标主机的 hosts 文件", "B": "向目标主机发送大量 ICMP 包", "C": "利用 SQL 注入获取数据库信息", "D": "通过钓鱼邮件获取用户密码" }, "answer": "A", "explanation": "修改 hosts 文件是一种典型的 DNS 劫持方式。hosts 文件的优先级高于 DNS 服务器查询,攻击者在其中写入错误的域名-IP 映射后,目标主机访问该域名时会直接访问错误的 IP 地址。B 是 ICMP 洪泛攻击,C 是 Web 应用攻击,D 是社会工程学攻击,均不属于 DNS 劫持。", "source": null, "related": [] }, { "id": "sc-009", "type": "single_choice", "difficulty": 2, "tags": [ "网络攻防", "端口扫描" ], "question": "Nmap 工具中,-sS 和 -sT 两种扫描方式的主要区别是什么?", "options": { "A": "-sS 扫描 UDP 端口,-sT 扫描 TCP 端口", "B": "-sS 是半开扫描不建立完整连接,-sT 是全连接扫描", "C": "-sS 扫描速度更慢,-sT 速度更快", "D": "-sS 只能扫描本地端口,-sT 可以扫描远程端口" }, "answer": "B", "explanation": "Nmap 中 -sS 指定 SYN 扫描(半开扫描),发送 SYN 后根据响应判断端口状态,不完成三次握手,需要 root 权限但更隐蔽快速;-sT 指定 TCP Connect 扫描(全连接扫描),通过系统调用完成完整的三次握手,不需要 root 权限但更容易被日志记录。A 错误,两者都是 TCP 扫描;C 错误,-sS 通常更快;D 错误,两者都可以扫描远程端口。", "source": null, "related": [] }, { "id": "sc-010", "type": "single_choice", "difficulty": 2, "tags": [ "网络攻防", "中间人攻击" ], "question": "SSL Stripping 攻击的原理是?", "options": { "A": "暴力破解 SSL 证书的私钥", "B": "降级 HTTPS 连接为 HTTP,使加密保护失效", "C": "伪造 CA 机构签发虚假证书", "D": "利用 SSL 协议漏洞直接解密通信内容" }, "answer": "B", "explanation": "SSL Stripping 是一种中间人攻击技术,攻击者在客户端和服务器之间拦截通信。当客户端请求 HTTPS 页面时,攻击者与服务器建立 HTTPS 连接,但以 HTTP 方式与客户端通信,从而「剥离」了 SSL/TLS 加密层。客户端的地址栏显示 HTTP 而非 HTTPS,数据以明文传输。该攻击由 Moxie Marlinspike 在 2009 年提出。", "source": null, "related": [] }, { "id": "sc-011", "type": "single_choice", "difficulty": 3, "tags": [ "网络攻防", "arp欺骗" ], "question": "要防御 ARP 欺骗攻击,以下哪种方案最为全面有效?", "options": { "A": "仅在客户端绑定静态 ARP 条目", "B": "在网络设备上启用动态 ARP 检测(DAI),并结合 DHCP Snooping", "C": "关闭所有主机的 ARP 协议", "D": "将所有主机的 ARP 缓存超时时间设为 0" }, "answer": "B", "explanation": "动态 ARP 检测(Dynamic ARP Inspection, DAI)配合 DHCP Snooping 可以在网络交换机层面验证 ARP 报文的合法性,丢弃非法 ARP 报文,是目前最为全面有效的 ARP 欺骗防御方案。A 的静态绑定在大规模网络中难以维护,且无法防御网关侧的 ARP 欺骗;C 关闭 ARP 协议会导致局域网内无法正常通信;D 设超时为 0 会导致 ARP 请求泛滥且不能阻止攻击。", "source": null, "related": [] }, { "id": "sc-012", "type": "single_choice", "difficulty": 2, "tags": [ "网络攻防", "DNS劫持" ], "question": "DNSSEC(DNS Security Extensions)主要解决哪类 DNS 安全问题?", "options": { "A": "DNS 服务器遭受 DDoS 攻击", "B": "DNS 响应被篡改或伪造", "C": "DNS 查询内容被第三方窃听", "D": "DNS 服务器配置错误" }, "answer": "B", "explanation": "DNSSEC 通过数字签名机制为 DNS 数据提供来源验证和数据完整性保护,确保 DNS 响应来自权威 DNS 服务器且未被篡改。它可以有效防止 DNS 缓存投毒等 DNS 欺骗攻击。A 需要 DDoS 防护方案,C 需要 DNS over HTTPS(DoH)或 DNS over TLS(DoT),D 需要配置审计工具。", "source": null, "related": [] }, { "id": "sc-013", "type": "single_choice", "difficulty": 1, "tags": [ "网络攻防", "端口扫描" ], "question": "以下哪种端口扫描方式能够同时检测端口状态和操作系统类型?", "options": { "A": "PING 扫描", "B": "TCP FIN 扫描", "C": "Nmap 的操作系统指纹识别扫描(-O 参数)", "D": "UDP 扫描" }, "answer": "C", "explanation": "Nmap 的操作系统指纹识别(-O)通过分析目标主机对各种探测包的响应特征(如 TCP 窗口大小、TTL 值、TCP 选项等)来推断操作系统类型,结合端口扫描功能可以同时获得端口状态和操作系统信息。A 的 PING 扫描仅检测主机是否在线;B 的 FIN 扫描仅判断端口状态;D 的 UDP 扫描仅探测 UDP 端口。", "source": null, "related": [] }, { "id": "sc-014", "type": "single_choice", "difficulty": 3, "tags": [ "网络攻防", "中间人攻击" ], "question": "ARP 欺骗与 DNS 劫持结合使用时,攻击者可以实现什么效果?", "options": { "A": "仅能窃听局域网内的通信内容", "B": "将目标用户对特定域名的访问重定向到钓鱼网站,且难以被发现", "C": "直接获取目标主机的管理员权限", "D": "使目标主机完全断网" }, "answer": "B", "explanation": "ARP 欺骗将攻击者置于通信中间人位置,DNS 劫持则在 DNS 解析阶段将域名指向攻击者控制的 IP。两者结合后,攻击者可以先通过 ARP 欺骗截获流量,再篡改 DNS 响应,将用户对合法网站的访问重定向到精心制作的钓鱼网站。由于用户输入的域名无误,且钓鱼网站可以模仿真实界面,极难被发现。A 不够全面,C 与此类网络层攻击无关,D 是攻击失效而非攻击目的。", "source": null, "related": [] }, { "id": "sc-015", "type": "single_choice", "difficulty": 1, "tags": [ "网络攻防", "arp欺骗" ], "question": "ARP 协议的主要功能是?", "options": { "A": "将域名解析为 IP 地址", "B": "将 IP 地址解析为 MAC 地址", "C": "将 MAC 地址解析为 IP 地址", "D": "分配 IP 地址给网络设备" }, "answer": "B", "explanation": "ARP(Address Resolution Protocol,地址解析协议)的核心功能是在已知目标 IP 地址的情况下,通过广播请求获取对应设备的 MAC 地址。A 是 DNS 的功能,C 是 RARP(逆向 ARP)的功能,D 是 DHCP 的功能。", "source": null, "related": [] }, { "id": "sc-016", "type": "single_choice", "difficulty": 2, "tags": [ "网络攻防", "端口扫描" ], "question": "以下关于 UDP 端口扫描的描述,哪项是正确的?", "options": { "A": "UDP 扫描速度比 TCP SYN 扫描更快", "B": "UDP 扫描通过发送 UDP 数据包,根据是否收到 ICMP 端口不可达消息判断端口状态", "C": "UDP 扫描不需要特殊权限即可执行", "D": "UDP 扫描的准确性比 TCP 扫描更高" }, "answer": "B", "explanation": "UDP 端口扫描的原理是向目标 UDP 端口发送 UDP 数据包,如果收到 ICMP Port Unreachable 响应则说明端口关闭,如果没有响应(或收到 UDP 应答)则端口可能开放。由于 UDP 是无连接协议,扫描效率较低且准确性不如 TCP 扫描(因为无响应可能是端口开放也可能是包被丢弃)。A 错误,UDP 扫描通常更慢;C 不完全准确,需要原始套接字权限;D 错误,UDP 扫描准确性通常更低。", "source": null, "related": [] }, { "id": "sc-017", "type": "single_choice", "difficulty": 3, "tags": [ "网络攻防", "DNS劫持" ], "question": "DNS 缓存投毒(DNS Cache Poisoning)攻击中,攻击者利用的是 DNS 协议的哪个缺陷?", "options": { "A": "DNS 查询使用明文传输,缺乏加密", "B": "DNS 协议缺乏对响应报文的来源认证机制", "C": "DNS 服务器没有访问控制功能", "D": "DNS 协议不支持 IPv6 地址" }, "answer": "B", "explanation": "DNS 缓存投毒攻击利用的是传统 DNS 协议缺乏对响应报文来源的认证机制。DNS 使用 UDP 协议,且查询报文中的 Transaction ID 仅 16 位,攻击者可以通过预测或暴力猜测 Transaction ID,在合法响应到达之前向 DNS 缓存服务器注入伪造的 DNS 响应记录。DNSSEC 的引入正是为了解决这一问题,通过数字签名验证 DNS 响应的来源和完整性。", "source": null, "related": [] }, { "id": "sc-018", "type": "single_choice", "difficulty": 2, "tags": [ "网络攻防", "中间人攻击" ], "question": "以下哪种场景最容易遭受中间人攻击?", "options": { "A": "使用 VPN 连接的远程办公", "B": "连接公共场合未加密的开放 Wi-Fi", "C": "通过 4G/5G 蜂窝网络上网", "D": "使用有线网络连接企业内网" }, "answer": "B", "explanation": "公共场合的开放 Wi-Fi 通常没有加密保护,攻击者可以在同一网络中轻松实施 ARP 欺骗、DNS 劫持等中间人攻击。此外,还可以搭建恶意 Wi-Fi 热点(Evil Twin)诱骗用户连接。A 的 VPN 加密了所有通信,大幅降低中间人攻击风险;C 的蜂窝网络有较强的链路层加密;D 的有线企业内网通常有网络隔离和监控措施。", "source": null, "related": [] }, { "id": "sc-019", "type": "single_choice", "difficulty": 1, "tags": [ "网络攻防", "端口扫描" ], "question": "端口扫描的主要目的是什么?", "options": { "A": "破解目标主机的登录密码", "B": "发现目标主机开放的服务和潜在攻击入口", "C": "加密目标主机的网络通信", "D": "提升目标主机的网络带宽" }, "answer": "B", "explanation": "端口扫描是网络安全评估的基础步骤,通过探测目标主机各端口的状态(开放、关闭、过滤),可以了解目标主机上运行了哪些网络服务(如 Web 服务、SSH、FTP 等),进而发现潜在的安全漏洞和攻击入口。A 是暴力破解的工作,C 和 D 与端口扫描无关。", "source": null, "related": [] }, { "id": "sc-020", "type": "single_choice", "difficulty": 3, "tags": [ "网络攻防", "arp欺骗", "中间人攻击" ], "question": "在 ARP 欺骗实现的中间人攻击中,攻击者同时欺骗网关和目标主机的技术术语叫什么?", "options": { "A": "单向 ARP 欺骗", "B": "双向 ARP 欺骗(ARP 双毒化)", "C": "ARP 泛洪攻击", "D": "ARP 重放攻击" }, "answer": "B", "explanation": "双向 ARP 欺骗(Bidirectional ARP Spoofing / ARP Double Poisoning)是指攻击者同时向网关和目标主机发送伪造的 ARP 应答:告诉目标主机'网关的 MAC 是攻击者的 MAC',同时告诉网关'目标主机的 MAC 是攻击者的 MAC'。这样双向流量都经过攻击者,实现完整的中间人攻击。A 的单向欺骗只能截获一个方向的流量;C 的 ARP 泛洪是用大量 ARP 报文淹没交换机 MAC 表;D 不是标准术语。", "source": null, "related": [] } ] }