文章中所选取的域名数据集来源于互联网上公开的数据集,数据集中包含正常域名和DGA恶意域名,正常域名来自Alexa网站,恶意域名来自360Netlab实验室发布的开源数据集。正常域名从中随机选取1万条,恶意域名随机选取2万条,共计3万条数据组成一个新的数据集。将域名数据集随机打乱顺序后,采用二八分原则,将其中24000条域名作为训练数据集,剩余6000条域名作为测试数据集进行实验。
对域名数据集进行预处理,其中包括正则化、数值化、向量化等操作。首先,对域名数据集进行正则化。因为对域名进行研究主要提取的是完整域名信息中的二级域名,所以去除掉域名中存在的域名头、子域名等相关信息,顶级域名可以作为备选项而留下,将二级域名与其所属DGA家族和标签对应上。
其次,对二级域名进行数值化操作,利用一组伪随机数序列给每一个二级域名一个独立的编码,令它们之间互异,不会产生重合。