3.2.3 SEA数据集

2001年Schonlau等人第一次将内部攻击者分类为“叛徒”(Traitor)与“伪装者”(Masquerader),其中“叛徒”指攻击者来源于组织内部,本身是内部合法用户;而“伪装者”指外部攻击者窃取了内部合法用户的身份凭证,从而利用内部用户身份实施内部攻击。随后该团队构造了一个公开的检测伪装者攻击的数据集SEA,该数据集被广泛用于内部伪装者威胁检测研究。

SEA数据集涵盖70多个UNIX系统用户的行为日志,这些数据来自于UNIX系统acct机制记录的用户使用的命令。SEA数据集中每个用户都采集了15000条命令,从用户集合中随机抽取50个用户作为正常用户,剩余用户的命令块中随机插入模拟命令作为内部伪装者攻击数据。SEA数据集中的用户日志类似于下面的命令序列:


{cpp, sh,cpp, sh, xrdb, mkpts...}

图3-3 CSIC 2010攻击请求示例

每个用户的数据按照每100个命令为一块,分为150个块,前三分之一数据块用作训练该用户正常行为模型,剩余三分之二数据块随机插入了测试用的恶意数据。SEA数据集中恶意数据的分布具有统计规律,任意给定一个测试集命令块,其中含有恶意指令的概率为1%;而当一个命令块中含有恶意指令,则后续命令块也含有恶意指令的概率达到80%。可以看出SEA中的数据集将连续数据块看作一个会话,只能模拟连续会话关联的攻击行为;此外由于缺乏用户详细个人信息(职位、权限等)、数据维度单一(仅有命令信息)以及构造性(恶意数据由人工模拟)等因素,数据集在内部威胁检测研究中作用有限。

Schonlau在他的个人网站http://www.schonlau.net/ 上发布了SEA数据集,见图3-4。