(一)走进Metasploit渗透测试框架
渗透测试的流程
渗透测试是一种有目的性的,针对目标机构计算机系统安全的检测评估方法,渗透测试的主要目的是改善目标机构的安全性。
渗透测试各个阶段的基本工作:
1.前期交互阶段
在这个阶段,渗透测试工程师要与客户进行充分的交流,以便客户对即将开展的渗透测试会对他的网络或者服务器产生的影响有足够的了解。进一步的确定渗透测试的范围,目标以及代表客户进行测试时的特殊需求,例如特殊的权限,关键系统的访问许可等。在这阶段,关键点如下:
(a).渗透测试的范围:这一部分需要确定渗透测试的范围并预估计整个项目的工作量。同时要确定哪些目标是在渗透测试范围内,哪些是不允许进行渗透测试的。测试工程师要确认渗透测试区域内涉及的IP地址范围和域名范围,以及采用的测试类型(黑盒测试和白盒测试)。
(b).渗透测试的目标:这一部分定义本次渗透测试预期达到的主要和次要效果。
(c).渗透测试用到的术语和定义:这一部分要向客户介绍整个测试过程中出现的专业术语和定义,以便客户更好的理解整个渗透测试工作。
(d).渗透测试的规定:这一部分要商定完成渗透测试的工期,具体工作开展的进度表,渗透攻击的授权许可,以及定期看召开会议跟进渗透测试进程中出现的各种情况。
2.信息收集/侦查阶段
在信息收集阶段,渗透测试工程师需要尽可能采用各种方式来收集目标网络的所有信息。可以使用各种社交媒体来收集相关信息,以及使用google dorks技术去寻找目标相关信息,还可以对目标进行主动扫描和被动扫描技术进行踩点。信息收集是渗透测试过程中最为重要的阶段之一,最终能否成功渗透进入目标网络很大程度上取决于测试者在这个阶段的工作成果。在这阶段,关键点如下:
(a).目标选择:选择攻击的目标,确定攻击达到的效果以及整个攻击过程花费的时间。
(b).隐私收集:包括现场信息收集,检查使用的设备信息,以及目标单位外部的信息收集。
(c).踩点工作:包含针对目标的主动和被动扫描技术,扫描目标计算机上运行的服务,开放的端口,以及验证这些端口上运行着的全部服务,获取系统标志等。
(d).验证目标的安全机制:包含防火墙,网络流量过滤系统,网络和主机的保护措施的确认工作等。
3.威胁建模
为了保证渗透测试正确的进行,必须进行威胁建模,主要工作就是模拟出对目标准确的威胁以及这些威胁的作用,并根据这些威胁可能对对目标产生的影响对其进行分类。这个阶段渗透测试工程师可以确定最佳的攻击方式。这个阶段将确定最佳的攻击方式,解决以下问题:
(a).如何攻击指定的网络?
(b).需要获得重要的信息是什么?
(c).在攻击时采取什么方法最为合适?
(d).对目标来说最大的安全是什么?
我们渗透测试工程师应该完成的工作:
(a).收集有关高等级威胁的相关文档;
(b).根据基本的分类方法对组织的资源进行标识;
(c).对威胁进行识别和分类;
(d).将组织的资源映射成模型。
4.漏洞分析
漏洞分析是在一个系统或者一个应用程序中发现漏洞的过程。这些漏洞多种多样,涵盖了很多方面,从服务器的配置到Web程序服务,从应用程序到数据库服务,从一个基于VOIP的服务器到基于SCADA的服务都可能存在漏洞。在这个阶段包含了三个不同的机制,那就是测试,验证和研究。测试包括主动测试和被动测试。验证包括去除误报和通过手动验证漏洞的存在。研究指的是发现并触发漏洞以确认它的存在。
5.渗透攻击和后渗透攻击
渗透攻击阶段可以利用之前漏洞分析阶段的成果,在这一阶段,渗透测试工程师可以针对目标系统的漏洞使用对应的入侵模块获得控制权限。
后渗透阶段发生在渗透攻击阶段之后,这个阶段包含了当成功渗透攻击到了对方计算机以后的很多任务,比如提高权限,上传和下载文件,跳板攻击等等。
6.报告阶段
在进行渗透测试时,创建整个渗透测试的正式报告是在最后一个阶段进行的。渗透测试报告的重要组成部分包括:确定目标最为重要的威胁,将渗透得到的数据生成表格和图表,对目标系统的改进建议,以及这些问题的修复方案。
使用Metasploit进行渗透测试
一.metasploit的基础知识
在kali Linux系统下使用Metasploit框架,进入msfconsole终端,有一些基本的模块:
渗透攻击模块(Exploit):这是一段程序,运行起来的时候就会利用目标的安全漏洞进行攻击。
攻击载荷模块(Payload):这段程序会在成功对目标系统完成一次渗透攻击之后在目标计算机上开始运行,基本上它能帮助我们在目标系统上获得需要的访问和行动权限。
辅助模块(Auxiliary):一些列的辅助支持模块,包括扫描模块,fuzzing测试漏洞发掘模块,网络协议欺骗以及其他一些模块。
编码模块(Encoder):编码器模块通常用来对我们的攻击模块进行代码混淆,来跳过目标安全保护机制的检测。目标安全保护机制包括杀毒软件和防火墙。
(一)走进Metasploit渗透测试框架的更多相关文章
- metasploit 一款开源的渗透测试框架
渗透神器漏洞利用框架metasploit from: https://zhuanlan.zhihu.com/p/30743401 metasploit是一款开源的渗透测试框架软件也是一个逐步发展与成熟 ...
- Metasploit渗透测试魔鬼训练营
首本中文原创Metasploit渗透测试著作,国内信息安全领域布道者和资深Metasploit渗透测试专家领衔撰写,极具权威性.以实践为导向,既详细讲解了Metasploit渗透测试的技术.流程.方法 ...
- 《Metasploit渗透测试魔鬼训练营》第一章读书笔记
第1章 魔鬼训练营--初识Metasploit 20135301 1.1 什么是渗透测试 1.1.1 渗透测试的起源与定义 如果大家对军事感兴趣,会知道各国军队每年都会组织一些军事演习来锻炼军队的攻防 ...
- Web应用渗透测试框架Arachni
Web应用渗透测试框架Arachni Arachni是一款Ruby语言编写的Web应用渗透测试框架.当用户指定目标后,该框架可以自动扫描网站页面,对页面中的链接.表单.Cookie.HTTP He ...
- PJzhang:漏洞渗透测试框架“天使之剑(AngelSword)”
猫宁!!! 参考链接: www.phpinfo.cc/?post=42 https://www.freebuf.com/sectool/149883.html 同事介绍了一款渗透测试框架AngelSw ...
- Metasploit渗透测试实验报告
Metasploit渗透测试实验报告
- Metasploit渗透测试
原创博客,转载请注出处! 学习笔记 参考书籍<Metasploit渗透测试指南(修订版)> 经过多日学习,初步掌握metasploit基本参数和使用方法,现进行渗透测试实践 靶机IP:16 ...
- 自动化移动安全渗透测试框架:Mobile Security Framework
自动化移动安全渗透测试框架:Mobile Security Framework 译/Sphinx 测试开发社区 7月3日 Mobile Security Framework (移动安全框架) 是一 ...
- metasploit渗透测试笔记(内网渗透篇)
x01 reverse the shell File 通常做法是使用msfpayload生成一个backdoor.exe然后上传到目标机器执行.本地监听即可获得meterpreter shell. r ...
随机推荐
- Python __new__ 实现单例模式 python经典面试题
话不多说,上代码 class Singleton(object): def __new__(cls, *args, **kwargs): if not hasattr(cls, '_instance' ...
- python +selenium识别不来click事件,出现报错
assert "login" in browser.title browser.implicitly_wait(10) elem = browser.find_element_by ...
- child_process 子进程
创建子进程,使其可以在进程中执行操作,应用系统命令等.nodejs创建子进程有四种方法,分别是spawn,fork,exec,execFile. 区别 : 格式 : spawn和execFile的格式 ...
- Event(事件)的传播与冒泡
特性说明和原理图: 标准浏览器和Ie9+浏览器都支持事件的冒泡和捕获,而IE8-浏览器只支持冒泡 标准和Ie9+浏览器用stopPropagation()或cancelBubble阻止事件传播,而ie ...
- 源码安装zabbix_agent4.0.3
1.源码包下载地址:https://www.zabbix.com/download_sources 2.下载完后上传在任意目录用root用户创建以下脚本server_ip为服务端ip然后执行. gro ...
- Elasticsearch 分词器
无论是内置的分析器(analyzer),还是自定义的分析器(analyzer),都由三种构件块组成的:character filters , tokenizers , token filters. 内 ...
- Chapter 4 Invitations——24
"How do you do that?" I asked in amazed irritation. “你是怎么做到的?”我惊讶的问道. "Do what?" ...
- Linux服务器时间相关命令记录
前言 以往安装服务器时间都是正常,但是最近服务器的时间经常出现问题,所以在安装配置完成服务器之后需要对服务器的时间进行测试,如果服务器时间异常,那么当程序去取系统时间的时候就会出现问题. 时间相关命令 ...
- JDK源码分析(6)之 LinkedHashMap 相关
LinkedHashMap实质是HashMap+LinkedList,提供了顺序访问的功能:所以在看这篇博客之前最好先看一下我之前的两篇博客,HashMap 相关 和 LinkedList 相关: 一 ...
- 痞子衡嵌入式:飞思卡尔Kinetis开发板OpenSDA调试器那些事(上)- 背景与架构
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔Kinetis MCU开发板板载OpenSDA调试器(上篇). 众所周知,嵌入式软件开发几乎离不开调试器,因为写一个稍有代码规模 ...