Harvesting tickets from Linux

在Linux中的凭证存储

Linux系统将凭证存储在三种类型的缓存中,即文件(在/tmp目录中)、内核密钥环(Linux内核中的一个特殊段)和进程内存(用于单进程使用)。/etc/krb5.conf中的default_ccache_name变量揭示了正在使用的存储类型,如果未指定,则默认为FILE:/tmp/krb5cc_%{uid}

提取凭证

2017年的论文Kerberos Credential Thievery (GNU/Linux)概述了从密钥环和进程中提取凭证的方法,强调了Linux内核的密钥环机制用于管理和存储密钥。

密钥环提取概述

keyctl系统调用在内核版本2.6.10中引入,允许用户空间应用程序与内核密钥环进行交互。密钥环中的凭证作为组件存储(默认主体和凭证),与文件ccache不同,后者还包括一个头部。论文中的hercules.sh脚本演示了如何提取并重建这些组件为可用的文件ccache以进行凭证盗取。

票证提取工具:Tickey

基于hercules.sh脚本的原理,tickey工具专门设计用于从密钥环中提取票证,通过/tmp/tickey -i执行。

参考文献

Last updated