# 第9章课后作业

### **练习**

1：导出任意一主机的 SAM 数据库，分别采用在线和离线方法

2：导出任意一主机的 LSA 机密，分别采用在线和离线方法

3：导出任意一主机 (除了 Srv01) 的 LSASS 内存中的凭证，分别采用在线和离线方法

4：复现 PPL 绕过的方法

5：mimikatz 的驱动 mimidrv.sys 也可用于绕过 PPL，请尝试一下

6：在多台靶机上枚举域凭证 (应该能发现不少)，看看哪些能被字典攻击所还原出明文？

7：除了教材中举例的 Web02，我们还能在其他主机上从 DPAPI 中得到哪些明文凭证？

8：导出任意一域控制器的 NTDS 数据库，分别采用在线和离线方法

9：理解 Windows 认证理论小节中的理论知识

10：哪个 API 可以实现令牌复制？

11：尝试使用进程注入的方法来模仿用户

12：目前我们有用户的哈希，可以使用 Impacket 进行不接触 LSA 方式的 PTH。有一些 Powershell 脚本也可以达到这样的目的，请尝试

13：为什么 make\_token 比 runas 更好呢？

14：除了明文密码、哈希、票据，还可以**直接或间接**地使用哪些类型的“凭证”可以让我们实现用户模仿？

15：探究 **CreateProcessAsUser**、**CreateProcessWithToken**、**CreateProcessWithLogon**, 和 **LogonUser** 这些 API 直接的区别与联系

16：探究**登陆会话**、**令牌**、**进程**三者之间的关系。

17：导入票据的时候，我们为什么最好要创建牺牲会话或牺牲进程呢？

18：对域内任意一台其他主机开启受限管理模式，并使用 PTH 认证

19：为什么 Mimikatz 实现的 PTH 需要接触 LSASS，而 Impacket 实现的并不需要呢？

20：Impacket 支持使用 keytab 认证，请在 Web01 上创建一个用户的 keytab，再用其 keytab 文件认证到目标主机 (受害者具有特权的主机)。