网络安全-身份伪造

身份伪造定义

攻击者绕过了不安全的身份验证机制,从而达到越权访问甚至操作的攻击。

身份伪造利用

JWT验证

JWT是一种开放标准(RFC 7519),用于在各方之间安全传输JSON格式的信息。它由三部分组成:头部(Header)、载荷(Payload)和签名(Signature),通过点号(.)连接。

特征是连接的点号以及开头的eyJ

头部(Header) :包含令牌类型(如JWT)和签名算法(如HS256RS256)。

json 复制代码
{
  "alg": "HS256",
  "typ": "JWT"
}

载荷(Payload) :存放实际数据,如用户ID、过期时间等。分为三类声明:注册声明(如exp)、公共声明和私有声明。

json 复制代码
{
  "sub": "1234567890",
  "name": "John Doe",
  "iat": 1516239022
}

签名(Signature):对头部和载荷的Base64编码字符串进行签名,确保数据未被篡改。

text 复制代码
HMACSHA256(base64UrlEncode(header) + "." + base64UrlEncode(payload), secret)

JWT利用

弱密钥爆破

可以使用开源工具c-jwt-cracker对一些采取弱密钥的jwt签名算法进行爆破,示例用法:

复制代码
./jwtcrack eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOnsiYWRtaW4iOmZhbHNlLCJkYXRhIjp7InVzZXJuYW1lIjoiem9tYm8iLCJwYXNzd29yZCI6InpvbWJvIn19LCJpYXQiOjE3NjUzMzk4MDMsImV4cCI6MTc2NTM0MzQwM30.7ABPo3u2x1w9Aa4BROHQCKWP_Rc42ahEjcqaOmqOWLI

然后在jwt官网使用爆破出来的弱密钥进行篡改即可。

靶场、实战练习

Bugku 2023 HackINI just-work-type详解-CSDN博客

身份伪造防御

强化验证机制

jwt签名算法采用强密钥

相关推荐
bleach-3 小时前
文件描述符及Linux下利用反弹shell的各种方法
linux·websocket·web安全·网络安全·系统安全·信息与通信
ZeroNews内网穿透4 小时前
RStudio Server 结合 ZeroNews,实现远程访问管理
运维·服务器·网络·数据库·网络协议·安全·web安全
码农12138号4 小时前
网络安全-SQL注入
数据库·web安全·sql注入
vortex54 小时前
浅谈Linux文件读取类漏洞的额外攻击面
linux·安全·web安全
白帽黑客-晨哥15 小时前
OWASP Top 10 2024 深度解析:Web安全新威胁与防御策略
安全·web安全·网络安全·漏洞挖掘·副业
独行soc15 小时前
2025年渗透测试面试题总结-275(题目+回答)
网络·python·安全·web安全·网络安全·渗透测试·安全狮
码农12138号17 小时前
服务端请求伪造-SSRF 学习笔记
笔记·web安全·网络安全·ctf·ssrf·服务端请求伪造
漏洞文库-Web安全20 小时前
AWD比赛随笔
开发语言·python·安全·web安全·网络安全·ctf·awd
专业开发者1 天前
Bluetooth® Mesh网络安全概述
物联网·安全·web安全