当前位置: 首页 > news >正文

Overpass – TryHackMe

Overpass – TryHackMe

一、信息收集

  • 先使用nmap对靶场的端口进行探测
nmap -sV -A  10.10.97.56

image-20250908143404275

  • 这里开放了22端口和80端口看看网站上面看了一下没有什么用信息

image-20250908143616237

  • 这里使用dirsearch再对网站进行目录扫描一下
python3 dirsearch.py -u http://10.10.97.56 -e php,html,txt -t 50 -x 403,401 -o result.txt  

image-20250908155127430

  • 在这下面发现了还有一个admin目录尝试使用弱口令没有用

image-20250908155252794

二、漏洞利用

  • 翻阅一下这个网站的js,在前端 login.js 里,登录时服务端返回的内容会被直接存到 Cookie:

image-20250908184335099

Cookies.set("SessionToken", statusOrCookie)

如果返回 "Incorrect credentials",就说明密码错误。

但只要返回的不是 "Incorrect credentials",这个值就会被保存成 SessionToken

而前端并不会再去校验这个 Cookie 值是否真实存在于服务器。

image-20250908164234102

  • 我们使用yakit对这个进行抓包,一定要启动响应劫持否则无法修改返回包Incorrect credentials删除,然后提交数据

image-20250908164731987

image-20250908164200646

  • 成功登录admin页面,里面写了一个James的ssh key

image-20250908164626359

三、内网渗透

  • 将ssh key写入到文件里面

image-20250908173005030

  • 使用命令尝试登录
ssh james@10.10.97.56 -i id_rsa 

image-20250908173040516

  • 这里私钥是加密的,所以还需要先解密,这里使用ssh2john把 SSH 私钥文件(id_rsa)转换成 john 能识别的 hash 格式,因为 id_rsa 是加密的(有 passphrase 密码),john 不能直接用,所以必须先用 ssh2john 转换
ssh2john id_rsa > id_rsa.hash
  • john 来跑字典破解:
john --wordlist=/usr/share/wordlists/rockyou.txt id_rsa.hash

如果这里rockyou.txt文件显示为rockyou.txt.gz使用命令解压一下就好了

sudo gzip -d /usr/share/wordlists/rockyou.txt.gz

image-20250908173626764

  • 使用rockyou字典对文件进行爆破
john --wordlist=/usr/share/wordlists/rockyou.txt id_rsa.hash 

image-20250908173720883

  • 得到ssh密码为james13,对文件进行登录
Permissions 0664 for 'id_rsa' are too open.
This private key will be ignored.
# 如果报错那么使用命令
chmod 600 id_rsa
# 解决

image-20250908174138575

  • 查看当前目录下文件拿到user.txt

image-20250908174209610

四、提权

  • 查看todo.txt文件,这里有提到脚本看看有没有定时任务

image-20250908174824373

  • cat /etc/crontab查看一下任务意思是 每分钟 root 都会去 overpass.thm 上下载一个脚本,并直接用 bash 执行,这里我们可以尝试去修改 /etc/hosts 静态解析将该我们我们恶意的ip地址下发恶意脚本,进而获得 root 权限

image-20250908180035742

  • overpass.thm 指向 127.0.0.1,它会去 本机请求 /downloads/src/buildscript.sh 并以 root 执行,我们将127.0.0.1修改为我们kali的IP地址然后找一个 root 能够访问且你有写权限的路径在这个路径里创建 downloads/src/buildscript.sh,这样当cron计划任务执行的时候就会执行buildscript.sh文件里面的内容

image-20250908180232136

  • 我在Downloads下面创建了一个downloads里面是cron要执行的路径地址

image-20250908183658104

  • 我这里修改了buildsript.sh文件内容,写入了反弹命令

image-20250908183817833

  • 在~/Downloads目录下启动命令python3 -m http.server 80开启http服务

image-20250908183940517

  • 然后启动另外一个终端开启监听模式

image-20250908184016996

  • 回到靶机上面下载文件
curl overpass.thm/downloads/src/buildscript.sh

image-20250908184147823

  • 每一分钟,cron 会尝试去你的 Kali HTTP 服务下载并执行 buildscript.sh过一会儿kali就监听到了

image-20250908184233287

拿到root.txt文件

http://www.agseo.cn/news/284/

相关文章:

  • nvm管理node
  • 浅拷贝和深拷贝两种不同的对象复制
  • NPU前端编译器常见的优化
  • LG11755
  • 「LAOI-9」Update
  • ABC393F
  • ABC393E
  • ABC393D
  • ZR 25 noip D1T2 题解 | 最短路
  • NOIP2024 退役记
  • LG11311
  • CF1746F
  • ABC389F
  • LG10641
  • P11068
  • scp拷贝文件报错
  • ABC150 C-F
  • 【游戏设计】五子棋设计思路
  • LG10516
  • 11.1 定义类和对象
  • C#.NET EFCore.BulkExtensions 扩展详解
  • 2025AI赋能HR新纪元,中国AI HR主流厂商大盘点
  • Linux作业及状态转换
  • C++小白修仙记_LeetCode刷题_队列
  • 设备驱动程序和设备独立性软件的区别
  • Fastjson 1.2.47 远程代码执行
  • 树状数组板子
  • 私有化部署Dify构建企业AI平台教程
  • 树状数组板子2
  • 网络流——OI复健