Kali Linux渗透测试实战 1.1 Kali Linux简介

时间:2022-10-01 11:21:56

1.1 Kali Linux简介

如果您之前使用过或者了解BackTrack系列Linux的话,那么我只需要简单的说,Kali是BackTrack的升级换代产品,从Kali开始,BackTrack将成为历史。

如果您没接触过BackTrack也没关系,我们从头开始了解Kali Linux。

按照官方网站的定义,Kali Linux是一个高级渗透测试和安全审计Linux发行版。作为使用者,我简单的把它理解为,一个特殊的Linux发行版,集成了精心挑选的渗透测试和安全审计的工具,供渗透测试和安全设计人员使用。也可称之为平台或者框架。

Kali Linux渗透测试实战  1.1 Kali Linux简介

Kali Linux

作为Linux发行版,Kali Linux是在BackTrack Linux的基础上,遵循Debian开发标准,进行了完全重建。并且设计成单用户登录,root权限,默认禁用网络服务。

关于系统特性,定制,在不同设备上的安装,请在Kali Linux官网上查阅,http://www.kali.org/。官网上还有一份中文版的说明文档,但是我总觉得要么是自动翻译的,要么是外国人自行翻译的,读起来非常不通顺,但是仍然可作为参考,见http://cn.docs.kali.org/

Kali Linux渗透测试实战  1.1 Kali Linux简介

中文文档

因为本书的核心内容是渗透测试,Kali Linux只是平台,更多的关于系统本身的内容不会详细介绍。下面我们来看看Kali自带的工具集,介绍完这些工具,相信你也就了解了Kali Linux的功能。

Kali Linux渗透测试实战  1.1 Kali Linux简介

上图是安装完Kali Linux(在下一节,会简单介绍虚拟机下Kali Linux的安装和配置)系统自带的工具集。最顶层是十佳安全工具,这些工具都被包含在下面的工具分类中。

Kali Linux将所带的工具集划分为十四个大类,这些大类中,很多工具是重复出现的,因为这些工具同时具有多种功能,比如nmap既能作为信息搜集工具也能作为漏洞探测工具。其中大部分工具的使用,都会在之后的章节中做介绍和实例演示。另外,这里介绍的工具都是系统默认推荐的工具,我们也可以自行添加新的工具源,丰富工具集。根据笔者的经验,绝大多数情况下,系统推荐的工具已经足够使用了。一些专用工具,会在特定的测试场景下被引入,在后续章节中会详细说明。

信息搜集

信息搜集工具集又分为DNS分析、IDS/IPS识别、SMB分析、SMTP分析、SNMP分析、SSL分析、VoIP分析、VPN分析、存活主机识别、电话分析、服务指纹识别、流浪分析、路由分析、情报分析、系统指纹识别共15个小分类。

Kali Linux渗透测试实战  1.1 Kali Linux简介

信息搜集工具分类

DNS分析包含dnsdict6、dnsenum等12个工具,如下图。

Kali Linux渗透测试实战  1.1 Kali Linux简介

Dns分析工具

IDS/IPS识别包含fragrout、fragrouter、ftest、lbd、wafwOOf四个工具。

Kali Linux渗透测试实战  1.1 Kali Linux简介

IDS/IPS识别工具

扩展---IDS/IPS

IDS(intrusion detection system),即入侵检测系统。是一种对网络传输进行即时监视,在发现可疑传输时发出警报或者采取主动反应措施的网络安全设备。它与其他网络安全设备的不同之处便在于,IDS是一种积极主动的安全防护技术。

IPS(Intrusion Prevention System)即入侵防御系统。IPS位于防火墙和网络的设备之间。这样,如果检测到攻击,IPS会在这种攻击扩散到网络的其它地方之前阻止这个恶意的通信。

二者的区别:

入侵检测系统注重的是网络安全状况的监管。入侵防御系统关注的是对入侵行为的控制。

入侵检测系统需要部署在网络内部的中心点,需要能够观察到所有网络数据。入侵防御系统需要部署在网络的边界。

入侵检测系统的核心价值在于通过对全网信息的分析,了解信息系统的安全状况,进而指导信息系统安全建设目标以及安全策略的确立和调整,而入侵防御系统的核心价值在于安全策略的实施—对黑客行为的阻击;入侵检测系统需要部署在网络内部,监控范围可以覆盖整个子网,包括来自外部的数据以及内部终端之间传输的数据,入侵防御系统则必须部署在网络边界,抵御来自外部的入侵,对内部攻击行为无能为力。

参考:http://security.zdnet.com.cn/security_zone/2009/0412/1362627.shtml

smb分析包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

smb分析工具

扩展---smb协议

MB简介SMB是Server Message Block的简写,这个协议用于共享文件,共享打印机,共享串口等用途。我们之所以能够在windows的网络邻居下访问一个域内的其他机器,就是通过这个协议实现的。SMB 协议是一个很重要的协议,目前绝大多数的PC上都在运行这一协议,windows系统都充当着SMB协议的客户端和服务器,所以SMB是一个遵循客户机服/务器模式的协议。SMB服务器负责通过网络提供可用的共享资源给SMB客户机,服务器和客户机之间通过TCP/IP协议、或者IPX协议、或者是 NetBEUI进行连接。

参考:http://msdn.microsoft.com/en-us/library/cc246231.aspx

smtp分析包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

smtp分析工具

snmp分析报告如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

snmp分析工具

SSL分析包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

ssl分析工具

VoIP分析包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

VoIP分析工具

扩展—VoIP简介

VoIP是 Voice over Internet Protocol的缩写,指的是将模拟的声音讯号经过压缩与封包之后,以数据封包的形式在IP 网络的环境进行语音讯号的传输,通俗来说也就是互联网电话、网络电话或者简称IP电话的意思。

参考资料:https://www.cisco.com/application/pdf/en/us/guest/tech/tk587/c1506/ccmigration_09186a008012dd36.pdf

VPN分析只包含一个工具:ike-scan

Kali Linux渗透测试实战  1.1 Kali Linux简介

vpn 分析工具

存活主机识别包含的工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

存活主机识别工具

服务器指纹识别包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

服务器指纹识别工具

流量分析包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

流量分析工具

路由分析包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

路由分析工具

情报分析包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

情报分析工具

网络包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

网络扫描工具

系统指纹识别包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

系统指纹识别工具

扩展—指纹识别

在实际的生产环境中,应用程序返回的软件、服务器、操作系统的相关信息,很有可能是伪装过的。比如请求一台apathe服务器,如果它在http响应中返回的是IIS 6.0的信息,如果我们简单的认为它是iis服务器,并以此为依据继续接下来的渗透工作,岂不是南辕北辙?指纹识别技术应运而生,向测试对方发送特殊的请求,根据响应内容的不同来做出正确的识别,这种技术称之为指纹识别技术。常用的操作系统指纹识别技术为IP协议栈。

链接http://nmap.org/book/osdetect-fingerprint-format.html是Nmap操作系统指纹识别的基本原理

漏洞分析

Kali Linux渗透测试实战  1.1 Kali Linux简介

漏洞分析工具集

漏洞分析工具集,共分为6个小类,分别为Cisco工具集、Fuzzing工具集、OpenVAS、开源评估软件、扫描工具集、数据库评估软件。

Cisco工具集包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

Cisco工具集

Fuzzing工具集下包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

fuzzing工具集

扩展—Fuzzing

模糊测试 (fuzz testing, fuzzing)是一种软件测试技术。其核心思想是自动或半自动的生成随机数据输入到一个程序中,并监视程序异常,如崩溃,断言(assertion)失败,以发现可能的程序错误,比如内存泄漏。模糊测试常常用于检测软件或计算机系统的安全漏洞。

模糊测试工具主要分为两类,变异测试(mutation-based)以及生成测试(generation-based)。模糊测试可以被用作白盒,灰盒或黑盒测试。[3]文件格式与网络协议是最常见的测试目标,但任何程序输入都可以作为测试对象。常见的输入有环境变量,鼠标和键盘事件以及API调用序列。甚至一些通常不被考虑成输入的对象也可以被测试,比如数据库中的数据或共享内存。

参考:https://www.owasp.org/index.php/Fuzzing

OpenVAS 包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

扩展—OpenVAS

OpenVAS是一款开放式的漏洞评估工具,主要用来检测目标网络或主机的安全性。与安全焦点的X-Scan工具类似,OpenVAS系统也采用了Nessus较早版本的一些开放插件。OpenVAS能够基于C/S(客户端/服务器),B/S(浏览器/服务器)架构进行工作,管理员通过浏览器或者专用客户端程序来下达扫描任务,服务器端负载授权,执行扫描操作并提供扫描结果。

参考:http://www.openvas.org/

开源评估软件包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

开源评估软件工具

扫描工具集包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

扫描工具

数据库评估软件包含如下工具:

Kali Linux渗透测试实战  1.1 Kali Linux简介

数据库评估工具

Web程序

Web程序下主要包含CMS识别、IDS/IPS识别、Web漏洞扫描、Web爬行、Web应用代理、Web应用漏洞挖掘、Web库漏洞利用共7个类别。

Kali Linux渗透测试实战  1.1 Kali Linux简介

web程序工具集

密码攻击

密码攻击主要包括GPU工具集、Passing the Hash、离线攻击、在线攻击。

Kali Linux渗透测试实战  1.1 Kali Linux简介

密码攻击工具集

扩展—Passing the Hash

Passing the Hash,中文一般翻译为Hash传递攻击。在windows系统中,系统通常不会存储用户登录密码,而是存储密码的Hash值。在我们远程登录系统的时候,实际上向远程传输的就是密码的Hash。当攻击者获取了存储在计算机上的用户名和密码的hash值 的时候,他虽然不知道密码值,但是仍然可以通过直接连接远程主机,通过传送密码的hash值来达到登录的目的。

无线攻击

无线攻击包含RFID/NFC工具集、Software Defined Radio、蓝牙工具集、其他无线工具、无线工具集。

Kali Linux渗透测试实战  1.1 Kali Linux简介

扩展-- Software Defined Radio

世纪初,由于众多公司的努力,使得它已从军事领域转向民用领域,成为经济的、应用广泛的、全球通信的第三代移动通信系统的战略基础。

由于无线通信领域存在的一些问题,如多种通信体系并存,各种标准竞争激烈,频率资源紧张等,特别是无线个人通信系统的发展,使得新的系统层出不穷,产品生产周期越来越短,原有的以硬件为主的无线通信*难以适应这种局面,迫使软件无线电的概念的出现。它的出现,使无线通信的发展经历了由固定到移动,由模拟到数字,由硬件到软件的三次变革。

参考:http://zh.wikipedia.org/wiki/%E8%BD%AF%E4%BB%B6%E6%97%A0%E7%BA%BF%E7%94%B5

漏洞利用工具集

漏洞利用工具集,主要包含了几个流行的框架,和其他工具。

Kali Linux渗透测试实战  1.1 Kali Linux简介

BeEF XSS Framework,官方站点http://beefproject.com/。全称Browser Exploitation Framework,它是专注于 web浏览器的渗透测试框架。

Metasploit,官方站点http://www.metasploit.com/。著名的渗透测试框架,是渗透测试人员的必修课。

嗅探/欺骗

嗅探、欺骗  包含VoIP、Web嗅探、网络欺骗、网络嗅探、语言监控五个工具集。

Kali Linux渗透测试实战  1.1 Kali Linux简介

嗅探、欺骗工具集

权限维持

权限维持包含Tunnel工具集、Web后门、系统后门三个子类。

Kali Linux渗透测试实战  1.1 Kali Linux简介

其中Tunnel工具集包含了一系列用于建立通信隧道、代理的工具。

逆向工程

逆向工程,包含了Debug工具集、反编译、其他逆向工具集三个子类。

Kali Linux渗透测试实战  1.1 Kali Linux简介

压力测试

压力测试包含VoIP压力测试、Web压力测试、网络压力测试、无线压力测试四个子类。

Kali Linux渗透测试实战  1.1 Kali Linux简介

硬件Hacking

硬件Hacking包括Android工具集、Arduino工具集两个子类。

Kali Linux渗透测试实战  1.1 Kali Linux简介

数字取证

数字取证工具集包含PDF取证工具集、反数字取证、密码取证工具集、内存取证工具集、取证分割工具集、取证分析工具集、取证哈希验证工具集、取证镜像工具集、杀毒取证工具集、数字取证、数字取证套件。

Kali Linux渗透测试实战  1.1 Kali Linux简介

报告工具集

报告工具集,主要用于生成、读取、整理渗透测试报告的工具,包含Domentation、媒体捕捉、证据管理。

Kali Linux渗透测试实战  1.1 Kali Linux简介

系统服务

系统服务是系统上的服务程序,包括BeFF、Dradis、HTTP、Metasploit、MySQL、OpenVas、SSH。

默认情况下,网络和数据库服务是关闭的,需要重新开启。

Kali Linux渗透测试实战  1.1 Kali Linux简介

小结

上面对Kali Linux的默认工具集进行的了大致的浏览,由于本书只关注于渗透测试,对逆向工程、压力测试、硬件Hacking、数字取证这些工具不会涉及。

下一节介绍虚拟机下的系统安装和简单配置。

更多相关文章

ps:对此文章或者安全、安全编程感兴趣的读者,可以加qq群:Hacking:303242737;Hacking-2群:147098303;Hacking-3群:31371755;hacking-4群:201891680;Hacking-5群:316885176