1.3 渗透测试的一般化流程

凡事预则立,不预则废,做任何事情都要有一个预先的计划。渗透测试作为测试学科的一个分支,早已形成了完整的方法论。在正式开始本书的实践教学章节之前,我也想谈一谈使用Kali Linux的基本方法。这里讨论方法论的目的有两个:

第一,在第一节里,我们看到Kali Linux集成了这么多工具,而且更令人欣喜的是已经对这些工具进行了专业的分类。这些工具的使用场景和使用阶段是什么样的呢?把工具拿来胡乱一顿扫描是不会有什么结果的。

第二,本书的章节规划,也需要一个规范,这个规范是我从渗透测试方法论中学来的,并进行了简化,称之为“渗透测试的一般化流程”。

当然本节内容不会长篇大论,也不适用于企业内部的专业的渗透测试团队来遵循。只是希望给初学渗透测试的同学一个入门的指引,有章可循,有法可依。只是学习本书的基本练习流程,不是标准的测试流程。

下面这这张图是《backtrack4 利用渗透测试保证系统安全》一书的Backtrack方法论。

它将渗透测试分成了十个步骤,其中第6步“社会工程学”为可选步骤,但是笔者认为社会工程学在渗透测试的任何一个流程中都有用武之地,它是安全测试的一个方法,不应该成为一个单独的流程。

在本书中,我们将整个过程划分为5个步骤。

1.3.1 信息搜集

在练习过程中,选择目标的过程,读者自行完成。在讲解具体漏洞攻击的章节中,还会讲解一些如何快速查找特定目标的方法。本书假定读者已经准备好了测试目标才阅读和实践书中内容,所以流程的第一步为信息搜集。

在这一步中,我们尽可能的使用多种信息搜集工具,包括搜索引擎和社会工程学方法。对能收集到的信息,来者不拒。

只有建立在足够信息分析的基础上,渗透测试才能游刃有余。因为信息越多,发现漏洞的几率越大。

同时对不同应用的信息收集的侧重点也不同。比如web应用和桌面应用,对于web应用,服务器操作系统、web服务器类型、web后台语言会被首先关注;而对于桌面应用,更多的是关心应用程序本身。

1.3.2 发现漏洞

在搜集了足够的信息之后,首先我们要判断它会存在哪些漏洞。这可以通过搜索引擎,和通用的漏洞扫描工具来完成。通常使用搜索引擎是明智的选择,比如我们在第一步中知道对方站点的编写语言为php 5.3.*,可以在google搜索“php 5.3”漏洞。

很多专业的bug站点的信息,更值得我们驻足。这样我们就可以针对性的进行漏洞扫描。此时使用专门的漏洞扫描工具比通用工具来得更实际和高效。

1.3.3 攻击

基本上,你能得到的漏洞,都可以找到对应的攻击方法。Kali Linux中也提供了很多现成的工具,来帮助我们顺利的攻击目标。

这一步包含两个方面,一个是利用现有漏洞利用,一个是提权。二者有时候是一回事,比如权限漏洞。

渗透测试和以破坏为目的的黑客行为还是有区别的,测试的目的是证明漏洞的存在,而不是搞破坏。所以有时候攻击成功之后可能测试任务就结束了,当然这和测试目标是紧密相关的。

攻击还包含一个重要的内容,就是如何隐藏攻击行为或者清除攻击痕迹。让对方无法或者说很难通过反追踪技术查找到攻击者。

1.3.4 权限维持

权限维持阶段,是我们成功攻破一个系统后,如何继续保持对系统的控制权限的问题。

一般会创建高权限的隐藏账户,或者安装后门程序(包括木马,病毒)。

1.3.5 文档化

文档化不是本书的强制流程,但是笔者强烈建议我们对每次渗透测试的过程和结果进行文档化处理。这样会形成知识的积累。当然如果你是专业的渗透测试工程师或者手上有渗透测试的项目,那么标准化文档是必不可少的。

小结

本节所讲解的流程不是标准的渗透测试流程,是本书的教学实践简化流程,读者要区别对待。

下一节,是本章的最后一节,以一个小例子来体验Kali Linux的渗透测试,来提升大家的兴趣。

1.4节--《小试牛刀》。

Kali Linux渗透测试实战 1.3 渗透测试的一般化流程_商洛学院司徒荆_新浪博客相关推荐

  1. kali Linux下wifi密码安全测试(1)虚拟机下usb无线网卡的挂载_商洛学院司徒荆_新浪博客

    kali Linux下wifi密码安全测试(1)虚拟机下usb无线网卡的挂载 1.1     VMWare下的配置 1.2 VirtualBox下的配置 原文链接:http://www.xuanhun ...

  2. kali linux nmap扫描(二)_商洛学院司徒荆_新浪博客

    使用nmap扫描得知目标主机开放的端口和服务类型 1.打开终端:nmap 192.168.1.1 ,扫描出开放的端口 2.nmap -sT 192.168.1.1  使用全连接进行扫描,完成tcp的三 ...

  3. Action Golf 四个魔法球实战训练系列_huatuo_新浪博客

    Action & Golf 四个魔法球实战训练系列_huatuo_新浪博客

  4. 基于samba实现win7与linux之间共享文件_阳仔_新浪博客

    基于samba实现win7与linux之间共享文件_阳仔_新浪博客 然后启动samba执行如下指令: /dev/init.d/smb start 至此完成全部配置.

  5. Linux 共享库:LD_LIBRARY_PATH 与ld.so.conf_爱过了就好_新浪博客

    Linux 共享库:LD_LIBRARY_PATH 与ld.so.conf_爱过了就好_新浪博客 Linux 共享库:LD_LIBRARY_PATH 与ld.so.conf     (2009-07- ...

  6. mysql fio测试_fio_飞哥最爱白菜_新浪博客

    #yum install git #yum install gtk* #git clone git://git.kernel.dk/fio.git # cd fio # ./configure --e ...

  7. Linux系统出现Vsftp 553 Could Not Create File错误的解决_老杨风子_新浪博客

    Linux系统出现Vsftp 553 Could Not Create File错误的解决 使用LINUX系统的小伙伴们在使用vsftp的时候,发现出现553 Could not create fil ...

  8. linux命令mov,汇编指令_Y-linuz-linux-w_新浪博客

    ARM处理器有37个寄存器,其中31个通用寄存器,6个程序状态寄存器. R0~R7为不分组的通用寄存器,R8~R14为分组寄存器---不同工作模式下寄存器不同 R13:指向堆栈栈顶指针SP R14:用 ...

  9. kali 去windows共享数据--smbclient使用方法_原水_新浪博客

    kali已经安装好smbclient,不能使桌面化的smb访问windows共享文件 1  smbclient --user=username //10.1.0.1 2  然后通过cd,ls等找到需要 ...

最新文章

  1. 输电线路巡检机器人PPT_超高压输电线路巡检机器人系统
  2. Access数据库审计工具mdbtools
  3. 【基础算法-模拟-例题-*校长的问题】-C++
  4. 线程----BlockingQueue
  5. 怎么取消自动格式化_iPhone自动扣费怎么取消?App Store、微信、支付宝关闭自动扣费教程...
  6. oracle计算时sum溢出_Oracle内存全面分析
  7. hihoCoder-1038- 01背包(dp)
  8. 【干货】数字化转型工作手册.pdf(附下载链接)
  9. 《TensorFlow 2.0深度学习算法实战教材》学习笔记(五、神经网络)
  10. 《数据科学家修炼之道》笔记
  11. 新手干货:Vue - 事件修饰符
  12. 基于springboot助学贷款管理毕业设计源码061528
  13. 修改Android 模拟器IMEI
  14. 小程序中引用阿里云图标库
  15. 了解 React 之 Suspense 和 lazy
  16. 更改aspx页面编码格式
  17. 很牛的求职历程和经验(二)
  18. 关于win11兼容性视图模式
  19. 使用ch.ethz.ssh2中sess.execCommand方法导致线程卡死的原因分析
  20. 尚硅谷 spring cloud 2020

热门文章

  1. 准确率98%的深度学习交通标志识别是如何做到的?
  2. PMP考试经历,实战经验,希望对后来者有用
  3. 关于VMware不能上网解决办法
  4. 高数_第4章曲线积分和曲面积分_对弧长和对坐标的区别
  5. JAVA——死锁详解
  6. wordsReminder——自定义背单词小工具
  7. Python 偏函数 将函数固定部分参数
  8. python 偏函数应用
  9. 延迟渲染G-buffer所占显存带宽计算(解决移动端和抗锯齿的若干疑问)
  10. 哈马斯再次自导自演,使用美人计针对以色列发起网络攻击