KALI视频学习
kali下密码攻击工具的使用
密码攻击工具包括CPU工具集、hash攻击、离线攻击、在线攻击。
在线工具
cewl
可以通过爬行网站获取关键信息创建一个密码字典,例如URL返回特定的内容(关键词)做成一个字典,会使枚举更加高效。
CAT
很小的安全审计工具,扫描Cisco路由的一般性漏洞,例如默认密码,SNMP,community字串和一些老的ISO bug。
Findmyhash
在线hash破解工具,借助在线hash的接口制作的一个工具。
使用命令findmyhash MD5 -h 哈希名
哈希名为c4ca4238a0b923820dcc509a6f75849b。 测试MD5的hash,此时链接各个网站的接口测试能否反查到原来的字符串
经过漫长的等待终于破解成功
老牌破解工具Hydra
使用参数简单易懂
破解FTP服务:
hydra -L user.txt -P pass.txt -F ftp://127.0.0.1:21
破解SSH服务:
hydra -L user.txt -P pass.txt -F ssh://127.0.0.1:22
破解SMB服务:
hydra -L user.txt -P pass.txt -F smb://127.0.0.1
破解MSSQL账户密码:
hydra -L user.txt -P pass.txt -F mssql://127.0.0.1:143
单一用户用-l 用户名
,,若对用户名也要破解用-L 用户名
,固定一个密码用-p
,对于一个文件用-P
首先判断ssh是否打开,使用命令service ssh status
运行命令hydra -l root.txt -P ~/pass.txt -F ssh://127.0.0.1:22
hydra图形化界面为hydra-gtk
medusa
类似于hydra
命令medusa -h 192.168.1.106 -u root -P //wordlists/rockyou.txt -M ssh
-h
选择一个目标的IP地址
-P
选择密码字典位置
选择服务只需修改-M后的参数即可
NCrack
功能类似,突出了RDP爆破功能
命令ncrack -vv windows.user -P windows.pwd 192.168.1.101:3389,CL=1 -f
-vv
显示
-u
用户名称
-P
密码+远程的IP地址
冒号后是端口号
onesixtyone
是一个snmp扫描工具,用于找出设备上的SNMP community字符串,扫描速度非常快。
patator
python编写的多服务破解工具,如枚举一个服务用户名字典:
patator ssh_login host=127.0.0.1 user=root password=FILE0 0=pass.txt -x ignore:mesg='Authentication failed
phrasen|drescher
多线程支持插件式的密码破解工具
离线攻击
Creddump:基于python的哈希抓取工具
crunch: 密码字典生成工具,可以指定位数生成暴力枚举字典
Chntpw:用来修改Windows SAM文件实现系统密码修改,亦可在kali作为启动盘时做删除密码的用途。
dictstat:字典分析工具,可以分析出一个现有字典分布状况,可以按照一定的过滤器提取字典。
Fcrackzip:kali下的一款ZIP压缩包密码破解工具
Hashcat:hashcat系列软件是比较强大的密码破解软件,系列软件包含hashcat,oclhashcat,还有一个单独新出的oclRausscrack,其区别为hashcat只支持cpu破解,oclhashcat和oclGausscrack则支持gpu加速,oclhashcat则分为AMD版和NIVDA版
Hashid:一款简单易用的哈希分析工具,可以判断哈希或哈希文件是何种哈希算法加密的
hash-identifier:hash-identifier是一款与HashID类似的一款工具
可能hash值写错了未能成功。
John the ripper:老牌密码破解工具,常用于Linux Shadow中账户的密码破解,社区版也支持MD5-RAW等哈希的破解
0phcrack:彩虹表windows密码哈希破解工具。对应有命令行版的ophcrack-cli,可以从官网下载部分彩虹表。
Pyrit:一款无线网络密码破解工具,借助GPU加速,可以让WPA2密码破解更有效率
Rcrack:彩虹表密码哈希工具,我们需要有足够容量的彩虹表,使用很简单,按照参数破解即可
Rcracki_mt:另一款彩虹表哈希破解工具,不同的是次攻击支持最新格式的彩虹表进行哈希破解,当然,彩虹表仍然是不可缺少的关键存在
Rsmangler:字典处理工具,可以生成几个字串的所有可能组合形式,在生成社工字典时亦可用到,可以有选择的关闭某些选项。
SIPCrack:SIPCrack是针对SIP protocol协议数据包的破解工具,支持PCAP数据包与字典破解,SUCrack是借助sudo命令进行本地root账户的密码破解
Truecrack:一款针对TrueCrypt加密文件的密码破解工具
在windows系统中,系统通常不会存储用户登录密码,而是存储密码的hash值,在我们远程登录系统的时候,实际上向远程传输的就是密码的hash。当攻击者获取了存储在计算机上的用户名和密码的hash值的时候,他虽然不知道密码值,但是仍然可以通过直接连接远程主机,通过传送密码的hash值来达到登录的目的。
要进行哈希传递攻击,首先我们要有目标主机的哈希信息。
哈希传递
passing the hash,中文一般翻译为hash传递攻击,在windows系统中,系统通常不会存储用户登录密码,而是存储密码的哈希值,在我们远程登录系统的时候,实际上向远程传递的就是密码的hash值。当攻击者获取了存储在计算机上的用户名和密码的hash值的时候,他虽然不知道密码值,但是仍然可以通过直接连接远程主机,通过传送密码的hash值来达到登录的目的。
Keimpx:一款Python编写的哈希传递工具,可以通过已有的哈希信息GET一个后门SHELL
没有运行,按照提示使用 sudo apt-get -y remove python-impacket
但是运行到一般又不可以
Kali无线安全分析工具
Aircrack
Aircrack-ng是一个与802.11标准的无线网络分析有关的安全软件,主要功能:网络侦测、数据包嗅探、WEP和WPA/WPA-2破解。
下载地址:http://www.aircrack-ng.org/
Cowpatty
一款知名的WPA-PSK握手包密码破解工具
EAPMD5PASS
针对EAP-MD5的密码破解工具
Fern Wifi Cracker
图形化工具,使用Python写的可把外置的无线网卡勾选到Kali下面
MDK3
无线DOS攻击测试工具,能发起Beacon Flood、Authentication DoS等模式的攻击,还具有针对
隐藏ESSID的暴力探测模式、802.1X渗透测试、WIDS干扰等功能。
wifite
自动无线网审计工具,可以完成自动化破解。Python脚本编写,结合Aircrack-ng套件和Reaver工具。
Reaver
对开启WPS的路由器PIN码进行破解。大部分路由器的WPS都是开启的。关于PIN码破解,参考:http://blog.csdn.net/tinyeyeser/article/details/17127805
BSSID 是指站点的 MAC 地址.
课本知识点
网络安全属性与攻击模式
网络安全的属性:机密性 、完整性 、可用性 、真实性 、不可抵赖性 。
网络攻击的基本模式分为:截获(嗅探 与 监听) 、中断(拒绝服务) 、篡改(数据包篡改) 、伪造(欺骗) 。
TCP/IP网络协议栈在设计时采用了分层模型:网络接口层 、互联层 、传输层 、应用层。每一层当中都有针对破坏网络安全属性为目的的攻击技术。
网络层协议攻击
IP源地址欺骗
攻击者伪造具有虚假地址的IP数据包进行发送,以达到隐藏发送者身份、假冒其他计算机等目的。
防范采用使用随机化的初始序列号,是的远程攻击者无法猜测道通过源地址欺骗伪装建立TCP;连接所需的序列号;使用IPsec,对传输的数据包进行加密,避免泄露信息;在局域网网关上启动入展过滤机制,阻断来自外部单源IP地址却属于内部网络的数据包。
ARP欺骗
攻击者在有线以太网或是无线网络上发送伪造的ARP消息,对特定IP所对应MAC地址进行欺骗,使局域网内主机记录的MAC-IP地址映射表中被攻击者的条目的MAC地址修改为攻击者指定的MAC地址,这样局域网内发送给被攻击者的数据包就会发送给修改后的MAC地址主机。
防范采用静态的IP地址-MAC地址绑定
ICMP重定向攻击
攻击者伪装成路由器(IP地址欺骗:冒充为网关)发送虚假的ICMP重定向路由路径控制报文,使得受害主机选择攻击者指定的路径,从而实现嗅探或假冒攻击。这里存在一个现象:再转发的过程中,攻击节点协议栈可能会向被攻击者发送ICMP重定向报文,说明直接发送给真实的网关比发送给攻击机少一跳,这个报文将会是欺骗路径更改至原路径。
防范采用设置防火墙过滤,对于ICMP重定向报文判断是不是来自本地路由器
传输层协议攻击
TCP RST 攻击
伪造TCP重置报文攻击,是一种假冒干扰TCP通信连接的技术方法。攻击者通过嗅探的方式来监视通信双方,在获得源、目的IP地址即端口,以及序号之后就可以结合IP地址欺骗技术伪装成通信一方,在确保端口号一致和序列号落入TCP窗口之内的情况下,发送TCP重置报文给通信另一方,就可以中断双方正常的网络通信,达到拒绝服务的目的。
TCP会话劫持
攻击者通过实施中间人攻击,嗅探到建立连接的通信双方的序列号,通过假冒用户的IP地址向Telnet服务器发送数据包,宣称自己就是用户。而攻击者发送的数据包中的序列号必须满足SVR_ACK<=序列号<=SVR_ACK+SVR_WND,其中的SVR_END为Telnet服务器的接收窗口,Telnet服务器才会接收该数据包。
ACK风暴:由于中间人攻击的局限性,用户的数据包仍然有可能会发送Telnet服务器或是接收到数据包,Telnet服务器会发现用户的数据包中的ACK与期望的值不一致,此时服务器会发送期望的ACK值,企图重新建立起同步状态,用户接收到服务器的响应报文后,也会发现ACK值不正确,会返回一个ACK包,此时会陷入死循环。ACK风暴是的TCP会话劫持攻击很容易被管理员发现,因此攻击者往往会发送RST重置掉用户和服务器之间的连接。
TCP SYN Flood
其又称为SYN洪泛攻击模式拒绝服务攻击的一种,利用TCP三次握手协议的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,消耗目标主机的连接队列资源,从而不能够为正常用户提供服务。
防范采取SYN-Cookie技术,该技术改变的资源分配策略:当服务器收到一个SYN报文后,不立即分配缓冲区,而是将连接信息生成一个cookie,并将这个Cookie作为将要返回的SYN+ACK报文的初始序列号。单客户端返回一个ACK报文是,根据报头信息计算cookie,与返回的确认号(初始的序列号+1)的前24位进行比较,如果相同,那么是一个正常连接,分配资源,建立连接。
UDP Flood拒接服务攻击
通过向目标主机和网络发送大量的UDP报文,造成目标主机显著的计算负载提升,或者目标网络拥塞,从而使得目标主机和网络陷入不可用状态,造成拒绝服务攻击。
防范采取防火墙和代理机制来过滤掉一些非预期的网络流量。