nishataratania/malware_authors_analysis
GitHub: nishataratania/malware_authors_analysis
该项目是 WWW '24 论文的配套数据分析,通过统计和可视化方法揭示 GitHub 上恶意软件仓库创建者的意图分类与行为特征,为平台内容审核和用户风险识别提供数据支撑。
Stars: 0 | Forks: 0
# 谁在 GitHub 上创建恶意软件仓库?
这是我作为第一作者发表在 **The ACM Web Conference (WWW '24)** 上的研究论文的配套数据分析:[*Who is Creating Malware Repositories on GitHub and Why?*](https://doi.org/10.1145/3589335.3651582)
该研究识别了 14,267 名与恶意软件仓库相关的 GitHub 用户,并使用 LLM 辅助的方法论根据其意图进行了分类。本 notebook 对已发布的数据集进行了探索。
**核心发现:**
- 超过一半的作者(53.1%)是**良性**的——研究人员、教育工作者、学生。托管恶意软件代码并不等同于具有恶意意图。
- 恶意作者的**个人资料要稀疏得多**:6 个个人资料字段平均填写了 0.7 个,而良性作者为 3.9 个;粉丝数中位数为 **0**,而良性作者为 20。
- 恶意账户**更新**(创建年份中位数为 2018 年,而良性为 2015 年),且几乎从未标记为*hireable*(3.4% 对比 30.2%)——这是典型的用完即弃的单目的账户特征。
- 恶意软件托管是**分散的,而非集中的**:91.4% 的作者仅拥有一个 repo,而产出最高的 10 名作者仅拥有所有 16,726 个仓库中的 1.1%——因此,内容审核必须大规模检测高风险的 repos 和个人资料,而不是仅仅追踪已知的行为者。
**数据质量提示:**已发布的数据集通过隐去中间字符的方式对字符串值进行了掩码处理——因此,存储为 `"nan"` 的缺失条目会显示为 `"n*n"`。在衡量个人资料完整度之前,本分析会将此标记标准化为真正的缺失值。
**工具:** Python, pandas, matplotlib
**数据:** [Zenodo 10.5281/zenodo.10806593](https://doi.org/10.5281/zenodo.10806593) (CC BY 4.0) —— 经过混淆的用户个人资料 + 经过筛选的仓库列表。将这两个文件下载到此文件夹中,然后从头到尾运行该 notebook。
*道德声明:该数据集经过了隐私混淆处理,且不包含任何恶意软件代码——仅包含个人资料元数据和仓库名称。*
标签:pdftotext, Python, 代码示例, 学术研究, 恶意软件研究, 数据分析, 无后门, 用户行为分析, 逆向工具