前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vulnhub靶机系列:Lampião 1.0

Vulnhub靶机系列:Lampião 1.0

作者头像
字节脉搏实验室
发布2020-07-06 15:39:46
9960
发布2020-07-06 15:39:46
举报

作者-purplet

0x00 准备

靶机下载:

https://www.vulnhub.com/entry/lampiao-1,249/

双击ovf文件,导入到Vmware中,选择NAT模式

Kali:192.168.194.192

0x01 利用知识及工具

nmap、netdiscover、脏牛提权、metasploit

0x02 测试

首先netdiscover扫描同一C段:

netdiscover -i eth0 -r 192.168.194.1/24,找到目标机器IP:192.168.194.144.

利用nmap的TCP半开放扫描,对网站端口进行快速探测,nmap -sS -p 1-65535 192.168.194.144,该扫描方式因为它不打开一个完全的TCP连接,所以是使用频率最高的扫描方式。扫描结果发现开放22、80、1898端口

访问Web页面(80端口),仔细检查后没得到敏感信息,再次访问1898端口访问到正确的Web页面,在结尾看到cms是Drupal

想到CVE-2018-7600,利用msf打一波,msfconsole进入,search drupal,选择2018年的这个。

use exploit/unix/webapp/drupal_drupalgeddon2 set rhosts 192.168.194.144 set rport 1898 set target 0 run

成功拿到session会话,输入shell进入shell终端,再利用python获得一个TTL终端

python -c 'import pty; pty.spawn("/bin/bash")' ,发现是www-data权限。

接下来进行提权,首先查看下内核版本:uname -a

看到版本较高,但有可能存在 CVE-2016-5195 ,也就是脏牛(Dirty Cow)漏洞-Linux一个内核本地提权漏洞 。黑客可通过远程入侵获取低权限用户后,利用该漏洞在全版本Linux系统服务器上实现本地提权,从而获取到服务器root权限。

漏洞影响范围:Linux Kernel >= 2.6.22 的所有 Linux 系统

意味着从 2007 年发布 2.6.22 版本开始,直到2016年10月18日为止,这中间发行的所有 Linux 系统都受影响。而我们的靶机为ubuntu14.04.5更新时间为16年-8月-05所以存在漏洞

在Kali中自带脏牛的脚本文件,新开一个终端【Ctrl】+【Shift】+【T】输入searchsploit dirty,找到需要的文件路径。

返回取得Shell的终端,按【Ctrl】+【C】返回meterpreter的session会话上传cpp文件到/tmp目录下,因为该目录一般是所有用户都具有可读可写权限

upload /usr/share/exploitdb/exploits/linux/local/40847.cpp /tmp

上传后再进入TTL的终端下,对cpp文件进行编译。

g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dcow 40847.cpp -lutil

1-Wall 一般使用该选项,允许发出GCC能够提供的所有有用的警告 2-pedantic 允许发出ANSI/ISO C标准所列出的所有警告 3-O2编译器的优化选项的4个级别,-O0表示没有优化,-O1为缺省值,-O3优化级别最高 4-std=c++11就是用按C++2011标准来编译的 5-pthread 在Linux中要用到多线程时,需要链接pthread库 6-o dcow gcc生成的目标文件,名字为dcow

再运行编译后文件并将结果输出到一个文本中./dcow > status.txt

可以看到重置了Root用户的密码为:dirtyCowFun

最后ssh连接以Root用户身份登录。

但是网上常用的是c文件所编译的,该文件依然在Kali中可以找到,该c文件编译后执行的结果将将新增一个root权限的用户,并增加一个对应密码。

接下来上传,进行编译,步骤同上。

meterpreter > upload /usr/share/exploitdb/exploits/linux/local/40839.c /tmp

www-data@lampiao:/tmp$ gcc -pthread 40839.c -o dirty -lcrypt

执行编译后文件进行提权./dirty password(新增的root用户的密码可自定义)

运行完毕后,看到给出了一个具有root用户权限的用户名“firefart”和我们自定义的密码“password”,再开一个终端尝试进行ssh连接。

可以看到第二个执行的c文件编译程序后新增了一个root权限的用户firefart,并在/etc/passwd中可以看到。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-07-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 字节脉搏实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x00 准备
  • 0x01 利用知识及工具
  • 0x02 测试
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档