(一)走进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 ...
随机推荐
- spark在idea中本地如何运行?(处理问题NoSuchFieldException: SHUTDOWN_HOOK_PRIORITY)
spark在idea中本地如何运行? 前几天尝试使用idea在本地运行spark+scala的程序,出现了问题,http://www.cnblogs.com/yjf512/p/7662105.html ...
- nginx替换响应头(重点:如何在替换时加上if判断)
在实现微信小程序内嵌非业务域名时,通过nginx做镜像网站绕过小程序业务域名检测,但有一些表单页面提交后会返回一个302状态,由响应头Location的值决定提交成功后的跳转地址.那么问题来了,这个地 ...
- MVC从路由到Controller运行机制
下图中每个箭头的左侧对应的右侧方法为对象调用方法的过程: 由于UrlRoutingModule这个HttpModule被注册到Web应用中,所有对每个抵达的请求来说,当代表当前应用的HttpAppli ...
- asp.net core系列 34 EF保存数据(1)
一. 基本数据 每个EF上下文实例都有一个 ChangeTracker(更改跟踪器),它负责跟踪需要写入数据库的更改. 当更改实体类的实例时(修改属性,删除实例,新建实例等),这些更改会记录在 Cha ...
- 使用Genymotion遇到的坑_Genymotion无法启动_unable to start the virtual device
Genymotion 十分好用,以下是我使用Genymotion碰到的问题及解决办法.目前没有看到网上有完整的解决. 遇到如下图的问题: 这个问题很多人可能回去百度“the virtual devic ...
- 【Python3爬虫】微博用户爬虫
此次爬虫要实现的是爬取某个微博用户的关注和粉丝的用户公开基本信息,包括用户昵称.id.性别.所在地和其粉丝数量,然后将爬取下来的数据保存在MongoDB数据库中,最后再生成几个图表来简单分析一下我们得 ...
- Unity实现c#热更新方案探究(三)
转载请标明出处:http://www.cnblogs.com/zblade/ 前面两篇文章从头到尾讲解了C#热更新的一些方案,从程序域来加载和卸载DLL,到使用ILRuntime来实现安卓和IOS平台 ...
- Spring Cloud-微服务架构集大成者
本文不是讲解如何使用Spring Cloud的教程,而是探讨Spring Cloud是什么,以及它诞生的背景和意义. 1 背景 2008年以后,国内互联网行业飞速发展,我们对软件系统的需求已经不再是过 ...
- centos中安装虚拟机
我这里选用的虚拟机软件为virtualbox 下载wget http://download.virtualbox.org/virtualbox/5.2.2/VirtualBox-5.2-5.2.2_1 ...
- Spring Cloud学习笔记-011
分布式配置中心:安全保护 由于配置中心存储的内容比较敏感,做一定的安全处理是必需的.为配置中心实现安全保护的方式有很多,比如物理网络限制.OAuth2授权等.由于微服务应用和配置中心都构建与Sprin ...