Kali linux渗透测试系列————2四、Kali linux 渗透攻击之客户端攻击

客户端攻击

客户端(client)或主机(host)是指用来上网的终端设备,好比计算机、平板电脑或是移动设备。客户端可能会为其余客户端提供信息、服务及应用,或是从其余系统(好比服务器)获取信息。一般,属于客户端是指供人们使用的终端设备。然而,人的参与可能会引起一些了的漏洞。所以,客户端攻击这种方法就应运而生。因为它跟Web应用具备关联性,因此能够用来找出谁连接到了Web应用,系统上有哪些漏洞,以及这些系统是否能够成为从Web应用获取访问权限或信息的一种途径。php

下面先会介绍如何经过社会工程来攻击主机。而后详细阐述如何在主机系统上找到漏洞,这样你就可使用其余方法对漏洞进行利用了。python

社会工程

社会工程师欺骗人们使其泄露信息的艺术。许多客户端攻击者都是据此来欺骗终端用户,使他们的系统暴露给攻击者。社会工程设计的范围很广,从拨打电话声称本身是某公司正式员工到在人人网上发个声称是某类服务的连接而其实是欺骗客户的一种手段都是。linux

若是想要保障社会工程攻击可以成功,那么最佳的方式就是花时间充分的熟悉你的目标,也就是要学习用户是如何交流的,并尝试融入他们的环境。许多未能成功的社会工程学攻击都是由于采用通用的格式,而内容中没有可以吸引被攻击者用户的强有力的抓手,好比一些写的很糟糕的电邮老是声称得到了无人认领的奖金。web

社会工程学攻击工具数据库

这里咱们就暂时不展开进行讲解了,到了后期咱们会有一个专门关于社会工程学的讲解,到时候必定全面讲解。缓存

获取和破解用户密码

根据定义,密码破解是指从计算机系统中存储或传送的数据中还原密码。密码是用来加固各种型系统的安全的。安全

获取密码最简单的方式就是经过社会工程学。服务器

黑客破解密码的方式有:多线程

  • 猜想:一般使用收集到的与目标有关的信息进行人工猜想
  • 字典攻击:使用自动化攻击,利用字典中全部可能的单词进行尝试
  • 暴力破解:使用全部可能的字符组合来破解
  • 混合模式:混合使用字典攻击和暴力破解

Kali中的密码破解工具

Kali提供了各类各样的工具来绕过密码安全。密码破解工具能够在密码攻击模块中找到,具体能够分为离线破解工具和在线破解工具本节将介绍在web应用渗透测试中危害主机系统的安全工具。ide

(1)Johnny

Johnny是流行的John the Ripper密码破解工具的一个图形化界面。同时Johnny也有命令行界面,Johnny有若干个引擎,这样他就能够破解不一样类型的密码,包括加密过的密码和散列化处理过的密码。Johnny可以自动检测大多数散裂化的密码和加密过的密码,这点是的这个过程对渗透测试人员来讲更简单。攻击者都喜欢这个工具,由于它的可定制性很是强,能以各类方式定制,以便于加快破解密码的速度。

John the Ripper按以下方式来工做:

  • 尝试用攻击字典来破解密码;
  • 尝试在字典单词的前面或后面添加上数字字符来破解
  • 将字典单词放在一块儿进行攻击
  • 将字母数字字符放到一块儿组成新的单词
  • 在字典单词中混入特殊字符来进行攻击
  • 当全部的ITA方法都失败了,尝试暴力破解


Option:选择攻击的类型

Statistics:显示某一个会话活动的时间

Setting:指定Johnny以何种方式运行

(2)hashcat和oclHashcat

hashcat 和oclHashcat是密码破解工具。oclHashcat是基于GPGPU的版本。hash/oclHashcat工具大多都是多线程工具。他们能够在单个攻击会话中并行处理多个散列和密码列表。hash/oclHashcat工具提供了多个攻击选项,好比暴力破解、密码合成、字典、混合、掩码和基于规则的攻击。

你能够在终端输入hashcat -h 来打开hashcat并查看其使用说明:


若是你要对一个文档进行hashcat,你能够输入:

hashcat [选项] 散列文件名 [单词文件|目录]

(3)samdump2

samdump2是一个用来转存微软的Windows中密码散列的SAM文件的工具,这样密码就能够用离线工具进行破解。对于较新版本的Windows,你可能须要借助其余工具来抓取SYSKEY(启动密文)文件,进而访问存在SAM数据库中的散列。


(4)chntpw

chntpw是Kali linux、BackTrack和其余linux发行版本中带有的一个工具。能够用它来重置Windows 8或早期的Windows版本中的本地密码,也能够修改Windows的密码数据库。不过,主要是用于在不知道密码的状况下入侵Windows系统。


使用说明如上所示

(5)Ophcrack

Ophcrack是一个机遇彩虹表的Windows密码破解器。Kali提供了一个命令行版本和一个图形化版本界面。Ophcrack能够从多种格式中导入散列,包括直接从Windows的SAM文件中直接转存。下面的截图显示的是能够直接加载到Ophcrack中的几种格式:


Ophcarack自带了彩虹表,以下面的例子所示。咱们建议加载最新的彩虹表而不是默认的。彩虹表能够从在线资源中下载,好比开发者网站:http://ophcrack.sourceforge.net/tables.php

(6)Crunch

Crunch是一个用来生成密码列表的工具。若是你可以收集到有关目标如何建立密码的情报信息,那么这个工具会很是有用。举个例子,若是你抓去了两个密码并观察到目标都市用一个短语后跟随数字来做为密码,南无Crunch能够用来快速生成那个短语后跟全部可能的随机数字的密码列表。


Curnch有一些特殊标记字符,能够翻译成以下:

  • @ :插入小写字符
  • %:插入数字
  • ,:插入大写字符
  • ^ :插入符号

举个列子,假定咱们已经知道目标在密码中用pass后跟两个不肯定的字符。为了针对六位字符密码运行Crunch,咱们会首先让pass后跟两位不肯定的数字。能够用%%来代替任意数字。运行这个命令,并将输出放到一个名为newpasswordlist.txt的文本文件中,可用以下实例输入:


最后的字典内容为:


同理咱们也能够根据以上的匹配规则来生成不一样的字典序列。

Kali中的其余可用工具

Kali中也有其余有用的工具,咱们只接受其中可以帮助危害主机系统、获取Web应用服务器的访问权限的工具。Kali中海油一些其余密码破解工具没有加到这个列表中;不过对这些工具的介绍不会在这里展开。

(1)Hash-idenifier

Hash-identifier(散列识别工具)是一个用来识别散列类型的基于python的工具。大多数密码破解工具如John the Ripper都自带了一个散列类型自动检测函数,这类函数都很是好用,在90%的状况下都是精确的。而这个工具能够用来手动验证某个散列类型。要使用Hash-identifier,能够运行这个工具,并粘贴你要识别的散列。


(2)findmyhash

findmyhash是一个免费的在线服务来破解密码的python脚本工具。在使用此工具时,你必需要先链接到Internet,以后你就能够根据题提供的使用说明进行破解密文了:


(3)CmosPwd

CmosPwd是用来破解BIOS的密码的。Cmospwd容许你擦除/清理、备份和恢复CMOS。


(4)creddump

creddump是一个python工具,用来从Windows的注册表中提取各类凭据和密码,creddump能够提取LM和NT散列(SYSKEY保护的)、缓存的域密码或LSA密码。