无论我们是执行客户评估、参加CTF(夺旗赛)、在Academy或其他地方学习课程,还是进行HTB(Hack The Box)靶机/实验,条理化始终至关重要。从一开始就优先进行清晰准确的文档记录是必不可少的。无论我们在信息安全领域乃至其他职业道路上选择哪条路径,这项技能都将使我们受益 。
文件夹结构
在攻击单个靶机、实验环境或客户环境时,我们的攻击机上应有一个清晰的文件夹结构,用于保存诸如以下数据:范围界定信息、枚举数据、漏洞利用尝试证据、敏感数据(如凭证)以及在侦察、利用和后利用阶段获得的其他数据。一个示例文件夹结构可能如下所示:
guhusf@htb[/htb]$ tree Projects/
Projects/
└── Acme Company
├── EPT
│ ├── evidence
│ │ ├── credentials
│ │ ├── data
│ │ └── screenshots
│ ├── logs
│ ├── scans
│ ├── scope
│ └── tools
└── IPT
├── evidence
│ ├── credentials
│ ├── data
│ └── screenshots
├── logs
├── scans
├── scope
└── tools
这里我们有一个为客户”Acme Company”建立的文件夹,其中包含两项评估:内部渗透测试(IPT)和外部渗透测试(EPT)。每个评估文件夹下,都有用于保存扫描数据、任何相关工具、日志输出、范围界定信息(例如,要提供给扫描工具处理的IP/网络列表)的子文件夹,以及一个证据文件夹。该证据文件夹可能包含评估期间获取的任何凭证、任何相关数据以及截图。
这属于个人偏好,有些人会为每个目标主机创建一个文件夹,并将截图保存在其中。其他人则按主机或网络来组织笔记,并将截图直接放入笔记工具中。可以尝试不同的文件夹结构,找到最能让你保持条理化和高效工作的方式 。
笔记工具
工作效率和组织性非常重要。一个技术过硬但缺乏条理的渗透测试员在这个行业中将难以取得成功。有多种工具可用于组织信息和记录笔记。选择何种笔记工具很大程度上因人而异。基于工作流程的不同,我们中的一些人可能不需要他人所必需的某些功能。一些值得探索的优秀选项包括:
- Cherrytree
- Visual Studio Code
- Evernote
- Notion
- GitBook
- Sublime Text
- Notepad++
这些工具中有些更侧重于笔记功能,而另一些如Notion和GitBook则具有更丰富的功能,可用于创建Wiki类型的页面、速查表等。务必注意,在实际评估中,如果使用这类工具,应确保所有客户数据仅本地存储,不要同步到云端。
提示:学习Markdown语言很容易,并且对记笔记非常有用,因为它可以以视觉吸引人且条理清晰的方式轻松呈现。
其他工具与技巧
每位信息安全专业人士都应维护一个知识库。它可以采用你选择的格式(不过推荐使用上述工具)。这个知识库应包含我们大多数评估中执行的设置任务的快速参考指南,以及评估每个阶段常用命令的速查表。
当我们完成靶机、实验、评估、培训课程等时,我们应该汇总每个有效载荷、命令、技巧,因为我们永远不知道何时哪个可能会派上用场。能够方便地获取这些将提高我们的整体效率和生产力。HTB Academy的每个模块都提供了该模块章节中展示的相关命令速查表,你可以下载并保存以供将来参考。
我们还应该维护检查清单、针对不同评估类型的报告模板,并建立一个发现/漏洞数据库。该数据库可以是电子表格的形式,也可以更复杂些,包含发现项标题、描述、影响、修复建议和参考文献。在报告阶段,拥有这些已写好的发现项将为我们节省大量时间和重复劳动,因为大部分发现内容已经写好,可能只需要根据目标环境进行一些定制。
继续前进
尝试各种笔记工具,并开发适合你且符合你方法论的文件夹结构。尽早开始,这样它就会成为一种习惯!本模块后续的Nibbles演练是练习我们文档记录的绝佳机会。此外,本模块包含许多有用的命令,可以添加到我们的常用命令速查表中。




