Hack The Box [Starting Point]

初始点 —— 了解渗透测试的基础知识。

这一章节对于一个渗透小白来说,可以快速的成长。以下将提供详细的解题思路,与实操步骤。

TIER 0

实例:Meow

难度:很容易

连接VPN 创建实例机器


目标机器IP地址

解题

1. 首字母缩略词 VM 代表什么?

virtual machine

这边联想 “VMware workstation”虚拟机软件 ,以下方框提示***** *e。
联想虚拟机翻译 答案即 “
virtual machine


该题拿小旗子。

2. 我们使用什么工具与操作系统交互以便通过命令行发出命令,例如启动我们的 VPN 连接的工具?它也被称为控制台或外壳。

terminal

通常发出命令,敲击命令行的时候都是在终端下进行的,即为控制台或外壳。

该题拿小旗子

3. 我们使用什么服务来建立与 HTB 实验室的 VPN 连接?

openvpn 送分题

VPN就是虚拟专用通道,是提供给企业之间或者个人与公司之间安全数据传输的隧道。
我们这里通过openvpn即可以建立与HTB实验室的VPN连接。
该题拿小旗子:

4. VPN启动序列输出中“隧道接口”的缩写名称是什么?

tun

直接隧道接口 翻译 你能发现缩写 即 答案

5. 我们使用什么工具通过 ICMP 回显请求测试与目标的连接?

ping

原理:ICMP协议是报文控制协议 **检查网络的连通性 **ping命令就是基于ICMP协议 这里的考点亦是如此

6. 在目标上查找开放端口的最常用工具的名称是什么?

**nmap **

Nmap是一款针对大型网络的端口扫描工具

7. 在扫描过程中,我们在端口 23/tcp 上识别出什么服务?

telnet

这里直接使用nmap 对目标机器进行端口扫描
-Pn:将所有主机视为在线的——跳过主机发现

8. 什么用户名可以使用空密码通过 telnet 登录目标?

root

这边直接利用telnet工具进行连接 输入root 管理员用户名 如果对方没有设置密码 即能空密码进入
(这边利用Linux子系统 为结果更加清晰)

Telnet协议—— 是Internet远程登录服务的标准协议和主要方式
端口号:TCP 23

作用及机制:
它为用户提供了在本地计算机上完成远程主机工作的能力。
终端使用者的电脑上使用telnet程序,用它连接到服务器
终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器
要开始一个telnet会话,必须输入用户名和密码来登录服务器。Telnet是常用的远程控制Web服务器的方法。

9. 提交Flag

利用telnet工具连接目标 即可远程控制Web服务器
ls:查看当前目录下的文件 可以看到“flag.txt”
cat:查看文件内容 即是flag

结束

这一关虽然很容易,但是满满的都是知识点。
每一个虽然百度都能查到 但是呢 在不百度的情况下 考验的即是一种推断 实操的能力了
从对VPN的认识到创建连接;
从Nmap端口扫描器的认识到利用进行存活端口探测;
从ICMP报文控制协议原理到telnet远程登录服务的标准协议认识及利用;
最后对Linux系统的认识获取目标旗帜 这对于一个小白来说 可不容易。渗透测试就是这样 信息差的关系
容易的东西很容易,如果觉得难的话,是因为自己了解的还不够多而已


实例:Fawn

难度:很容易

连接VPN 创建实例机器


目标机器IP地址

解题

1. 3 个字母的首字母缩写词 FTP 代表什么?

File Transfer Protocol(文件传输控制协议)

直接翻译可以发现答案

FTP协议——文件传输协议 上层协议是TCP
端口号:TCP端口中的20和21这两个端口
作用及机制:其中20用于传输数据,21用于传输控制信息
FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。
其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。
此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。

2. FTP服务通常监听哪个端口?

21

3. FTP 的安全版本使用什么首字母缩写词?

SFTP (Secure 安全的 稳固的)
这边可以联想到HTTPS(超文本安全传输协议)和HTTP(超文本传输协议) FTP+S = FTP的安全版本

4. 我们可以使用什么命令来发送 ICMP 回显请求以测试我们与目标的连接?

**ping **(上一题讲过 ping命令就是基于ICMP报文控制协议)

5. 根据您的扫描,目标上运行的 FTP 版本是什么?

vsftpd 3.0.3

这边利用nmap 指定参数-sV 即可扫描出FTP的运行版本
-sV 探测打开的端口以确定服务/版本信息

6. 根据您的扫描,目标上正在运行什么操作系统类型?

unix

答案基于扫描结果

7. 为了显示“ftp”客户端帮助菜单,我们需要运行什么命令?

ftp -h

8. 当您想在没有帐户的情况下登录时,通过 FTP 使用的用户名是什么?

anonymous

原理:
使用 FTP 传输文件时,用户需要通过向 FTP 服务器提供凭据来获得文件传输许可。当然某些公共 FTP 服务器可能不需要凭据即可访问其文件,但是无法保证数据传输的安全性,任何未加密公共网络上的数据发送都是非常危险的,所以为了保护传输数据的安全,由 FTP 衍生而出的就是下面的两种协议:FTPS 与 SFTP。
如果想要了解FTPS和FTP和SFTP的区别,可以去看一篇文章《一文详解 FTP、FTPS 与 SFTP 的原理》
重点,FTP有两种登录方式。
ftp 有两种登录方式:匿名登录和授权登录。使用匿名登录时,用户名为:anonymous,密码为:任何合法email 地址;使用授权登录时,用户名为用户在远程系统中的用户帐号,密码为用户在远程系统中的用户密码。
参考文献:https://blog.csdn.net/Gao068465/article/details/120846856

利用ftp工具通过匿名用户anonymous 连接目标web服务器 进行文件传输

禁用FTP匿名登陆:
主配置文件 :vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO #禁止匿名登录

9. 提交Flag


这边首先建立连接后,通过命令行可以发现存在flag.txt

ftp连接目标服务器不能直接查看文件内容,可以使用get命令获取该文件并下载至本地

dir 查看当前攻击机文件信息

type 打印即可看到flag值

结束

这一关也很容易,满满的都是知识点。结合上一关的经验,我们可以走的更快
这一关主要了解学习了FTP文件传输协议的原理以及利用姿势,也增进了对Nmap的使用


实例:Dancing

难度:很容易

连接VPN 创建实例机器


目标机器IP地址

解题

1. 3 个字母的首字母缩写词 SMB 代表什么?

Server Message Block

2. SMB 使用什么端口进行操作?

445

445端口是一个毁誉参半的端口,有了它我们可以在局域网中轻松访问各种共享文件夹或共享打印机,但也正是因为有了它,黑客们才有了可乘之机,他们能通过该端口偷偷共享你的硬盘,甚至会在悄无声息中将你的硬盘格式化掉。

3. 我们的 Nmap 扫描中出现的端口 445 的服务名称是什么?

microsoft-ds

这边利用nmap 识别目标445端口出现的服务名称

4. 我们可以使用 SMB 工具“列出”共享内容的“标志”或“开关”是什么?


这边利用smbclient 工具 列出目标共享内容

5. 最后我们可以使用空白密码访问的共享名称是什么?

WorkShares

利用smbclient 继续连接共享文件 “WorkShares”可以空密码进入

6. 我们可以在 SMB shell 中使用什么命令来下载我们找到的文件?

get
以上帮助信息可以看到

7. 提交Flag


一次查找文件 并下载即可获取flag

结束

这一关主要考验对smb的认识以及历史漏洞的简单利用


实例:Redeemer

难度:很容易

连接VPN 创建实例机器


目标机器IP地址

解题

1. 机器上打开了哪个 TCP 端口?

6379

nmap探测

2. 哪个服务在机器上打开的端口上运行?

redis

nmap探测

3. Redis是什么类型的数据库?从以下选项中进行选择:(i) 内存数据库,(ii) 传统数据库

In-menmory Database

原理:
redis是内存数据库,用超级管理员用户运行在内存里的。我们可以通过redis未授权访问漏洞进去,即可拿到最高权限。且可以通过redis可以写计划任务,执行系统命令,写公私钥对等。
redis密码默认没有 需要人为进行配置。

密码配置方法:

  • 连接redis数据库
  • 进入配置文件 redis.conf
  • 解除注释 requirepass [接密码]
  • 退出重连redis 密码设置成功

4. 哪个命令行实用程序用于与 Redis 服务器交互?输入您将在终端中输入的程序名称,不带任何参数。

redis-cli ( 此工具通常用于与redis服务器交互 )

如果没有安装 可以在Linux环境中 执行命令安装:apt install redis-tools

5. Redis 命令行实用程序使用哪个标志来指定主机名?

-h (host)

6. 连接到 Redis 服务器后,使用哪个命令获取有关 Redis 服务器的信息和统计信息?

info

7. 目标机器上使用的 Redis 服务器的版本是什么?

5.0.7

nmap 扫描结果可以看到

8. 哪个命令用于在 Redis 中选择所需的数据库?

select

选择索引为0的数据库

9. 索引为 0 的数据库中有多少键?

4

db0 keys=4

10. 哪个命令用于获取数据库中的所有键?

keys * 可以获取当前选择数据库的所有键

11. 提交Flag


以上查看到存在的键“flag” get 获取键值即可

get 根据key获得对应的value

结束

这一关主要考验对redis和对redis-cli的认识,以及redis未授权访问的漏洞的利用。


Hack The Box( Starting Point )的更多相关文章

  1. 【BZOJ5138】[Usaco2017 Dec]Push a Box(强连通分量)

    [BZOJ5138][Usaco2017 Dec]Push a Box(强连通分量) 题面 BZOJ 洛谷 题解 这题是今天看到萝卜在做然后他一眼秒了,我太菜了不会做,所以就来做做. 首先看完题目,是 ...

  2. CSS3 Flex Box(弹性盒子)

    CSS3 Flex Box(弹性盒子) 一.简介 弹性盒子是 CSS3 的一种新的布局模式. CSS3 弹性盒( Flexible Box 或 flexbox),是一种当页面需要适应不同的屏幕大小以及 ...

  3. Box(视图组件)如何在多个页面不同视觉规范下的复用

    本文来自 网易云社区 . 问题描述 Android App中的页面元素,都是由一个个Box(可以理解成一个个自定义View组件和Widget同级)组成,这些Box可以在不同的页面.不同的模块达到复用的 ...

  4. CSS hack常用方案(摘选)

    邮箱因为默认了line-height?:170%,导致采用table元素时继承问题,可以采用line-height:50% 很好解决. 常 在使用float时,后面的显示不正常,因为继承了float了 ...

  5. Android窗口管理服务WindowManagerService显示Activity组件的启动窗口(Starting Window)的过程分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8577789 在Android系统中,Activ ...

  6. POJ 1380 Equipment Box (暴力枚举)

    Equipment Box 题目链接: http://acm.hust.edu.cn/vjudge/contest/130510#problem/B Description There is a la ...

  7. poj 1442 Black Box(堆 优先队列)

    题目:http://poj.org/problem?id=1442 题意:n,m,分别是a数组,u数组的个数,u[i]w为几,就加到a几,然后输出第i 小的 刚开始用了一个小顶堆,超时,后来看了看别人 ...

  8. UVA10215The Largest/Smallest Box(小数精度)

    本身很容易却因为评测机有毒的一道题,,,看网上题解说最后一个答案要加一个很小的数才能AC,据说是因为没有speci judge #include <iostream> #include & ...

  9. 【01】CSS3 Gradient 分为 linear-gradient(线性渐变)和 radial-gradient(径 向渐变)(转)

    CSS3 Gradient 分为 linear-gradient(线性渐变)和 radial-gradient(径 向渐变).而我们今天主要是针对线性渐变来剖析其具体的用法.为了更好的应用 CSS3 ...

随机推荐

  1. RPA应用场景-产品主数据同步

    场景概述 产品主数据同步 所涉系统名称 产品管理系统.SAP系统 人工操作(时间/次) 35分钟 所涉人工数量 3 操作频率 不定时 场景流程1.登录收购品牌产品管理系统 2.根据时间.产品分类等选择 ...

  2. 3. Caller 服务调用 - dapr

    前言 上一篇我们讲了使用HttpClient的方式调用,那么如果我们现在需要更换为通过dapr实现服务调用,我们需要做哪些事情呢? Caller.Dapr 入门 如果我们的项目原本使用的是Caller ...

  3. 周报?谁还写周报啊?不都用Python小工具: 发个周报邮件给老板就行还写周报啊?不都用Python小工具: 发个周报邮件给老板就行

    缘起: 新跳槽到一家公司, 没想到第一个挑战居然是每周都要发周报. 告诉老板这周都干了些什么和下周准备干什么. 我记性不好, 常常忘事儿.所以很多时候周报都会忘记发送. 于是, 就决定写一个小工具好了 ...

  4. 毕设着急了吧?Python股票数据分析,制作动态柱状图

    写在前面的一些屁话: 雪球成立于 2010 年,是北京雪球信息科技有限公司旗下推出的投资者社区.雪球一直致力于为中国投资者提供跨市场(沪深.香港.美国),跨品种(股票.基金.债券等)的数据查询.资讯获 ...

  5. MySql查看索引以及各字段含义

    查看表的索引: show index from userInfo(表名) show index from 数据库名.表名 查看某表某一列上的索引使用下面的SQL语句: show index from ...

  6. 【RocketMQ】消息的存储

    Broker对消息的处理 BrokerController初始化的过程中,调用registerProcessor方法注册了处理器,在注册处理器的代码中可以看到创建了处理消息发送的处理器对象SendMe ...

  7. SpringBoot启动代码和自动装配源码分析

    ​ 随着互联网的快速发展,各种组件层出不穷,需要框架集成的组件越来越多.每一种组件与Spring容器整合需要实现相关代码.SpringMVC框架配置由于太过于繁琐和依赖XML文件:为了方便快速集成第三 ...

  8. pytorch 基础内容

    一些基础的操作: import torch as th a=th.rand(3,4) #随机数,维度为3,4的tensor b=th.rand(4)print(a)print(b) a+b tenso ...

  9. Java开发学习(十一)----基于注解开发bean作用范围与生命周期管理

    一.注解开发bean作用范围与生命周期管理 前面使用注解已经完成了bean的管理,接下来将通过配置实现的内容都换成对应的注解实现,包含两部分内容:bean作用范围和bean生命周期. 1.1 环境准备 ...

  10. ModuleNotFoundError: No module named 'distutils.spawn'

    解决办法: 安装python3-distutils sudo apt-get install python3-distutils