Write up (Wargame)/Pwnable

[pwnable.kr] random 풀이

2023. 9. 12. 00:57
목차
  1. analysis
  2. solution
반응형

analysis


 

amd 64바이너리고,

RELRO, canary, PIE가 없다.

 

#include <stdio.h>

int main(){
	unsigned int random;
	random = rand();	// random value!

	unsigned int key=0;
	scanf("%d", &key);

	if( (key ^ random) == 0xdeadbeef ){
		printf("Good!\n");
		system("/bin/cat flag");
		return 0;
	}

	printf("Wrong, maybe you should try 2^32 cases.\n");
	return 0;
}

신기하게도 stdlib를 선언하지 않고 rand 함수를 사용한다. 뭐 gcc가 알아서 넣어줬겠지..?

 

rand 함수에서 seed를 정하지 않았다. 같은 프로그램을 실행시키면 계속 같은 값이 나올 거라 예상된다.

디버거로 확인해본다.

 

 

0x6b8b4567이 rand값이고

이 값과 xor해서 0xdeadbeef가 나와야하므로 필요한 값은 0x6b8b4567 ^ 0xdeadbeef이다.

 

rand에서 시드를 지정하지 않았으므로 다시 실행해도 rand 값이 같을 것이다.

 

solution


 

 

이렇게 계산해서 3039230856을 입력하면 된다. 

실제로 입력해본다.

 

되넹

 

반응형
  1. analysis
  2. solution
'Write up (Wargame)/Pwnable' 카테고리의 다른 글
  • [pwnable.kr] leg 풀이
  • [pwnable.kr] input 풀이
  • [pwnable.kr] passcode 풀이
  • [pwnable.kr] flag 풀이
그믐​
그믐​
그믐​
neutrinox4b1
그믐​
전체
오늘
어제
  • 분류 전체보기 (288)
    • Write up (Wargame) (121)
      • Pwnable (60)
      • Reversing (0)
      • Web Hacking (8)
      • Forensic (1)
      • Cryptography (6)
      • LOB (10)
      • misc (0)
      • SF pwnable 기초 (10)
      • SF pwnable 심화 (1)
      • LOS (25)
    • Security (73)
      • 시스템 해킹(PWN, System) (21)
      • 리버싱(Reverse Engineering) (1)
      • 포렌식(Forensic) (3)
      • 암호학(Cryptography) (44)
      • 네트워크(Network) (1)
      • 임베디드(Emebedded) (0)
    • Develop & CS (38)
      • Algorithm & Data Structure (6)
      • Baekjoon (11)
      • C, C++ (8)
      • Python (2)
      • R (1)
      • etc (8)
    • 프로젝트(Project) (7)
      • 시간표&급식 파싱 (1)
      • 남방진동지수 (1)
      • 네트워크 해킹 (5)
    • Daily life (44)
      • My Book (10)
      • Book Review (1)
      • IT Review (1)
      • 일상 팁 (19)
      • 네트워크관리사 (2)
      • 근황 (11)
    • 수학&과학(Mathematics & Science.. (4)

인기 글

공지사항

  • Wargame, CTF별 검색 키워드 정리
hELLO · Designed By 정상우.
그믐​
[pwnable.kr] random 풀이
상단으로

티스토리툴바

단축키

내 블로그

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

블로그 게시글

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

모든 영역

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

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