2018-2019-2 20165212《网络攻防技术》Exp5 MSF基础应用

攻击成果

主动攻击的实践

  • ms17010eternalblue

    • payload windows/x64/meterpreter/reverse_tcp(成功)
    • payload generic/shellreversetcp(成功)
  • ms17010psexec(成功且唯一)

攻击浏览器的实践

  • ms14064olecodeexecution

    • payload windows/meterpreter/reverse_tcp(成功)

攻击客户端的实践

  • windows/fileformat/adobecooltypesing

    • payload windows/meterpreter/bind_tcp(成功)

成功应用任何一个辅助模块

  • scanner/http/backup_file

    • windows/x64/shell/reverse_tcp (成功且唯一)

一、知识点总结

1.MSF攻击方法

  • 主动攻击:扫描主机漏洞,进行攻击
  • 攻击浏览器
  • 攻击其他客户端

2.MSF的六种模块

  • 渗透攻击模块Exploit Modules:攻击漏洞,把shellcode"背"过去

    • 主动渗透攻击:攻击某个系统服务
    • 被动渗透攻击:攻击某个客户端应用
  • 辅助模块Auxiliary Modules:在进行渗透攻击之前得到目标系统丰富的情报信息,它是攻击的前提
    • 网络服务的扫描与查点
    • 探查敏感信息泄露、Fuzz测试发掘漏洞
    • 收集登录密码
  • 攻击载荷Payload Modules:载荷,一段指令(shellcode),目标系统在被渗透攻击之后去执行的代码
  • 空字段模块Nop Modules
    • 一些对程序运行状态不会造成任何实质影响的空操作或无关操作指令,即空指令(滑行区)
    • 由于系统无法精确计算shellcode的起始地址,所以加入nops以增加攻击成功的概率
  • 编码模块Encoders
    • 改变payload形状,使得不出现特定字符
    • 确保攻击载荷中不会出现渗透攻击过程中应加以避免的“坏字符”
  • 后渗透攻击模块Post:攻击成功之后,动态传输代码使其在被控机执行
  • 查看六种模块源码目录/usr/share/metasploit-framework/modules

3.MSF的三种用户操作界面

  • msfconsole

    • 查看模块的具体信息info [exploits|auxiliary|post|payloads|encoders|nops]
    • 查看设置信息show [options]
    • 查看攻击目标类型show [target]
    • 查找命令search
      • 查找2016年产生的在windows平台下的漏洞search ms16 type:exploit platform:windows
  • armitage
    • 启动服务器service postgresql start
    • 启动armitagearmitage
  • webgui

二、攻击实例

主动攻击的实践

  • ms17010eternalblue

    • payload windows/x64/meterpreter/reverse_tcp(成功)
    • payload generic/shellreversetcp(成功)
  • ms17010psexec(成功且唯一)

攻击浏览器的实践

  • ms14064olecodeexecution

    • payload windows/meterpreter/reverse_tcp(成功)

攻击客户端的实践

  • windows/fileformat/adobecooltypesing

    • payload windows/meterpreter/bind_tcp(成功)
  • 漏洞功能:反弹连接获得靶机的shell
  • 这里是利用漏洞生成pdf,pdf里面被注入了回连shellcode

成功应用任何一个辅助模块

  • scanner/http/backup_file

    • windows/x64/shell/reverse_tcp (成功且唯一)
  • 漏洞功能:查找设置的路径里是否存在指定文件

实验总结

1.实验总结与体会

实验开始的时候在纠结如何去找漏洞,后来是去拿漏洞试靶机。熟练之后找漏洞还是比较快的。

msf是一个强大平台!

实验中有几点很有趣也很有使用价值,比如生成一个含有回连指令的PDF文件 、使靶机蓝屏,看起来干坏事也不是那么困难^_^。 对于MSF生成的PDF文件,可以拿来与正常的PDF文件作比较,看是在哪里注入了shellcode,然后我自己再去用perl命令往文件里注入shellcode。

2.离实战还缺些什么技术

  • msf教了我们去使用已知的漏洞去进行攻击,但msf中集成的漏洞和载荷想必在我们今天会用的机器上是无法成功的。想要真的去做到攻击,就漏洞而言,首先要学会自己找漏洞,理解漏洞原理,理解如何去使用漏洞,而不是敲两下use命令和set命令。这实际上是很难的,可能需要去深入到内核代码层次,去测试内核代码的bug,头皮发麻。还有一点就是要学会自己写shellcode。

3.用自己的话解释什么是exploit,payload,encode.

  • 就这次实验来看,exploit是个动作“去执行、去进行”;payload是所有“攻击武器”合集叫payloads;encode是个动作“去加密、去改变”
  • exploit是要法庭决议要处决一个犯人
  • payload是如何处决,枪毙&绞刑&注射&扔海里……
  • encode是去伪装shellcode,让杀软发现不了它

2018-2019-2 20165212《网络攻防技术》Exp5 MSF基础应用的更多相关文章

  1. 2018-2019-2 20165206 网络攻防技术 Exp5 MSF基础应用

    - 2018-2019-2 20165206<网络攻防技术>Exp5 MSF基础应用 - 实验任务 1.1一个主动攻击实践,如ms08_067; (1分) 1.2 一个针对浏览器的攻击,如 ...

  2. 20155226《网络攻防》 Exp5 MSF基础应用

    20155226<网络攻防> Exp5 MSF基础应用 基础问题回答 1.用自己的话解释什么是exploit,payload,encode? exploit : Exploit的英文意思就 ...

  3. 20155318 《网络攻防》Exp5 MSF基础应用

    20155318 <网络攻防>Exp5 MSF基础应用 基础问题 用自己的话解释什么是exploit,payload,encode? exploit就相当于是载具,将真正要负责攻击的代码传 ...

  4. 20145236《网络攻防》Exp5 MSF基础应用

    20145236<网络攻防>Exp5 MSF基础应用 一.基础问题回答 解释exploit,payload,encode是什么: exploit就是负责负载有用代码的交通工具,先通过exp ...

  5. 20155301 《网络攻防》 Exp5 MSF基础应用

    20155301 <网络攻防> Exp5 MSF基础应用 基础问题 1.用自己的话解释什么是exploit,payload,encode 答:exploit就是利用一些工具的,用来收集目标 ...

  6. 20155321 《网络攻防》 Exp5 MSF基础应用

    20155321 <网络攻防> Exp5 MSF基础应用 基础问题 用自己的话解释什么是exploit,payload,encode 关于exploit,我觉得exploit是利用一些工具 ...

  7. 20155338 《网络攻防》Exp5 MSF基础应用

    20155338 <网络攻防>Exp5 MSF基础应用 基础问题回答 1. 用自己的话解释什么是exploit,payload,encode? exploit将真正要负责攻击的代码传送到靶 ...

  8. 2015306 白皎 《网络攻防》Exp5 MSF基础应用

    2015306 白皎 <网络攻防>Exp5 MSF基础应用 一.基础问题 用自己的话解释什么是exploit,payload,encode. exploit指由攻击者或渗透测试者利用一个系 ...

  9. 20155334 《网络攻防》Exp5 MSF基础应用

    一.基础问题回答 解释exploit,payload,encode是什么: 项目 作用 exploit 是负载有用代码的交通工具,让代码到达目的地,并作用 payload 是有具体功能的代码,能够完成 ...

  10. 20155211 网络攻防技术 Exp08 Web基础

    20155211 网络攻防技术 Exp08 Web基础 实践内容 Web前端HTML,能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. We ...

随机推荐

  1. react notes

    jsx 在JSX中嵌入用户输入是安全的,默认情况下, 在渲染之前, React DOM 会格式化(escapes) JSX中的所有值. 从而保证用户无法注入任何应用之外的代码. 在被渲染之前,所有的数 ...

  2. Phalcon框架数据库读写分离的实现方法

    Phalcon框架和Yaf类似,是一款用C实现的拓展级别的框架,不过其功能实现更加丰富,设计思路基于依赖注入.容器等方式,更符合现代框架思想.本文主要针对Phalcon框架数据库层的读写分离进行说明, ...

  3. Python的url解析库--urlparse

    一.urlparse解析url的query并构建字典 下面的方法主要的功能: 解析url的各个部分,并能够获取url的query部分,并把query部分构建成dict. 具体的代码实现: >&g ...

  4. XSD与C#Code以及XML之间的相互关心

    ------------------------------网上参考资料 C# 利用自带xsd.exe工具操作XML-如通过XML生成xsd文件:http://blog.sina.com.cn/s/b ...

  5. JDK1.5 新特性

    1:自动装箱与拆箱 自动装箱:每当需要一种类型的对象时,这种基本类型就自动地封装到与它相同类型的包装中. 自动拆箱:每当需要一个值时,被装箱对象中的值就被自动地提取出来,没必要再去调用intValue ...

  6. Travelling Salesman and Special Numbers CodeForces - 914C (数位dp)

    大意: 对于一个数$x$, 每次操作可将$x$变为$x$二进制中1的个数 定义经过k次操作变为1的数为好数, 求$[1,n]$中有多少个好数 注意到n二进制位最大1000位, 经过一次操作后一定变为1 ...

  7. spring boot 学习(三)API注解记录及测试

    spring boot API注解记录及测试 部分注解解析 @Controller : 修饰创建处理 http 处理对象,一般用于页面渲染时使用. @RestController : Json数据交互 ...

  8. 068——VUE中vuex的使用场景分析与state购物车实例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. httpclient 连接管理器

    连接操作器 连接操作是客户端的底层套接字或可以通过外部实体,通常称为连接操作的被操作的状态的连接. OperatedClientConnection接口扩展了HttpClientConnection接 ...

  10. php截取中文字符串 GB2312 utf-8

    UTF-8截取中文字符串 function Cn_Substr($string, $length) { preg_match_all("/[\x01-\x7f]|[\xc2-\xdf][\x ...