P_Squirrel
Squirrel Hack
P_Squirrel
전체 방문자
오늘
어제
  • 분류 전체보기 (434)
    • Wargame(Web) (176)
      • Webhacking.kr Writeup (58)
      • DreamHack Writeup (67)
      • Lord of SQLInjection (40)
      • Websec.fr (2)
      • Webgoat (1)
      • G04T war (7)
    • Wargame(Pwnable) (95)
      • DreamHack Writeup (69)
      • pwnable.xyz Writeup (20)
      • G04T war (6)
    • Wargame(Reversing) (26)
      • DreamHack Writeup (26)
    • Wargame(crypto) (7)
      • DreamHack Writeup (7)
    • Wargame(DigitalForensic) (41)
      • CTF-D Writeup (28)
      • DreamHack Writeup (6)
      • Suninatas Writeup (7)
    • Wargame(misc) (4)
      • DreamHack Writeup (4)
    • DreamHack CTF (21)
    • BDSec CTF (5)
    • AmateursCTF (2)
    • ångstrom CTF (6)
    • L3ak CTF (1)
    • Hspace war (1)
    • Reference (42)
      • Language_Study (10)
      • Pwnable_Study (24)
      • Web Hacking_Study (3)
      • Linux (2)
      • Windows Kernel (1)
    • 자격증 공부 (2)
      • 정보처리기사 (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 문

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
P_Squirrel
Wargame(Web)/Webhacking.kr Writeup

Webhacking Writeup 4번 문제

Wargame(Web)/Webhacking.kr Writeup

Webhacking Writeup 4번 문제

2022. 8. 15. 16:27

Webhacking Writeup 4번 문제입니다.

본 Writeup은 다음 라이트업을 보고 작성하였습니다.

https://esyeonge.tistory.com/83

 

Webhacking.kr old 4번 문제 풀이

view-source를 눌러서 소스 코드를 보자. 코드를 해석하면 다음과 같다. 1. 10000000부터 99999999 숫자 중 하나 + salt_for_you를 더한 문자열을 hash에 저장한다. (ex. 10001111salt_for_you) 2. 1에서 수행한..

esyeonge.tistory.com

 

 

먼저 사이트에 접속하면

 

암호화된 값과 패스워드 입력창이 있습니다.

소스코드를 제공해주니 소스코드를 살펴보겠습니다.

 

필요한 부분만 캡쳐했습니다.

해석해보면 post 방식으로 key값을 전달받으며 세션값과 일치하면 문제가 해결됩니다

이 key값은 hash변수로 랜덤하게 10000000~99999999중 한가지 값과

salt_for_you 를 합친 문자열을 sha1이라는 암호화방식으로 암호화되어있습니다.

그것도 500번이나요

 

암호방식을 조금 집고 넘어가자면 base64처럼 복호화가 되는 방식이 있고

md5나 sha1처럼 암호화만 가능하며 복호화가 불가능한 단방향 해시방식이 있습니다.

 

즉 우리는 500번 sha1으로 암호화된 값으로 복호화는 불가능하다는 애기입니다.

그러나 md5나 sha1의 경우는 값 "A"는 값 "B"로 변환한다는 방식인데

이를 이용해 모든 값의 경우의 수를 만드는 레인보우 테이블이란것이 존재합니다.

 

다만 모든 경우의 수를 저장하다보니 시간과 용량이 많이 듭니다.

해서 이러한 테이블을 제공해주는 곳이 아래사이트 처럼 있습니다.

https://crackstation.net/

 

CrackStation - Online Password Hash Cracking - MD5, SHA1, Linux, Rainbow Tables, etc.

Free Password Hash Cracker Enter up to 20 non-salted hashes, one per line: Supports: LM, NTLM, md2, md4, md5, md5(md5_hex), md5-half, sha1, sha224, sha256, sha384, sha512, ripeMD160, whirlpool, MySQL 4.1+ (sha1(sha1_bin)), QubesV3.1BackupDefaults How Crack

crackstation.net

하지만 문제에서 우리는 500번을 해야하므로 우리가 직접

레인보우 테이블을 작성해야합니다.

 

위의 라이트업을 참고하여

코드를 작성해보면

먼저 테이블을 작성할 파일을 정해주고

소스코드 처럼 10000000~99999999 값에 salt_for_you를 추가해주고

500번을 반복하고 용량이 너무 큰것을 줄이기 위해 pw앞의 8글자까지만 저장을 합니다.

 

그리고 한숨 자고오면 됩니다...시간이 엄청 소요 됩니다.

작성자는 10시간후에 돌아오니 완료가 되어있더군요

 

파일을 여는것도 2~3분이 걸릴 정도로 매우 느려집니다.

열어보면 다음과 같이 저장이 되어 있습니다.

여기서 검색명령어를 사용해

 

10000000~99999999값중

34494617 + salt_for_you를 사용했다고 합니다.

 

pw에 값을 전달해보면

문제가 해결되었습니다!

'Wargame(Web) > Webhacking.kr Writeup' 카테고리의 다른 글

Webhacking Writeup 56번 문제  (0) 2022.08.15
Webhacking Writeup 42번 문제  (0) 2022.08.15
Webhacking Writeup 27번 문제  (0) 2022.08.15
Webhacking Writeup 39번 문제  (0) 2022.08.15
Webhacking Writeup 9번 문제  (0) 2022.08.13
    'Wargame(Web)/Webhacking.kr Writeup' 카테고리의 다른 글
    • Webhacking Writeup 56번 문제
    • Webhacking Writeup 42번 문제
    • Webhacking Writeup 27번 문제
    • Webhacking Writeup 39번 문제
    P_Squirrel
    P_Squirrel

    티스토리툴바

    단축키

    내 블로그

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

    블로그 게시글

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

    모든 영역

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

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