skyler实战渗透笔记(五)—Tr0ll

0skyler实战渗透笔记:

笔记是为了记录实战渗透学习过程,分享渗透过程思路与方法。

请注意:

对于所有笔记中复现的终端或服务器,都是自行搭建环境或已获授权渗透的。使用的技术仅用于学习教育目的,如果列出的技术用于其他任何目标,我概不负责。

0x00 前言

0x01 信息收集

0x02 渗透get shell

0x03 提权

0x04 总结

 

 

 

0x00 前言

今天目标的难度是简单,Tr0ll的灵感来自于OSCP实验室里机器的不断挑衅,目标很简单,从/root目录获得root并获得Proof.txt。

 

0x01信息收集

老规矩,探测一下目标靶机及端口服务:

 

 

目标靶机192.168.245.145,开放了端口:

 

 

哟,开放了匿名ftp,开了22ssh,和80的httpdweb服务

|--21 ftp

|--22 ssh

|--80 httpd

0x02 渗透get shell

接下来就按顺序来看看每个端口服务,首先第一个21端口提供了匿名访问的服务,那么用Anonymous访问下21端口看看:

 

 

有一个lol.pcap的网络包,下载下来用wireshark分析下:

这是一个ftp的网络访问包,展示了一个匿名用户RETR命令下载了ftp中这个文件,文件内容如下:

 

 

Well, well, well, aren't you just a clever little devil, you almost found the sup3rs3cr3tdirlol :-P\n

那估计这个sup3rs3cr3tdirlol 是个关键词了。

先尝试下root/sup3rs3cr3tdirlol 能否登录到系统里,发现不能!

那记下来,再去看看80端口。

访问首页是一张图:

 

 

 下载下来丢到winhex里看了下没有什么异常。

dirsearch扫了一下,发现一个隐藏目录:

 

访问发现了另一张图:

 

手动微笑。我对这两张图研究了半天,发现没有任何信息啊,感情是放的烟雾弹,我吐了。

那接下来就只能尝试访问下刚才那个key,没想到还真有内容:

 

 

下载这个文件并用file看了下:

 

 

是个32位可执行而文件,赋予x权限,执行试试:

 

 

ok,访问下这个地址试试:

 

 

 有两个目录,下面的是password,那上面的就是用户名了。点开第一个目录:

 

 

是一堆字符串,那把这个文件先wget下载到本地,再去访问下password目录:

 

 

 

打开目录发现有一个Pass.txt文件,里面写了一个good_job。这里又有一个坑,我一开始以为密码是Good_job,但是试了半天都不对,后来才反应过来,这个folder文件夹包含了密码,那密码是不是这个txt的名字啊?

用九头蛇试试:

hydra -L which_one_lol.txt -p Pass.txt 192.168.245.145 ssh 

 

 

果然。。 真是巨坑。

拿到了用户名密码,直接ssh访问:

 

 

0x03 提权

提权第一步:先找内核提权漏洞:

 

 

3.13的内核,在exploit上搜一下:

 

 

第一个试试:

 

 

下载到exp的c文件,先去远端试试能不能在远端编译:

 

 

支持gcc,那么直接在kali启动python服务:

 

 

从靶机上wget直接下载这个.c 文件:

 

 

编译执行:

 

 

一次成功!撒花

 

 

 

 0x04 总结

这次的靶机确实简单,比较绕的地方就在于那两个迷惑性的目录。

这里有一个小点其实大有可说,就是在ssh普通用户登陆上去后,我发现每隔一段时间,会话就会被超时断开:

 

 

后来我找了下,发现存在一个定时任务,定时杀掉所有会话并删除tmp目录下内容:

 

 

继续查看lib/log

 

 

cleaner.py脚本是以root权限执行的,并且该脚本是全局可写的,那么我们也可以利用这一点进行提权

 

 

 使用ssh-keygen(用来生成ssh公钥认证所需的公钥和私钥文件)

目录默认、密码Pass.txt、反复输入密码即可在/root/.ssh/目录生成id_rsa、 id_rsa.pub文件

 

将 id_rsa.pub产生的密匙内容复制到文本中

 

使用vim修改cleaner.py文件

命令:
#!/usr/bin/env python
import os
import sys
try:
os.system(‘mkdir /root/.ssh; chmod 775 .ssh; echo “加上 id_rsa.pub产生的密匙内容上图有例子” >> /root/.ssh/authorized_keys’)
except:
sys.exit()
这脚本提供给大家,收藏慢慢累积学习

 

 来后直接执行ssh root@192.168.182.143,然后输入Pass.txt即可登录

 

posted @ 2021-09-15 23:06  XuepengZ  阅读(155)  评论(0编辑  收藏  举报