wip: 2025 spring 计算机安全试卷+答案
This commit is contained in:
parent
a876ad2969
commit
6c84b0f447
|
|
@ -0,0 +1,395 @@
|
||||||
|
---
|
||||||
|
title: 2024-2025学年下学期期末
|
||||||
|
author:
|
||||||
|
- name: KirisameVanilla
|
||||||
|
url: https://vanillaaaa.org/
|
||||||
|
- name: psycho Lee
|
||||||
|
url: https://github.com/psycho0816
|
||||||
|
email: 10235101500@stu.ecnu.edu.cn
|
||||||
|
---
|
||||||
|
|
||||||
|
## 2024-2025学年下学期期末试卷(不全)
|
||||||
|
|
||||||
|
### 分析题
|
||||||
|
|
||||||
|
1. 计算机安全 CIA 三元组指的是哪三个方面(3分) , 并简述对称加密和非对称加密如何实现这三个方面的(7分) ?
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
2. 基于口令的认证中, 使用 256位哈希值 和 16位盐值。用户的口令长度为8个字符, 每个字符可能是:
|
||||||
|
|
||||||
|
- 26个小写字母(a–z)
|
||||||
|
- 26个大写字母(A–Z)
|
||||||
|
- 10个数字(0–9)
|
||||||
|
|
||||||
|
1. 给出哈希值的总数量以及盐值的总数量;(4分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
2. 给出口令的总数量;(2分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
3. 攻击者需要进行多少次攻击? 请简述具体的攻击过程。(4分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
3. 为了实施 DNS 放大攻击, 攻击者必须触发中间服务器产生足够大的 DNS 响应数据包, 以超过目标组织网络链路的容量。目标系统的链路带宽是 8 Mbps
|
||||||
|
|
||||||
|
1. 每个 DNS 响应数据包大小为 1000 字节(忽略封装开销) , 攻击者每秒必须触发多少个这样的数据包才能淹没该链路? (3分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
2. 攻击者发送的请求数据包为60字节, 请问占据了链路中多少带宽? (3分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
3. 给出检测DNS放大攻击的两种方法。(4分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
4. 回答下列问题
|
||||||
|
|
||||||
|
1. 恶意软件的三种传播机制? (3分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
2. 恶意软件的四种有效载荷? (2分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
3. 为了防止恶意软件攻击, 如何加固操作系统? (5分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
5. 以下是一段 PHP 登录验证代码
|
||||||
|
|
||||||
|
``` php
|
||||||
|
// 获得用户输入的ID和passwd
|
||||||
|
$username = ...;
|
||||||
|
$password = ...;
|
||||||
|
|
||||||
|
// SQL查询
|
||||||
|
SELECT username, password FROM users WHERE username = '$username' AND password = '$password';
|
||||||
|
|
||||||
|
// 验证逻辑
|
||||||
|
if ($user && password_verify($password, $user['password'])) {
|
||||||
|
// 登录成功
|
||||||
|
echo "登录成功!欢迎访问系统。";
|
||||||
|
} else {
|
||||||
|
// 登录失败
|
||||||
|
echo "登录失败:无效的ID或密码。";
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
注:SQL中, mysql_real_escape_string()函数可以转义特殊字符, 使其不能发挥作用
|
||||||
|
|
||||||
|
1. 上述代码存在什么攻击漏洞? 攻击者如何绕过安全检查利用该漏洞? (5分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
2. 除了 SQL 注入攻击漏洞, 还可以利用哪些攻击方法? 并解释原因。(5分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
3. 如何检测和过滤用户输入? 请修改代码以修复漏洞。(5分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
4. 给出检测用户输入的一种方法。(5分)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>答案:</summary>
|
||||||
|
CIA 三元组是
|
||||||
|
|
||||||
|
- 机密性 Confidentiality
|
||||||
|
- 完整性 Integrity
|
||||||
|
- 可用性 Availability
|
||||||
|
|
||||||
|
对称加密:
|
||||||
|
|
||||||
|
- 机密性: 使用单一密钥对数据进行加密和解密
|
||||||
|
- 完整性: 使用消息验证码来确保消息的完整性, 而消息验证码基于对称加密
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
非对称加密:
|
||||||
|
- 机密性: 使用接收方的公钥加密, 只有私钥持有者可以解密
|
||||||
|
- 完整性: 使用数字签名确保完整性, 发送方用私钥对消息摘要签名, 接收方用其公钥验证
|
||||||
|
- 可用性: 不提供
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
***
|
||||||
Loading…
Reference in New Issue