[Dreamhack] rev-basic-8

pandas·2024년 9월 21일
0

Dreamhack

목록 보기
2/14

00. 문제 파일

01. 바이너리 분석


main함수에서 일치하는지 확인하는 함수
if문을 역연산 하면 된다
전형적인 rev-basic 문제 유형

a1[]은 입력받은 문자열, arr[]byte_140003000의 값이다

byte_140003000의 값은
IDA에서 더블 클릭하고, SHIFT+E를 누르면 HEX코드가 보인다

02. 역연산

Brute Force해서 푸려고 했다

왜 안되지?

음수를 곱하니깐 안된다

분석을 더 하자

byte_140003000의 함수이다

엄..


?

디컴파일링 하지 말걸....

컴퓨터는 음수를 변환한다. -5를 그대로 곱하는 것이 아니라
0xFB를 곱하고 0xFF로 모듈러를 하면 된다

03. Review

디컴파일링한 C언어를 보고 시간을 날렸다
어셈블리어로 분석을 하면 쉽게 풀린다

댓글을 잘 참고하자....

profile
KDMHS 23 WP

0개의 댓글

관련 채용 정보