Pentesting Methodology
Reading time: 10 minutes
tip
学习和实践 AWS 黑客技术:HackTricks Training AWS Red Team Expert (ARTE)
学习和实践 GCP 黑客技术:HackTricks Training GCP Red Team Expert (GRTE)
支持 HackTricks
- 查看 订阅计划!
- 加入 💬 Discord 群组 或 Telegram 群组 或 在 Twitter 🐦 上关注我们 @hacktricks_live.
- 通过向 HackTricks 和 HackTricks Cloud GitHub 仓库提交 PR 来分享黑客技巧。
Pentesting Methodology
Hacktricks logos designed by @ppiernacho.
0- 物理攻击
你是否对你想攻击的机器有物理访问?你应该阅读一些关于物理攻击的技巧和其他关于从GUI应用程序逃脱的内容。
1 - 发现网络中的主机/ 发现公司的资产
根据你进行的测试是内部测试还是外部测试,你可能会对查找公司网络内部的主机(内部测试)或在互联网上查找公司的资产(外部测试)感兴趣。
note
请注意,如果你正在进行外部测试,一旦你成功获得对公司内部网络的访问,你应该重新开始本指南。
2- 在网络中玩乐 (内部)
本节仅适用于你进行内部测试的情况。
在攻击主机之前,也许你更愿意从网络中窃取一些凭据或嗅探一些数据以**被动/主动(MitM)**了解你可以在网络中找到什么。你可以阅读Pentesting Network。
3- 端口扫描 - 服务发现
在寻找主机中的漏洞时,首先要了解哪些服务在什么端口上运行。让我们看看扫描主机端口的基本工具。
4- 搜索服务版本漏洞
一旦你知道哪些服务在运行,也许还知道它们的版本,你就必须搜索已知的漏洞。也许你会运气好,找到一个可以让你获得shell的漏洞...
5- Pentesting服务
如果没有任何运行服务的花哨漏洞,你应该寻找每个运行服务中的常见错误配置。
在本书中,你将找到一个关于最常见服务的pentest指南(以及其他不太常见的服务)。请在左侧索引中搜索**PENTESTING 部分(服务按其默认端口排序)。
我想特别提到 Pentesting Web 部分(因为这是最广泛的部分)。
此外,这里还有一个关于如何查找软件中的已知漏洞的小指南。
如果你的服务不在索引中,请在Google中搜索其他教程,并告诉我你是否希望我添加它。如果你在Google中找不到任何东西,请进行自己的盲目pentesting,你可以开始连接到服务,模糊测试并阅读响应(如果有的话)。
5.1 自动工具
还有几种工具可以执行自动漏洞评估。我建议你尝试 Legion,这是我创建的工具,基于你可以在本书中找到的关于pentesting服务的笔记。
5.2 暴力破解服务
在某些情况下,暴力破解可能对破坏一个服务有用。在这里找到不同服务暴力破解的备忘单。
6- 钓鱼
如果到目前为止你还没有找到任何有趣的漏洞,你可能需要尝试一些钓鱼以进入网络。你可以在这里阅读我的钓鱼方法论:
7- 获取Shell
不知怎么的,你应该找到在受害者上执行代码的某种方法。然后,在系统中可以用来获取反向shell的可能工具列表将非常有用。
特别是在Windows中,你可能需要一些帮助来避免杀毒软件:查看此页面。
8- 内部
如果你在shell中遇到问题,这里有一个小的最有用命令的汇编供pentester使用:
9 - 数据外泄
你可能需要从受害者那里提取一些数据,甚至引入一些东西(如特权升级脚本)。这里有一篇关于你可以用来实现这些目的的 常用工具的文章。
10- 特权升级
10.1- 本地特权升级
如果你在盒子里不是root/管理员,你应该找到一种方法来提升特权。
在这里你可以找到关于如何在Linux(../linux-hardening/privilege-escalation/index.html)和Windows(../windows-hardening/windows-local-privilege-escalation/index.html)中本地提升特权的指南。
你还应该查看这些关于Windows工作原理的页面:
- 身份验证、凭据、令牌特权和UAC
- NTLM工作原理
- 如何窃取凭据在Windows中
- 一些关于Active Directory的技巧
不要忘记查看最佳工具以枚举Windows和Linux本地特权升级路径: Suite PEAS
10.2- 域特权升级
在这里你可以找到一篇方法论,解释最常见的操作以枚举、提升特权和在Active Directory中持久化。即使这只是一个部分的子部分,这个过程在Pentesting/Red Team任务中可能是极其微妙的。
11 - POST
11.1 - 掠夺
检查你是否可以在主机中找到更多密码,或者你是否有访问其他机器的用户权限。
在这里找到不同的方法来在Windows中转储密码。
11.2 - 持久性
使用2或3种不同类型的持久性机制,这样你就不需要再次利用系统。
在这里你可以找到一些 关于Active Directory的持久性技巧。
TODO: 完成Windows和Linux中的持久性Post
12 - 透传
通过收集到的凭据,你可能可以访问其他机器,或者你可能需要发现和扫描新主机(重新开始Pentesting Methodology)在受害者连接的新网络中。
在这种情况下,隧道可能是必要的。这里你可以找到关于隧道的文章。
你绝对应该查看关于Active Directory pentesting Methodology的文章。在那里你会找到很酷的技巧来横向移动、提升特权和转储凭据。
还要查看关于NTLM的页面,这在Windows环境中透传时可能非常有用。
更多
Android应用程序
利用
基本Python
加密技巧
tip
学习和实践 AWS 黑客技术:HackTricks Training AWS Red Team Expert (ARTE)
学习和实践 GCP 黑客技术:HackTricks Training GCP Red Team Expert (GRTE)
支持 HackTricks
- 查看 订阅计划!
- 加入 💬 Discord 群组 或 Telegram 群组 或 在 Twitter 🐦 上关注我们 @hacktricks_live.
- 通过向 HackTricks 和 HackTricks Cloud GitHub 仓库提交 PR 来分享黑客技巧。