JWT에 서명하고 검증해야 합니다.

 

강력한 암호 알고리즘으로 서명되지 않았거나 전혀 서명되지 않은 경우 공격자는 JSON 웹 토큰(JWT)을 위조하여 사용자 신원을 사칭할 수 있습니다.

토큰의 유효성을 서명하거나 검증하는데 아무 알고리즘도 사용하지 마세요. 이전에 서명을 검증하지 않은 토큰은 사용하지 마세요.

규칙을 어긴 코드

For pyjwt module:

jwt.decode(token, verify = False)  # 규칙을 어긴 코드
jwt.decode(token, key, options={"verify_signature": False})  # 규칙을 어긴 코드

For python_jwt module:

jwt.process_jwt(token)  # 규칙을 어긴 코드

규칙을 준수한 해결책

For pyjwt module:

jwt.decode(token, key, algo)

For python_jwt module:

jwt.process_jwt(token)  # 이어서 verify_jwt()로 검증하기 때문에 규칙을 준수한 코드
jwt.verify_jwt(token, key, algo)

같이보면 좋은 자료

If you like SONARKUBE, don’t forget to give me a star. :star2:

원문으로 바로가기

Star This Project