渗透测试的流程

  渗透测试是一种有目的性的,针对目标机构计算机系统安全的检测评估方法,渗透测试的主要目的是改善目标机构的安全性。
渗透测试各个阶段的基本工作:

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渗透测试框架的更多相关文章

  1. metasploit 一款开源的渗透测试框架

    渗透神器漏洞利用框架metasploit from: https://zhuanlan.zhihu.com/p/30743401 metasploit是一款开源的渗透测试框架软件也是一个逐步发展与成熟 ...

  2. Metasploit渗透测试魔鬼训练营

    首本中文原创Metasploit渗透测试著作,国内信息安全领域布道者和资深Metasploit渗透测试专家领衔撰写,极具权威性.以实践为导向,既详细讲解了Metasploit渗透测试的技术.流程.方法 ...

  3. 《Metasploit渗透测试魔鬼训练营》第一章读书笔记

    第1章 魔鬼训练营--初识Metasploit 20135301 1.1 什么是渗透测试 1.1.1 渗透测试的起源与定义 如果大家对军事感兴趣,会知道各国军队每年都会组织一些军事演习来锻炼军队的攻防 ...

  4. Web应用渗透测试框架Arachni

    Web应用渗透测试框架Arachni   Arachni是一款Ruby语言编写的Web应用渗透测试框架.当用户指定目标后,该框架可以自动扫描网站页面,对页面中的链接.表单.Cookie.HTTP He ...

  5. PJzhang:漏洞渗透测试框架“天使之剑(AngelSword)”

    猫宁!!! 参考链接: www.phpinfo.cc/?post=42 https://www.freebuf.com/sectool/149883.html 同事介绍了一款渗透测试框架AngelSw ...

  6. Metasploit渗透测试实验报告

    Metasploit渗透测试实验报告

  7. Metasploit渗透测试

    原创博客,转载请注出处! 学习笔记 参考书籍<Metasploit渗透测试指南(修订版)> 经过多日学习,初步掌握metasploit基本参数和使用方法,现进行渗透测试实践 靶机IP:16 ...

  8. 自动化移动安全渗透测试框架:Mobile Security Framework

    自动化移动安全渗透测试框架:Mobile Security Framework 译/Sphinx  测试开发社区  7月3日 Mobile Security Framework (移动安全框架) 是一 ...

  9. metasploit渗透测试笔记(内网渗透篇)

    x01 reverse the shell File 通常做法是使用msfpayload生成一个backdoor.exe然后上传到目标机器执行.本地监听即可获得meterpreter shell. r ...

随机推荐

  1. Hadoop源码篇--Reduce篇

    一.前述 Reduce文件会从Mapper任务中拉取很多小文件,小文件内部有序,但是整体是没序的,Reduce会合并小文件,然后套个归并算法,变成一个整体有序的文件. 二.代码 ReduceTask源 ...

  2. 网络协议 11 - Socket 编程(下):眼见为实耳听为虚

    系列文章传送门: 网络协议 1 - 概述 网络协议 2 - IP 是怎么来,又是怎么没的? 网络协议 3 - 从物理层到 MAC 层 网络协议 4 - 交换机与 VLAN:办公室太复杂,我要回学校 网 ...

  3. 来了,老弟!__二进制部署kubernetes1.11.7集群

    Kubernetes容器集群管理 Kubernetes介绍 Kubernetes是Google在2014年6月开源的一个容器集群管理系统,使用Go语言开发,Kubernetes也叫K8S.K8S是Go ...

  4. vue踩坑--TypeError: __WEBPACK_IMPORTED_MODULE_1_vuex__.a.store is not a constructor

    今天在使用vuex的时候遇到这么个问题,虽然后来解决了,是首字母大写的原因,但我还是不知道为什么.这里先记录下来. 这是vuex/store.js import Vue from 'vue' impo ...

  5. Android中,粗暴的方式,修改字体

    序 在 Android 下使用自定义字体已经是一个比较常见的需求了,最近也做了个比较深入的研究. 那么按照惯例我又要出个一篇有关 Android 修改字体相关的文章,但是写下来发现内容还挺多的,所以我 ...

  6. 磊哥评测之数据库:腾讯云MongoDB vs自建

    本文由云+社区发表 作者:磊哥 上期文章我们聊到了redis.这期我们来说说另一个网红nosql数据库:MongoDB.有这么一个介绍MongoDB的说法是:MongoDB是非关系数据库当中功能最丰富 ...

  7. 【.NET Core项目实战-统一认证平台】第十章 授权篇-客户端授权

    [.NET Core项目实战-统一认证平台]开篇及目录索引 上篇文章介绍了如何使用Dapper持久化IdentityServer4(以下简称ids4)的信息,并实现了sqlserver和mysql两种 ...

  8. ROS笔记 Topics

    http://wiki.ros.org/ROS/Tutorials/UnderstandingTopics rostopic rqt_graph rosmsg rqt_graph 一个用于查看topi ...

  9. .Net语言 APP开发平台——Smobiler学习日志:基于Access数据库的Demo

    说明:该demo是基于Access数据库进行客户信息的新增.查看.编辑 新增客户信息和客户列表 Demo下载:https://github.com/comsmobiler/demo-videos  中 ...

  10. 第6章 演示服务器和测试 - Identity Server 4 中文文档(v1.0.0)

    您可以使用您喜欢的客户端库尝试IdentityServer4.我们在demo.identityserver.io上有一个测试实例.在主页面上,您可以找到有关如何配置客户端以及如何调用API的说明. 此 ...