1、之前使用的版本是Metasploit2的版本操作系统是基于Ubuntu的,渗透测测试模块也是基于metasploit的,基本上没有设置,Metasploitable3添加了很多安全机制 ,防火墙和权限设置,添加了Flag等,同时Metasploitable3是可以扩展的。
2、渗透测试的整个阶段 前期交互阶段 、信息收集阶段、危险建模阶段、漏洞分析阶段、渗透攻击阶段、后渗透攻击阶段。
3、nmap扫描的参数时非常的关键的 nmap -p- -sS -sV -n -oX demon.xml 192.179.12.12
-sS 是一种基本的扫描模式Nmap 发送SYN包到远程的主机上,但是它不会产生任何的会话,因此不会再目标主机上产生任何的日志
-sV 版本的检测,用来扫描目标主机的短裤上运行的软件的版本信息
--open 仅仅显示开启的端口号的信息
--reason 显示端口处于特殊状态
-n 不进行 dns解析操作 (本地搭建环境 不用DNS 解析)
-oX XML 格式 (生成XML格式的输出结果,方便后面导入到Metasploit中)
4、说说Metasploit的模块结构的框架
模块是通过Metasploit框架加载的集成并对外提供核心的渗透测试功能实现的代码,分为辅助模块(AUx) ,渗透测试模块(Exploit) 收渗透测试模块(POST) 攻击载荷模块(Payload) 编码器模块(Encoders),这些模块拥有非常清晰地结构和一个预定义好的接口,可以组合支持信息的手机,渗透攻击与后渗透攻击拓展
各个模块的作用和用途:
1、渗透攻击模块 (exploit)利用发现安全漏洞或配置弱点对远程目标系统进行攻击的代码
分为诸佛那个渗透模块(服务端渗透) 和被动渗透模块(客户端渗透)
2、辅助模块:(Aux):实现信息收集和口令的猜解,DOS攻击等无法直接去的服务器权限的攻击方式
3、 攻击载荷模块(payload):攻击载荷在渗透攻击成功之后促使目标系统运行的一段植入代码
4、空指令(Nop):空指令是一些程序运行状态不会造成任何实质性的影响的空操作或者无关的指令,典型的是空操作。经常在要执行的Shellcode之前添加一段空指令没这样当触发渗透攻击后跳转执行的Shellcode时,有一个较大的安全着陆,从而避免受到内存地址的随机变化,返回地址极端偏差等原因操作的Shellcode 执行失败 提供渗透攻击的可靠性
5、编码器模块(encode):攻击载荷与空指令模块组装完成一个指令序列之后,在这段指令被渗透模块加入恶意数据 缓冲区交给目标系统运行 Metasploit还要完成编码 编码模块的作用是确保攻击载荷中不会出现渗透攻击过程中应加以避免的 怀字符,同时对攻击载荷进行免杀 处理 逃避反病毒软件 IDS入侵检测和IPS入侵防御系统的阻断
6、后渗透(POST)模块 用于维持访问