PTES标准渗透测试步骤
前期交互
与客户进行沟通,确定渗透测试的目标与范围
情报收集
收集客户组织的信息,利用包括但不限于社交媒体、Google hacking、端口/服务扫描等技术收集信息
威胁建模
根据收集到的信息,来推断目标系统可能存在的安全漏洞
漏洞分析
综合前面的信息,分析和理解哪些攻击方式是可行的(漏洞验证?)
渗透攻击
实战模拟攻击(漏洞利用?)
后渗透
攻陷目标或者取得权限后,识别关键业务信息
报告阶段
metasploit
版本区别
版本 | Metasploit Framework | Metasploit Community | Metasploit Express | metasploit Pro |
---|---|---|---|---|
license | free | free | $5000 | 授权 |
操作界面 | 命令行 | web | web | web/命令行/专业控制台 |
基本渗透 | 单一目标 | 任意数目标 | 任意数目标 | 任意数目标 |
后渗透 | N | N | Y | Y |
团队协作 | N | N | N | Y |
kali启动msf终端
1.msfconsole命令
2.图形界面打开
msf命令行
除了打开msf终端来使用metasploit外,还可以直接使用命令行进行相关操作
如msfcli -h 但现已经废除
Armitage
Armitage 是用于Metasploit的可编写脚本的 红队协作工具,可将目标可视化、推荐漏洞利用并公开框架中的高级后漏洞利用功能。
通过一个 Metasploit 实例,您的团队将:
- 使用相同的会话
- 共享主机、捕获的数据和下载的文件
- 通过共享事件日志进行通信
- 运行机器人以自动执行红队任务
安装
由于kali2020版本中没有自带armitage,所以这个时候就需要我们自行安装
首先在armitage官网下载安装包
利用tar -zxvf armitage150813.tgz命令解压
打开armitage文件夹
打开终端,./armitage打开,稍等片刻
metasploit功能
msf攻击载荷生成器(msfpayload)
作用:生成可执行代码、shellcode或者其他内容
shellcode可以生成C、js、VB等多种格式,用户可根据使用场景输出适合格式的shellcode
不知道msfpayload的配置选项列表时
msfpayload -h
不清楚一个攻击载荷的配置选项时,加大写O
msfpayload window/shell_reverse_tcp O
msf编码器
msfpayload生成的shellcode是可以运行的,其中会包含null字符,一些程序进行解析时可能会误认为字符串结束,使得代码终止运行。简单来说就是\x00、\xff字符会破坏载荷
另外,一些IPS或者杀毒软件会检测到shellcode
故,msf提供编码器解决以上两种情况
同样,查看配置选项列表
msfencode -h
查看编码器列表(优为先)
msfencode -l
nasm shell
nasm_shell.rb是了解汇编语言含义的工具
.
请求jsm esp命令的epcode操作码