본문 바로가기
강의 및 교육/Inflearn - Webgoat

JWT tokens - 11. Final challenge

by 이우정 2022. 2. 23.
728x90

Jerry는 Tom의 계정을 삭제하고 싶다. 

 

 

어렵다...

https://www.youtube.com/watch?v=gbzM-ef9cPs

 

Jerry 상태에서 Tom 계정 Delete 시도

 

시도 1) 

서명 안하기

(1) username을 Tom으로 바꾼다.

(2) exp 시간을 맞추고 alg를 none으로 바꾼다.

앗 이런 서명이 필요하다ㅠㅠㅠㅠ

 

시도 2)

키 찾아내기

실패...

 

시도 3)

유튜브 따라하기

(1) username을 Tom으로 바꾼다. 

(2) 만료시간을 증가시켜 바꾼다.

(3) "kid": "webgoat_key" 

- kid : key identifier로 sql injection을 진행한다. 

(4) webgoat 코드를 확인한다.

(5) sql injection

"kid" : "something_else' UNION SELECT 'new_key' FROM INFORMATION_SCHEMA.SYSTEM_USERS; --"

new_key라는 키를 unsion을 통해 결합해 삽입한다. 

(6) new_key를 base64 encoding 한다.

(7) kid에 추가해서 공격하면 성공.....

 

728x90