目录
简介1. 信息收集工具2. 漏洞分析工具3. 漏洞利用工具4. 嗅探和欺骗工具5. 密码攻击工具6. 权限提升工具7. Web 应用工具8. 无线攻击工具9. 硬件黑客工具10、维护访问工具11、取证工具12、逆向工程工具13、压力测试工具14、报告工具15、Kali 十大工具章节概述
前言
Kali系统预装了大量安全工具,即安全工具数据库。 kali2018.2系统中有600多个工具,想要全部使用是不切实际的。只有在需要时才能学习如何使用工具。但是,您应该了解这些工具的用途并掌握一些常用的安全工具。这里,在下面的文章中,您只需要简单了解一下这些工具的用途以及如何使用它们即可。这些工具都是用来完成相应的实际操作的,并且对这些工具的使用方法也进行了详细的讲解。
Kali 在应用程序和功能方面提供了14 种工具:
信息收集、漏洞分析、漏洞利用、嗅探和欺骗、加密工具、权限升级、Web 应用程序、无线攻击、硬件黑客、权限维护、取证工具、逆向工程、压力测试和报告工具。
有关kali系统工具的概述,请访问官网:https://www.kali.org/tools/。
一、信息收集工具
收集信息时,为安全渗透测试做好准备。主要目的是收集渗透测试目标的基本信息,如操作系统信息、网络配置信息、应用服务信息等。 kali提供的信息收集工具分为三种使用模式:命令行模式、图形用户界面模式、shell命令行模式。
名称使用模式描述Amap 命令行Amap 是第一个已知的下一代扫描器,可以识别在异常端口上运行的各种应用程序。 Amap是第一个支持扫描UDP协议和IPv6地址空间的工具,可以作为nmap的重要辅助工具。同时,amap还提供了对未知应用程序特征的自动判断,并允许轻松定制arp-scan命令行。 arp-scan 是一个用于系统发现和指纹识别的命令行工具。发送带有IP 地址的ARP 请求并查看返回的响应。 DMitry是一个用C语言开发的UNIX/(GUN)Linux命令行工具。主机所在的子域、电子邮件、电子邮件地址、执行时间、TCP 端口扫描、Whois 查询等。 dnmap 命令行dnmap 是一个允许您在多个客户端上执行分布式nmap 扫描的框架。您可以读取包含nmap 命令的文件并将命令文件发送到多个连接的客户端。在这些客户端上运行nmap 文件中的命令。 dnmap框架采用客户端/服务器模型,其中服务器发出命令,客户端执行dnsenum命令行,通过运行多线程Perl脚本来枚举域的DNS信息。 IP 块Fierce 命令行Fierce 不是IP 地址扫描器或DDos 工具。此外,它不涉及扫描整个互联网或进行非针对性攻击。这是一个Perl 脚本,是一个侦察工具,可以执行域的快速扫描,以识别公司网络内部和外部的潜在目标。 MaltegoTeeth 图形用户界面Maltego 是一个独特的平台,用于交付到组织拥有和运营的环境中。勒索的照片。 Maltego 的独特优势在于展示网络设备之间单点故障和可靠性问题的复杂性和严重性。 Nmap 是一个免费的开源工具,用于网络发现和安全审核。可用于网络资产管理和联网。 Nmap对于管理服务升级和监控主机和服务的正常运行等任务功能强大,可以确定主机是否在线,确定主机运行的操作系统类型和版本,可以确定服务是什么(应用程序)名称和服务)。版本)、所使用的过滤器和防火墙的类型以及许多其他功能。 p0f 命令行用于识别主机上的操作系统。 p0f 是一种被动发现工具,即使系统上安装了高性能防火墙,也可以捕获并分析从目标主机通过NAT 发送的数据包。负载平衡和应用程序代理。请稍等。这是一个通用的被动操作系统指纹识别工具。 案件没有问题。同时,p0f 是一个开源网络侦察框架,允许您存储强大的Recon-NGShell 命令行以进行网络分析。其中有一个报告模块,可将结果导出为报告。 用于自动化情报收集和网络侦察。其命令格式与Metasploit默认的smtp-user-enum命令行相同。大多数邮件服务基于类Unix系统,并使用操作系统帐户作为电子邮件帐户。所以电子邮件帐户发现实际上相当于发现。以防后续操作系统账户弱口令被破解。 smtp-user-enum 基于三种方法验证电子邮件帐户的存在,并且还支持基于字典的批量验证。
snmp-check 命令行snmp-check 是一个根据默认或指定团体名批量查询目标设备信息的工具。默认情况下,它支持Windows、类Unix网络设备和打印机。完全依靠手动来监控大型网络的运行状态可能会带来压力。 SNMP协议极大地简化了系统和网络管理员的工作,使他们能够快速识别和排除问题。 Unicornscan 命令行Unicornscan 是一个端口扫描器,它通过尝试连接到用户系统(用户层)的分布式TCP/IP 堆栈来获取信息和相关性。一种新的信息收集引擎,主要用于安全研究和通信测试。其主要特点是准确、灵活、高效。 Wireshark 图形用户界面Wireshark 是一款由Ethereal 开发的网络数据包捕获和分析工具,它使用WinPcap 作为接口,可以直接与网卡交换数据包,跳过TCP/IP 协议栈。
Kali系统还提供了许多其他信息收集工具。这些工具的功能几乎涵盖了信息收集的各个方面,包括操作系统信息、应用服务信息和网络信息。如果明智地使用它们,您可以在后续的安全渗透测试过程中“知己知彼,不让自己陷入危险”。
二、脆弱性分析工具
根据收集到的信息,渗透需要进一步分析目标系统或网络的漏洞(即漏洞)。
Kali系统提供了许多实用的漏洞分析工具来发现这些漏洞并支持后续的漏洞利用。 Kali提供的漏洞分析工具如下表所示。
Kali提供了许多漏洞利用工具,其中一些工具功能强大,可以利用许多不同类型的漏洞,甚至可以通过添加脚本来扩展其功能。脆弱性具有非常积极的影响。 Kali系统提供的漏洞利用工具如下表所示。
名称使用模式描述Armitage 图形用户界面Armitage 是用Java 编写的Metasploit 图形界面攻击软件,可用于结合已知的Metasploit 漏洞来自动攻击主机漏洞。从命令行使用Metasploit 很困难,并且需要您记住太多命令。阿米蒂奇彻底解决了这个问题。用户只需点击菜单即可对目标主机进行安全测试和攻击。 Armitage卓越的图形显示界面使攻击过程更加直观,提高了用户体验。由于其操作简便,特别适合Metasploit初学者对目标系统进行安全测试和攻击。 Backdoor Factory 命令行Backdoor Factory 是一款安全测试工具,可以让您轻松生成win32PE 后门测试程序并自动执行可执行文件的后门部署。 BeEF 图形用户界面BeEF(浏览器利用框架)是浏览器的渗透测试工具。 Metasploit FrameworkShell 命令行Metasploit Framework,也称为MSF,是一个用Ruby 语言编写的渗透测试框架。该框架集成了许多可用的漏洞利用工具,包括著名的ms08_067。用户可以在此框架下进行一系列渗透测试,并利用Meterpreter等现有设备(有效载荷)进一步获取对手的shell。 Metasploit 功能强大,几乎每个参与渗透测试的人都会接触过它。这是渗透测试的强大工具。 Exploitdb 命令行Exploitdb(漏洞利用数据库)是OfebnsiveSecurity提供的漏洞利用程序集数据库,可供日常参考使用。它存储了大量的漏洞利用信息,可以帮助安全研究人员和渗透测试工程师更好地进行安全测试。
在上面提到的漏洞利用工具中,Metasploit可以说是最重要、最强大的。 Metasploit漏洞利用脚本主要使用Ruby语言编写,脚本的源代码可以在Kali系统上查看。利用您对这些入侵脚本的理解。
三、漏洞利用工具
嗅探和欺骗主要针对网络。嗅探是指利用计算机的网络接口拦截来自其他计算机的数据包并从嗅探到的数据包中提取有价值的信息(例如用户名和密码)的方法。欺骗是利用一些技术手段来欺骗目标主机的信任并获取有价值的信息。 Kali系统提供的嗅探和欺骗工具如下表所示。
名称使用模式描述Burp Suite 图形用户界面Burp Suite 是测试Web 应用程序的最佳工具之一,允许您破译登录表单并执行各种随机性检查,例如会话令牌。它可以执行各种任务,例如拦截和修改请求、扫描Web 应用程序是否存在漏洞、暴力破解登录表单,并且可以执行会话令牌和其他随机性检查。 HexInject是一个直接插入数据的工具。网络入侵者可以篡改网络构建的数据包或发送的数据。为了避免更改引起的数据验证问题,我们默认验证数据包并重新计算数据包大小以提高可靠性。数据的。 Inviteflood 命令行Inviteflood 攻击以VoIP 为目标,对VoIP 信令协议SIP 中的INVITE 会话请求命令发起洪水攻击。这使得攻击者可以立即收到大量呼叫请求,其效果类似于电话占线。严重时会导致IP电话客户端程序崩溃。 iSMTP 命令行iSMTP 是一个SMTP 用户枚举和测试工具。 Mitmporary命令行Mitmproxy是众所周知的中间人攻击神器,是一个具有篡改功能的http代理工具,支持http和https通信。攻击、捕获和调试HTML 数据包。 Mitmproxy有五种代理模式:正向代理模式、反向代理模式、上行代理模式、透明代理模式、Socks5代理模式。 SniffJoke 命令行SniffJoke 是一个网络反嗅探工具。渗透测试允许您通过网络嗅探来获取有关网络通信主机的各种信息。 SniffJoke会自动对你的网络数据进行额外的处理,例如延迟数据包传输、修改某些数据包、插入无效数据包,以确保嗅探工具能够正确读取数据包,从而使之成为不可能。数据接收者的处理不受影响。 SSLstrip 命令行SSLstrip 也称为https 降级攻击。攻击者拦截用户流量后,诱骗用户与攻击者进行http通信,获取用户信息。 WebScarab 图形用户界面WebScarab 是由开放Web 应用程序安全项目(OWASP) 小组开发的一个框架,用于分析使用HTTP 和HTTPS 协议的应用程序。 WebScarab 记录它检测到的会话内容(请求和响应),并允许用户以各种方式查看记录。这可以用来调试程序中更困难的漏洞,也可以帮助安全专业人员发现潜在的程序漏洞。
嗅探和欺骗充分利用网络协议本身不完善的安全问题,通过IP欺骗、ARP欺骗等手段非法拦截或捕获网络内发送的数据包,为用户提供进一步的信息。信息。学习和使用上述工具将帮助您了解网络协议。
四、嗅探与欺骗工具
密码攻击是安全漏洞的重要一步,甚至可能是最重要的一步。许多系统上的安全门都受密码保护,许多攻击者直到攻击的最后阶段才能够突破密码防御。好的、强的密码很难被技术手段攻破,除非使用社会工程技术,如胁迫、利诱或利用对方的疏忽来获取密码。那么密码攻击毫无用处吗?事实上,网络中充满了弱密码。这是因为许多用户选择的密码过于简单或有规则以使密码更容易记住。服从。此外,某些工具可以帮助您自动尝试弱密码,从而节省您手动尝试的时间和麻烦。这些工具对于攻击弱密码非常有效。 Kali系统提供的密码攻击工具如下表所示。
名称使用模式说明BruteSpray 命令行BruteSpray 是一个基于Nmap 扫描结果的端口爆破工具,可以加载Nmap 扫描结果(gnmap/XML 文件)并枚举指定端口和IP 上的密码爆破。这是通过自动调用美杜莎来完成的。 CainAbel 图形用户界面CainAbel 是由0xid.it 开发的适用于Microsoft 操作系统的免费密码响应工具。它是网络管理员必备的工具,可用于发现Windows和UNIX。用户是否使用了不安全的密码。这是非常强大的,允许网络嗅探、网络欺骗、破解加密密码、破解加扰密码、显示密码框、显示缓存密码以及使用V0IP 在您的Intranet 上进行的其他攻击允许用户监控呼叫。 Crunch 命令行Crunch 是一个密码生成工具,可以根据指定的规则(用户可以指定字符集)生成密码字典。可以生成所有可能的组合和排列,并且可以将生成的字典字符序列输出到屏幕、文件或重定向到另一个程序。 Findmyhash 命令行Findmyhash 是一个功能强大的脚本,可以解析哈希值。如果要解析用户无法理解的哈希值,可以使用Findmyhash 脚本读取哈希值的全部内容。点击。 Hash-Identifier 命令行Hash-Identifier 不是哈希破解工具,而是用于确定哈希值所使用的加密方法的工具。 Hydra Hydra-gtk(Hydra)命令行图形用户界面Hydra 是THC(Hacker Choice)社区开发的在线快速密码破解工具。其目的是向研究人员和安全顾问展示如何远程侵入系统及其密码。该库支持50 多种网络协议,包括Telnet、RDP、SSH、FTP、HTTP、HTTPS、SMB 等,以及John the Ripper 命令(Hydra-gtk 的图形用户界面)。 line John theRipper 是免费的开源软件,用于在已知密文的情况下解密明文。支持DES、MD5等现代加密算法它支持Unix、Linux、Windows、Dos模式、BeOs、openVMS等不同类型的系统架构,其主要目的是破解功能不够强大的Unix。 Linux 系统的密码。 Medusa(美杜莎)命令行Medusa 是一个类似于Hydra 的在线密码破解工具。 Medusa的优点是更加稳定,但是Medusa支持的模块远少于Hydra,并且不支持RDF服务协议。另一方面,也存在形状塌陷的问题。 RainbowCrack 命令行图形用户界面RainbowCrack 是一个密码破解器,它使用内存时间交换技术来加速密码破解过程。它使用彩虹表,这是一个预先计算的纯文本和哈希值表。如果你提前花时间创建这样的彩虹表,那么以后在解析密码时使用rtgen命令行rtgen工具生成彩虹表时可以节省大量时间。彩虹表是针对不同字符组合预先计算的大型哈希值。它可以让你快速破解各种密码。密码越复杂,所需的彩虹表越大,将超过100G。不同的加密方法需要不同的彩虹表。 Samdump2 命令行Samdump2 是一个用于解析Windows SAM 密码文件的工具。
密码破解使用详尽的方法,使用自动尝试密码的工具。此过程需要时间,并且仅对弱密码有效。为了节省时间,经常使用的密码组合被写入字典文件中,并且在分析密码时,通常从头开始尝试最简单的组合。保存字典文件直到获得密码。对于一些复杂的密码,密码工具往往会失去效力,达不到预期的效果。
五、密码攻击工具
现代操作系统往往是多用户系统,为不同的用户授予不同的访问权限,以保护系统的安全。您对系统的访问权限越多,您可以执行的功能就越多。安全入侵的一个非常重要的目标是增加用户权限、获得更多的系统访问权限、执行更多的操作。 kali提供的提权工具如下表所示。
名称使用模式描述MeterpreterShell 命令行Meterpreter 是一个动态可扩展的有效负载,可以在生产过程中通过网络进行扩展。它是基于“内存DLL注入”的概念来实现的,它允许目标系统通过创建一个新进程并调用注入的DLL来执行注入的DLL文件。 Meterpreter 允许您通过运行Getsystem 命令来快速升级权限。 Meterpreter通过多种方式提升权限,允许用户通过运行单个命令来获得系统权限。 SETShell Command Line SET 是一个社会工程包和专为社会工程设计的开源渗透测试框架。具有许多自定义攻击向量,用户可以快速发起可靠的攻击。
kali系统提供的很多漏洞利用和密码攻击都带有提权功能。用户可以在kali官网上看到这些工具的介绍。
六、权限提升工具
Web应用程序是Internet最重要的应用程序之一,其范围非常广泛,也正是因为Web的普及,Web几乎成了Internet的代名词。同样,Web应用程序安全渗透测试有助于发现Web应用程序中的缺点和漏洞,因为它们存在许多安全问题,并且是最容易受到攻击的应用程序之一。漏洞使Web应用程序更加完整。 kali系统提供的Web应用工具如下表所示。
名称使用模式描述Arachni 命令行Arachni 是一个多功能、模块化、高性能Ruby 框架,旨在帮助渗透测试人员和管理员评估Web 应用程序的安全性。同时,Arachni 是开源且免费的,可以安装在Windows、Linux 和Mac 系统上,并允许您导出评估报告。 BlindElephant 命令行BlindElephant 是一个Web 应用程序指纹识别工具。该工具可以读取目标网站的某些静态文件,计算出相应的哈希值,并将其与预先计算的哈希值进行比较,从而确定目标网站的类型和版本号。目前,该工具支持15 种流行Web 应用程序的数百个版本。同时,它还提供了WordPress和Joomla的各种插件。该工具还允许用户扩展该工具以添加版本支持。 CutyCapt 命令行CutyCapt 是一个基于Qt 的跨平台命令行工具,可将HTML 网页转换为矢量图形和位图图像格式(SVG、PDF、PS、PNG、JPEG、TIFF、GIF 等)。 DIRB 命令行DIRB 是一个专门用于目录爆破的工具,默认随Kali 安装。类似的工具还有国外的Patator、Dirsearch、DirBuster,以及国内的御剑。 Nikto 命令行Nikto 是一个开源(GPL) Web 服务器扫描器。扫描项目和插件可以根据需要自动更新。基于Whisker/libwhisker完成底层功能。虽然这是一个很棒的工具,但软件本身并不经常更新,最新和最危险的工具可能不会被发现。 OWASPZAP 图形用户界面OWASP Zed Attack Proxy 项目Attack Proxy 是一个全面的渗透测试工具,用于查找Web 应用程序中的漏洞。这包括拦截代理、自动化处理、被动处理、暴力破解、端口扫描和蜘蛛搜索功能。 OWASPZAP 是一个会话调试工具。调试功能不会向您的网站发起大量请求,对您的服务器影响很小。 Paros 图形用户界面Paros Proxy 是一个代理程序,用于评估Web 应用程序是否存在漏洞。一个基于Java 的Web 代理程序,可让您评估Web 应用程序是否存在漏洞。支持动态编辑/查看HTTP/HTTPS以更改cookie和表单字段等项目。它包括网络流量记录器、网络诱饵、哈希计算器和可以测试常见网络应用程序攻击的扫描仪。该工具检查漏洞类型,例如:SQL 注入、跨站点脚本攻击和目录遍历。 ProxyStrike 图形用户界面ProxyStrike 是一种Web 漏洞扫描工具。要使用它,您需要配置代理。 Vega 图形用户界面是开源代码。
的Word应用程序安全测试平台,Vega能够帮助验证SQL注入、跨站脚本、敏感信息泄露和其他一些安全漏洞。Vega使用Java编写,有GUI,可以在Linux、OS X和Windows下运行。W3af命令行 图形用户界面Wild(Web Application Attack and Audit Forwardwork)是个Web应用程序攻击和审计框架。它的目标是创建一个易于使用和 扩展、能够发现和利用Web应用程序漏洞的主体框架。W3af的核心代码和插件完全由Python编写。项目已有超过130个的插件,这 些插件可以检测SQL注入、跨站脚本、本地和远程文件包含等漏洞。Webshag命令行Webshag是一个对Web服务器进行安全审计的跨平台多线程工具。Webshag会收集那些通常对Web服务器有用的功能,比如Webshag是一个用于对Web服务器进行安全审计的跨平台多线 端口扫描、URL扫描和文件模糊测试。可以通过代理和HTTP身份认证(基于认证或摘要认证),以HTTP或HTTPS的方式扫描Web服务器。 此外Webshag可以凭借IDS规避能力,使请求之间的相关性变得更 复杂。WebSploitShell命令行WebSploit是一个开源项目,主要用于远程扫描和分析系统漏洞。使用它可以非常容易和快速发现系统中存在的问题,并用于深 入分析。WhatWeb命令行Whatweb是一个基于Ruby语言的开源网站指纹识别软件,正如它的名字一样,Whatweb能够识别各种关于网站的详细信息,包括: CMS类型、博客平台、中间件、Web框架模块、网站服务器、脚本类型、JavaScript库、IP、cookie等等。
Web应用广泛,相应的技术层出不穷,无论是用户前端还是服务器后端,都存在大量的漏洞,是黑客攻击的重点,因此Web的安全问题是网络安全一个十分重要的分支。但是学习Web安全渗透十分不易,各种客户端和服务器端技术非常庞杂,需要掌握大量的背景知识,熟悉各种脚本语言和网站架构。在学习Web安全渗透的过程中,熟练使用上述工具将对用户有很大的帮助,从而事半功倍
八、无线攻击工具
随着无线网络基础设施的提升,以智能手机为代表的无线网络通信得到了广泛的应用。无线网络摆脱了有线网络的限制,携带方便,用户可以随时随地访问网络。随着无线网络带宽的提升,有线网络带宽快这一优势已不明显,因此目前无线网络在智能终端应用方面已经远超有线网络,甚至在笔记本的应用上也有超越有线网络的趋势。随着越来越多的应用转移到智能手机平台,特别是手机购物、手机支付、手机理财应用的普及,近几年针对无线网络的攻击也甚嚣尘上,愈演愈烈。无线网络的安全问题与Web应用的安全问题一样,已成为安全领域一个重要的问题,不容忽视。Kali系统提供的无线攻击工具如下表所示:
名称使用模式描述Aircrack-ng图形用户界面Aircrack-ng是一个与802.11标准的无线网络分析有关的安全软件,主要功能有:虚拟管道创建、网络侦测、数据包嗅 探、WEP和WPA/WPA2-PSK破解、essid密码列表的保存和管理。 Aircrack-ng可以工作在任何支持监听模式的无线网卡上并嗅探 802.11b,802.11b,802.11g的数据。该程序可运行在Linux和 Windows上。Arpspoof命令行Arpspoof是一款专业的ARP断网攻击软件,能够直接欺骗网 关,使得通过网关访问网络的电脑全被欺骗攻击,通过ARP欺骗达到中间人嗅探和捕获网络数据包的目的,并替换传输中的数据, 方便用户开启ARP断网攻击,抢占网速。Easy-Creds命令行Easy-Creds是一款欺骗嗅探为主的攻击脚本工具,它具备 ARP毒化、DNS毒化等一些嗅探攻击模式。它最亮的地方就是它的fake AP(欺骗访问点)功能。它比一般自行搭建的fake AP 要稳定得多,而且里面还包含了针对802.1x的攻击模式。Gerix Wifi Cracker图形用户界面Gerix Wifi Cracker是一个aircrack图形用户界面的无线网络破解工具,可破解无线网络密码。Kismet命令行Kismet是一款802.11二层无线网络探测器、嗅探器和入侵 检测系统,使用该工具可以检测周围的无线信号,并查看所有可用的无线接入点,并能嗅出802.11a/b/g/n的流量。Reaver命令行Reaver是一款针对开启Wi-Fi安全防护设定(Wi-Fi Protected Setup,WPS)服务的无线网络的破解工具。Wifte图形用户界面Wifte是一款使用Aircrack-ng工具集来破解无线网络的带图形用户界面的工具,是一款自动化WEP、WPA以及WPS破解工具, 特点是可以同时攻击多个采用WEP和WPA加密的网络。
上述无线网络攻击工具很多集中在对无线接入点的攻击上,包括伪造接入点、干扰无线信号、破解WEP/WPA密码等。针对无线网络应用的攻击与有线网络应用类似,可以采用相同的方法。
九、硬件黑客工具
针对一些特定的软硬件平台、产品和文件格式,如Android、Arduino、树莓派、Jave虚拟机、APK文件,
Kali提供了一些软硬件环境模拟器,及对应文件格式的转换、编译和反编译的工具,放在硬件黑客工具类下面,这些工具如下表所示
名称使用模式描述Android-sdk图形用户界面Android-sdk是一款运行于Kali Linux系统的安卓模拟器,为用户提供了构建、测试和调试安卓应用程序所需的API库和开发工具。Apktool命令行Apktool是一款APK(Android安装包)反编译工具,具有编译、 反编译、签名等功能。Arduino图形用户界面Arduino是一款便捷灵活、方便上手的开源电子原型平台,旨在为艺术家、设计师、爱好者和任何感兴趣的人创造互动对象或环境。Dex2jar命令行Dex2jar是一个能操作Android的dalvik(. dex)文件格式和 Java(.class)的工具集合。Dex2jar是一个可以将. dex文件转换 成Java的. class文件的转换工具。Dex2jar与JD-GUI组合起来就能很好地对apk文件进行一个反编译。Sakis3G命令行Sakis3G是一个经过修改的shell脚本,它能与不同厂商生产的调制解调器建立3G连接。它能自动设置USB或蓝牙调制解调器,甚 至可以检测操作人员的设置。Smali/Baksmali命令行Smali/Baksmali分别是指安卓系统里的Java虚拟机(Dalvik) 所使用的一种.dex格式文件的汇编器/反汇编器。
采用上述工具可以模拟特定的软硬件环境,提供特定文件格式的转换,帮助用户实地了解目标环境的运行情况,为进一步的安全渗透测试提供支持。
十、维持访问工具
在渗透进入对方系统,获取访问控制权限并提升权限之后,攻击者如想进一步维持这一访问权限,往往需要使用木马程序、后门程序和Rootkit来达到这一目的。Kali系统提供的维持访问工具如下表所示:
名称使用模式描述Cryptcat命令行Cryptcat是网络工具Netcat的加密版本。Cryptcat支持TCP、UDP两种网络协议。它可以在两个计算机之间建立指定的连接,并使用特定的密钥对 传输数据进行加密。为了提高加密效果,该工具允许用户在每次连接时使用自定义的密钥,从而保证数据的安全性。Cymothoa命令行Cymothoa是一款可以将ShellCode注入现有进程(插入进程)的后门工具。借助这种注入手段,它能够把ShellCode伪装成常规程序。它所注入的后门 程序能够与被注入的程序共存,以避免被管理或维护人员怀疑。将ShellCode注入其他进程,还有另外一个优势就是:即使目标系统的安全防护工具能够 检验可执行程序的完整性,只要它不检查内存,就不能发现后门程序的进程。Intersect命令行Intersect是一款适合在漏洞利用以后使用的能够自动完成多种后期任务的程序。它能够自动收集密码文件、赋值SSH密钥、收集网络信息,并能 识别杀毒软件和防火墙程序。若要它自动执行后期任务,用户需要创建自己的脚本文件,脚本中指定需要执行的各种功能。对于Inetersect来说,每个 功能都有对应的执行模块。NetCat命令行NetCat是一个非常简单的Unix工具,可以读、写TCP或UDP网络连接 (NetworkConnection)。它被设计成一个可靠的后端(Back-End)工具, 能被其他的程序或脚本直接地或容易地驱动。同时,它又是一个功能丰富的网络调试和开发工具,因为它可以建立用户可能用到的几乎任何类型的连接, 以及一些非常有意思的内建功能。Weevely命令行Weevely是一款针对PHP的webshell的自由软件,可用于模拟一个类似 于Telnet的连接shell,Weevely通常用于Web程序的漏洞利用,隐藏后门 或者使用类似Telnet的方式来代替Web页面式的管理, Weevely生成的服务器端php代码是经过了base64编码的,所以可以骗过主流的杀毒软件和 IDS,上传服务器端代码后通常可以通过Weevely直接运行。
维持访问工具可以帮助攻击者维持对目标系统的访问控制权限,防止攻击行为被发现,同时可以留下后门,方便攻击者的下次访问。
十一、取证工具
在对电子证据进行取证的过程中,相应的取证工具必不可少。取证工具是在调查计算机犯罪时,为了保护证据的完整性和有效性所使用的一些辅助工具。取证工具一般分为勘查取证工具和检查取证工具两种,其中勘查取证工具包括在线取证工具、硬盘复制机、写保护接口硬件、数据擦除设备、手机取证系统等;检查取证工具则包括数据恢复工具、密码译破工具、专用计算机法证工具等。这些工具往往需要对磁盘数据、文件数据、加密数据等进行恢复和提取,从中寻找电子证据。Kali系统提供的取证工具如下表所示:
名称使用模式描述Bulk _ extractor命令行Bulk _ extractor是从数字证据文件中提取诸如电子邮件地址、信用卡号、URL和其他类型的信息的功能的程序。它是一个有用的取证 调查工具,可以用于许多任务,如恶意软件和入侵调查、身份调查和网络调查,以及图像分析和密码破解。Capstone命令行Capstone是一款优秀的反汇编框架,支持多种CPU架构,支持多个平台,提供反汇编指令的语义详情,用一个授权许可便可以为所有 重要编程语言提供捆包等。Dumpzilla命令行Dumpzilla是用Python 3.x开发的,目的是提取Firefox,Iceweasel和Seamonkey浏览器的相关信息进行分析。它在Unix和 Windows 32/64位系统下工作,采用命令行界面,所以信息可以通过管道重定向工具(如grep, awk, cut, sed)进行转储。Galeta命令行Galeta是一个取证工具,用于检查微软公司Internet Explorer生产的Cookie文件的内容。它解析文件并输出可以在电子表格中加载 的字段。Peepdf命令行Peepdf是一个用Python开发的、集成了多个组件的、用于检测 和分析PDF文件是否有害的取证工具。RegRipper图形用户界 面RegRipper是一款用来对Windows操作系统的注册表进行取证的 工具。Volatility命令行Volatility是开源的Windows, tinus:MaC, Android的内存取证分析工具、由Python编写成,命令行操作,支持各种操作系统。
电子证据其实就是计算机能够处理的数字化的数据,它以各种文件格式存储在不同类型的存储介质上。从上表中可以看出,针对不同类型的数据,需要相应的工具去读取,进行取证,有时对于加密数据,需要解密后才能取证。
十二、逆向工程工具
逆向工程(又称反向工程),是一种产品设计技术再现过程。在软件工程领域,一般是先进行UML设计,然后用工具生成代码,这个过程叫正向工程;相应地,从代码生成UML设计图叫作逆向工程。最典型的逆向工程就是程序代码的反汇编或反编译,通过对可执行文件的反向编译还原出其源代码的过程。对于一些危害系统安全的、感染了病毒或者含有恶意代码的可执行文件,如果让其执行可能会引起破坏,造成无法挽回的损失,这时可通过逆向工程手段还原其源代码,在不执行代码的情况下通过对源代码的分析能够更容易地判断并找出恶意代码。Kali系统提供的逆向工程工具如下表所示:
名称使用模式描述diStorm3命令行diStorm3是Kali Linux自带的一款轻量级、容易使用的反汇编引擎。它可以反汇编生成16位、32位和64位指令。它支持的指令集包括FPU、MMX、SSE、SSE2、SSE3、SSSE3、SSE4、x86-64、VMX、AMDs、SVM等。虽然diStorm3采用C语言编写,但可以被Python、Ruby、Java快速封装。这样,用户可以使用Python、Rudy等脚本语言编写脚本,并引入diStorm33,从而定制自己的反汇编工具。edb-debugger图形用户界面edb-debugger是一个跨平台的x86/x86-64调试器。它受到Ollydbg的启发,但是其目标是在x86和x86-64以及多个操作系 统上运行。Linux是目前edb-debugger唯一官方支持的平台,但FreeBSD,OpenBSD,OSX和Windows端口正在进行不同程度的功能实现。Flasm命令行Flasm可以对Flash的SWF文件进行拆解,包括所有的时间表和 事件。通过反汇编,用户可以了解Flash编译器的工作原理,从而提高用户的ActionScript技能。用户也可以手动对反汇编代码进行优 化,或者根据需要调整代码,然后利用Flasm将用户的更改应用于原SWF,替换原始操作JavaSnoop图形用户界面JavaSnoop是一个java应用程序安全测试工具,它允许已拦截的方法,篡改数据和hack运行在计算机上的java应用程序。通常在没JavaSnoop是一个java应用程序安全测试工具,它允许以拦截的 有源代码的情况下,测试java客户端的安全性是不可预知的。在有源代码的情况下,可以运行一个简单的java程序,并在远程附加一个调 试器来调试它,单步运行,根据需要改变变量,但对于一个applet来说要想做到这一点是有点困难的。有时,可能需要修改客户端和服务 器之间的通信,一般的做法是在客户端配置一个代理,在代理上修改数据。问题的关键是,通信的数据通常不是明文的,可能使用了自定 义的协议、序列化的对象、加密的数据或者多种方式混合应用。这样要想修改通信过程中的数据是比较困难的。JavaSnoop试图解决这些 问题,它可直接附加到一个运行中的进程,类似于调试器,然后,篡改方法调用、运行自定义代码或者对系统进行监视。011yDbg图形用户界面011yDbg是一个新的动态追踪工具,将IDA与SoftICE结合起来, Ring3级调试器,非常容易上手,已代替SoftICE成为当今最为流行 的调试解密工具。同时还支持插件扩展功能,是目前最强大的调试工具。Valgrind命令行Valgrind是一款用于内存调试、内存泄漏检测以及性能分析的软 件开发工具。
在信息安全领域,逆向工程往往与编程相关,涉及程序代码的编译、反编译、调试等,其目的是分析代码、跟踪代码的运行,判断并评估代码执行的安全性,从中发现可能的恶意代码。
十三、压力测试工具
压力测试是一种基本的质量保证行为,测试的对象可以是一个独立的应用软件或者是一个完整的系统。它是每个产品在流向市场之前进行的一项重要的、全方位的质量检测。压力测试的基本思路很简单,它不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试。通常要进行压力测试的资源包括内存、CPU、磁盘空间和网络带宽。压力测试的时间往往持续很久,其目的是通过大量的、全面的操作使得产品长时间、高负荷地工作来检验产品的质量。Kali系统提供的压力测试工具如下表所示:
名称使用模式描述DHCPig命令行DHCPig可以发起一个高级的DHCP耗尽攻击。它将消耗局域网内的所有IP地址以及阻止新客户端获取IP,同时它也防止旧客户端释放IP地址。 另外,它会发送无效的ARP去把所有的Windows主机震下线。FunkLoad命令行FunkLoad是一个功能和负载的Web测试仪,主要用于Web项目,对网站项目进行功能测试、性能测试、负载测试(如音量的测试或寿命测试) 和压力测试。iaxflood命令行IAX是Inter-Asterisk eXchange的缩写,也就是Asterisk内部交换协议。iaxflood则是利用IAX设计缺陷而发起洪水式攻击的工具。Inundator命令行Inundator是一个支持多目标的、多线程的、队列驱动的、匿名的、 误用入侵检测系统。MDK3命令行MDK3是一款无线DOS攻击测试工具,能够发起Beacon Flood、 AuthenticationDoS、Deauthentication/Disassociation Amok等模式的攻击,另外它还具有针对隐藏ESSID的暴力探测模式、802.1X渗透测试、 WIDS干扰等功能。rtpflood命令行rtpflood可以洪水攻击RTP通话设备,实现拒绝服务的效果。inviteflood命令行inviteflood通过TCP/UDP进行泛洪攻击的SIP/SDP会话,该工具可以在本机产生大量的流量,因为需要在本地读取数据进行对外发送。所以 在流量监控时可能会产生40M/s的速度。SlowHTTPTest命令行lowHTTPTest是依赖HTTP协议的慢速攻击DoS攻击工具,设计的基本原理是服务器在请求完全接收后才会进行处理,如果客户端的发送速度 缓慢或者发送不完整,服务端为其保留连接资源池占用,大量此类请求并 发将导致DoS。THC-SSL-DOS命令行HC-SSL-DOS是一款针对SSL的压力测试工具。该工具默认会同服务器建立400个SSL连接,并且快速进行重新协商Renegotiations,以达到 大量消耗服务器CPU资源的目的。该工具目前只针对开启重新协商功能的服务器,所以只要关闭该功能,就可以抵御该工具的攻击。
目前很多用于DoS攻击的工具被用来作为压力测试工具,它们的工作原理其实是相同的,都是通过大量的任务耗尽系统资源(CPU、存储和网络带宽)的方法来测试目标的抗压能力。
十四、报告工具
在一次渗透测试结束后,往往需要利用报告工具来生成报告,供工作人员进行存档或者工作报告。一些功能强大且友好的报告工具生成的报告不只包含最终的结果,还包括一些重要的原始数据、中间数据和对数据的分析,并且最终的报告形式可以是多样的、可视化的,用各种图表来生动形象地将结果更好地展示出来。Kali系统提供的报告工具如下表所示:
名称使用模式描述CaseFile图形用户界面CaseFile是Maltego的姊妹工具,功能非常类似于Maltego。CaseFile主要针对数据进行离线分析,缺少Maltego的数据采集功能。 它可以导入各类数据,包括Maltego导出的数据。用户可以为信息添加连接线、标签和注释,标记数据的关系。CaseFile以图形化的方式 展现数据,方便分析人员找出隐含的数据关系。CherryTree图形用户界面支持富文本编辑和代码高亮,支持Linux和Windows平台。数据采用CherryTree是一个支持无限层级分类的笔记软件,由Python编与,sqlite或XML存储,支持密码保护。支持从NoteCase、KeepNote、Knowit、Tomboy、TuxCards、Treepad、Leo等笔记软件导入数据。dos2unix命令行dos2unix命令用来将DOS格式的文本文件转换成UNIX格式的文 本。Dradis图形用户界面Dradis框架是一个开源的、用Ruby开发的协作和报告平台。可生成渗透测试报告,内容包括所提供的服务、使用的方法、发现的结 果和建议。MagicTree图形用户界面MagicTree是一个面向渗透测试人员的工具,可以帮助用户轻松直接地进行数据合并、查询、外部命令执行和报告生成,所有的数据 都会以树形结构存储,非常方便。MetagoofilShell命令行Metagoofil是一款利用Google收集信息的工具,目前支持的文件类型有Word、PPT、Excel和PDF,结果可生成HTML报告文件。
上述报告工具都有其各自的应用领域,在使用时要根据实际情况来选择。但不管是哪种工具,都使得报告的生成更加自动和便利,节省了工作人员的时间。
十五、kali Top10 工具
针对繁多的Kali工具,业界总结出Kali Top10工具,这些工具功能强大、使用广泛,是Kali工具集中使用最为频繁的十大工具。
这些工具分别是:
Nmap(信息收集、脆弱性分析)、Metasploit(漏洞利用)、John the Ripper(密码攻击)、THC-
Hydra(密码攻击)、Wireshark(信息收集、嗅探与欺骗)、Aircrack-NG(无线攻击)、Maltego
Teeth(信息收集、漏洞利用、密码攻击、Web应用)、OWASPZAP(Web应用)、Cain&Abel(嗅探与欺骗、密码攻击)、Nikto(Web应用、信息收集)。这些工具在前面的部分都有介绍,掌握这些工具的使用对从事安全渗透测试工作有着很大的帮助,是信息安全的利器。
本章小结
本篇文章按照安全工具的类型,对Kali系统自带的、常用的安全工具做了介绍。无论是对于安全专家还是攻击者,安全工具都是他们从事安全工作的利器。一个好的安全从业人员,熟练掌握各种类型的安全工具是必不可少的。Kali系统免去了人们寻找、安装安全工具的烦恼,大大方便了对安全的学习、研究和工作。但是Kali系统自带的安全工具如此之多,这些工具的功能、作用是什么?什么时候应该使用什么工具?也是一件令人烦恼的事情。为此本篇文章对一些常见的工具按照功能进行了分类介绍,为安全工作人员提供了便利。
学习计划安排
我一共划分了六个阶段,但并不是说你得学完全部才能上手工作,对于一些初级岗位,学到第三四个阶段就足矣~
这里我整合并且整理成了一份【282G】的网络安全从零基础入门到进阶资料包,需要的小伙伴可以扫描下方CSDN官方合作二维码免费领取哦,无偿分享!!!
如果你对网络安全入门感兴趣,那么你需要的话可以
点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
①网络安全学习路线
②上百份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥HW护网行动经验总结
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析
#以上关于两万字带你认识黑客在kali中使用的工具的相关内容来源网络仅供参考,相关信息请以官方公告为准!
原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/92698.html