이번 건 비교적
난이도가 나쁘지 않습니다.
아무튼 이젠 본인 사정상
이 공부 저장 게시글은
여기까지로로 해야겠습니다.
늦어도 최대 올해 안에
버그 바운티 해봐야겠습니다
상황이 나아질 기미가 안 보입니다.
ε-(´・`)
원치 않는 일로 평일 아르바이트로
시간, 몸 다 버릴 바에야
평일에는 버그 바운티
주말에 아르바이트해야
그나마 덜 억울하겠습니다.
-`д´-
아무튼 계속 이어 작성합니다.
(ㆁᴗㆁ✿)
스샷. 1
(아따 프로그래밍에서 임의의 값을 사용하는 법 좀 알려달랑께?)
스샷. 2
로 바로 접속합니다.
스샷. 3
먼저 파일 여부를 알아낸 다음
random.c 파일을 확인
해보겠습니다.
4바이트 의 랜덤 값과
입력값을 xor 연산을 해서
0xdeadbeef가 나오면
키값을 받는 프로그램입니다.
ANG? 랜덤 값이면 모든 경우의
수를 시도해 봐야 하는 건 아닌가?ōxō
수를 시도해 봐야 하는 건 아닌가?ōxō
로 생각할 수 있겠지만,
rand() 함수는 매번 바뀌는 시드 값을
주지 않으면 항상 일정한 값을
변환하게 됩니다. 이 일정하게 나오는
값을 알아내면 해답을 찾을 수 있습니다.
gdb를 통해 값을 추적해 봅시다.
비교 연산을 하게 되는
eax의 값을 확인해
보면 될 것 같습니다.
스샷. 5
브레이크 포인트를 걸고
돌려서 0을 넣은 결과 eax에
들어가 있는 것을 알 수 있습니다.
xor 0은 해도 값이 같게 나오기
때문에 rand()의 값은
0x6b8b4567 임을
알 수 있습니다.
0xdeadbeef ^ 0x6b8b4567을
통해서 찾을 수 있습니다.
스샷. 6 자바로 헥스연산
자바 프로그래밍으로
이 둘을 연산
결과 값은
0xB526FB88
스샷. 7
그리고 변환해주는
사이트로 가서 변환하면
3039230856
위와 같은 값이 출력
스샷. 8
출력된 값으로 입력하면
이렇게 키값을 획득
그리고 받아챙긴 키값을 가지고
스샷. 9
처음 화면으로 돌아와서
빈칸에 입력하고
auth 버튼을 누르면 됩니다.
미션 완료 동시에
1 포인트 받아 챙겨젔습니다.
그럼 다시 최초의 화면에
돌아 와보면 이렇게
완료되었다고 녹색
점선으로 표시가 됩니다.
긴 글을 보시느라 감사합니다.
수고하셨습니다(ㆁᴗㆁ✿)
좋은 하루 되시고 하시는 일 잘 되시고
날이 덥습니다 더위 먹지 않게 유의하시고
코로나 조심하세요
'모의해킹 > [CTF] pwnable.kr' 카테고리의 다른 글
[pwnable.kr] Fla_ 문제풀이 (0) | 2022.04.10 |
---|---|
[pwnable.kr]_Ieg문제풀이 (0) | 2022.02.27 |
[pwnable.kr]_Input문제풀이 (0) | 2022.02.27 |
[pwnable.kr]_passcode문제풀이 (0) | 2022.02.27 |
[pwnable.kr]_Memcpy문제풀이 (0) | 2022.02.27 |
모의해킹/[CTF] pwnable.kr