JWT(JSON Web Token) Attacks
·
Web/Web Hacking
JWT Attack이란?JWT Attack이란, JWT의 설계 문제와 잘못된 처리 방식으로 인해 생기는 취약점입니다. (JWT란?)JWT Attack의 종류JWT Attack은 아래와 같은 방법들을 통해 이루어집니다.서명 검증의 결함으로 인한 JWT 공격서명이 없는 토큰이 수락된 경우의 JWT 공격Secret Key 무차별 대입 공격hashcat을 이용한 brute forceJWT Header Parameter Injectionjwk Injectionjku Injectionkid InjectionJWT 알고리즘 혼동 공격이번 포스팅에서는 서명 검증의 결함으로 인한 JWT 공격과 JWT Header Parameter Injection에 대해 다루도록 하겠습니다.서명 검증의 결함으로 인한 JWT 공격해당 공..
JWT(JSON Web Token) PHP 로그인 구현
·
Web/개발
JWT(JSON Web Token)란?JWT_class.phpsecretKey = "SSSCCCPPPAAANNNDDDYYYOOO"; } private function base64UrlEncode($data) { return str_replace(['+', '/', '='], ['-', '_', ''], base64_encode($data)); } public function hashing($payload) { $header = [ 'alg' => 'HS256', 'typ' => 'JWT' ]; $header = $this->base64UrlEncode(json_encode($header)); ..
JWT(JSON Web Token)란?
·
Web/개발
JWT(JSON Web Token)란?JWT란 JSON 형식의 데이터를 Base64 인코딩을 통해 문자열로 전달하는 Web Token 입니다. (Web Token이란?)하지만 JWT는 인터페이스 표준으로 실제 구현은 JWS(JSON Web Signature)와 JWE(JSON Web Encryption)으로 이루어집니다. JWS와 JWE는 Claim을 어떤 방식으로 전달하는지에 대한 차이가 존재합니다. JWS는 데이터의 무결성을 위해 디지털 서명을 사용하는 방식이고, JWE는 데이터의 기밀성을 위해 암호화를 사용하는 방식입니다. Claim이란?토큰의 종류에는 일반 토큰과 Claim 토큰이 존재합니다. 일반 토큰은 의미 없는 문자열을 JSON으로 보내는 방식으로 인증에서 사용이 될 수 있지만 정보를 담을 ..