목록전체 글 (57)
앵하니의 더 나은 보안
JWT의 signature 값을 새로 생성하거나 알고리즘 값을 변경해 JWT 검증을 우회해보고자 한다. JWT 토큰 검증 우회로 시도해볼 기법은 총 7가지 signature 검증 부재 alg 값으로 none 설정 (CVE-2015-9235) alg 값 수정 HS256 > RS256 (CVE-2016-5431/CVE-2016-10555) JKW Injection (CVE-2018-0114) JKU Spoofing kid injection CVE-2022-23529 signature 검증 부재 JWT 토큰 payload와 signature 값을 대조하지 않는 실수를 하는 개발자도 있다고 해서 payload 값(userId 95 > 96, 기타 인증 관련 값) 임의 변경 시도 alg 값으로 none 설정 al..
보호되어 있는 글입니다.
CSRF 취약점이 XSS 취약점의 연장선이라 생각했던 과거를 반성하며 글을 작성한다. CSRF 취약점의 시연을 보통 XSS 취약점과 연계하기 때문에 'CSRF는 XSS 취약점의 연장선이다.'라고 생각했다. 근데 XSS 취약점을 이용해서 CSRF가 가능하다는 것이지, XSS 취약점이 존재해야만 CSRF 취약점이 존재한다는 건 아니다. CSRF (Cross Site Request Forgery) CSRF는 victim이 해커의 스크립트 또는 링크한 URL에 노출된 경우, victim의 의사와는 무관하게 행위를 유발하는 공격을 뜻한다. 사소하게 해커 본인의 게시글 추천부터 타사용자의 게시글 등록 또는 패스워드 변경까지 시나리오로 다양하게 사용할 수 있다. CSRF 발생 가능성 웹 진단을 수행하는 웹 서비스 A..
SSL strip을 다시 공부하다가 SSL strip에 안전하기 위해서 HSTS를 설정해야된다는데 웹 서버에 HSTS를 적용하는게 어떻게 조치가 된다는건지 이해가안됐다. 뭐 HSTS 정보를 웹 서버에서 HTTP Response Header로 보낸다는데, 'https에서 http로 바꾼것처럼 해커가 HSTS 관련 HTTP 헤더를 없애버리면 그만이잖아' 싶어서 한번 자세히 찾아봤다. 기본적으로 SSL strip은 아래의 과정으로 진행된다. 1. hacker가 victim에게 ARP spoofing 수행 2. 임의의 웹 서버 A에 http 프로토콜로 접근 시도(일반적으로 브라우저의 URL 입력으로 접근할 경우 http 사용), ARP spoofing 된 상태이므로 네트워크 패킷을 hacker에게 송신 3. 해..