WEB攻防【4】——JavaWeb项目/JWT身份攻击/组件安全/访问控制

一、知识点

1、Javaweb常见安全及代码逻辑

Javaweb的架构:

如何通过包查找到文件,通过URL对应源码的文件,或者通过源码文件对应URL地址。

2、目录遍历&身份验证&逻辑&JWT

Javaweb里面有身份认证的JWT的技术,python和php里面也出现,java中最多,跟在php中接触到的session和cookie差不多,是新的身份认证的方案。

3、访问控制&安全组件&越权&三方组件

javaweb的除了自身的代码逻辑漏洞,再一个就是第三方组件的漏洞,log4j等。

二、演示案例

1、JavaWeb-WebGoat8靶场搭建使用

WebGoat介绍

WebGoat是OWASP维护的,用于进行WEB漏洞测试和学习的JAVA应用程序。

#环境下载:

GitHub - WebGoat/WebGoat: WebGoat is a deliberately insecure application

下载之后需要JDK环境运行:

安装包:功能封装在jar包里面 需要查看的话就得反编译

#目录遍历:
2、安全问题-目录遍历&身份认证-JWT攻击

接收键名和键值 漏洞点在接收键名对应键值 是正确 但是如果自己构造不存在的键名 由于数据库没有 为null 也会显示正确。

就是看验证代码的逻辑是否正确

JWT 简介

JWT原理及常见攻击方式 - yokan - 博客园 (cnblogs.com)

JWT的全称是Json Web Token。它遵循JSON格式,将用户信息加密到token里,服务器不保存任何用户信息,只保存密钥信息,通过使用特定加密算法验证token,通过token验证用户身份。基于token的身份验证可以替代传统的cookie+session身份验证方法。python和java爱用这个技术

jwt由三个部分组成:header.payload.signature

可以解密 改为ture 但没有那么简单 header里面有加密方式 可以将加密方式设置为空 带三部分签名会涉及一些密匙的东西 不验证密匙的话 改为空加密方式就可行 如果要验证密匙空加密方式就不可行

1、算法改成none 就只有第一段和第二段,none不需要密匙所以没有第三段。

相关工具:c-jwt-cracker (爆破密匙)

知道密匙更改内容

3、安全问题-访问控制&安全组件-第三方组件

#身份认证键值逻辑:

使用键名键值进行对比验证错误

-JWT攻击:1、签名没验证空加密2、爆破密匙 3、KID利用https://www.cnblogs.com/vege/p/14468030.html

#访问控制

隐藏属性:前端页面的自慰限制显示

水平越权:同一级别用户权限的查看

相关推荐
神经毒素8 小时前
WEB安全--RCE--webshell bypass2
安全·web安全
Johnstons10 小时前
AnaTraf:深度解析网络性能分析(NPM)
前端·网络·安全·web安全·npm·网络流量监控·网络流量分析
网络空间小黑10 小时前
常见WEB漏洞----暴力破解
计算机网络·安全·web安全·网络安全·系统安全·网络攻击模型·安全架构
JoySSL证书厂商11 小时前
访问网站提示“不安全”“有风险”怎么办?
安全
Suckerbin12 小时前
基于HTTP头部字段的SQL注入:SQLi-labs第17-20关
网络·笔记·网络协议·安全·http·网络安全
武汉格发Gofartlic12 小时前
FEKO许可证的安全与合规性
大数据·运维·安全
Blossom.11812 小时前
低代码开发:开启软件开发的新篇章
人工智能·深度学习·安全·低代码·机器学习·计算机视觉·数据挖掘
AI大模型顾潇14 小时前
[特殊字符] 本地部署DeepSeek大模型:安全加固与企业级集成方案
数据库·人工智能·安全·大模型·llm·微调·llama
qyresearch_15 小时前
全球实物文件粉碎服务市场洞察:合规驱动下的安全经济与绿色转型
安全
玥轩_52117 小时前
BUUCTF 大流量分析(三) 1
安全·网络安全·wireshark·ctf·misc·buuctf·大流量分析