반응형
HackHiJack
HHJ
HackHiJack
전체 방문자
오늘
어제
  • 분류 전체보기 (99)
    • chatGPT (2)
    • pwn (2)
    • 워게임 (32)
    • Reversing (0)
    • Cryptography (12)
    • Web (6)
    • CTFs (16)
    • TryHackMe (6)
    • Go (5)
    • Forensics (18)

블로그 메뉴

  • 홈

공지사항

  • Welcome To HHJ's Blog

인기 글

태그

  • go
  • 포렌식
  • main
  • pwnable.kr
  • 암호 #AES #드림핵
  • package
  • webhacking.kr
  • linkfile
  • forensic
  • Import
  • function
  • analyis
  • shellctf
  • startup
  • main.go
  • ㅣ
  • func
  • 해킹 #TryHackMe #WriteUp #ignite
  • rootme
  • hacking

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
HackHiJack

HHJ

[pwnable.kr] 3번 문제 - bof 문제 풀이
워게임

[pwnable.kr] 3번 문제 - bof 문제 풀이

2020. 11. 22. 02:31
728x90
반응형

오늘은 pwnable.kr의 3번문제인 bof를 풀어 보겠다.

일단 문제 설명을 보면 bof, bof.c를 다운 받아서 분석한 다음 pwnable.kr 9000에 값을 넣어 flag를 cat하는 방식인 것 같다.

그럼 먼저 링크로 들어가서 파일을 다운 받고, 파일을 해보자.

위 처럼 두개의 파일을 다운받고 터미널을 실행 시켰다.

먼저 ls -l로 파일을 살펴본다.

그리고 bof를 실행해보니 Permission denied 오류가 났다.

그러므로 먼저 cat bof.c로 bof.c를 살펴보자.

결과는 다음과 같다.

일단 살펴보면 0xdeadbeef를 0xcafebabe로 바꿔서 입력하면 해결되는 것 같다.

그리고 gets함수로 overflowme[32]를 입력받는 것 같다.

 

더 자세히 분석하기 위해서 lldb를 이용하여 분석해보았다.

위는 func부분의 디스어셈블한 결과이다.

일단 0x649 <29>부분에 보면 eax에 0x2c(%ebp)가 저장된다.

그리고 key값은 <40>부분에 보면 [ebp+0x8]에 저장되는 걸 알수있습니다.

 

그러므로 거리를 구하면 4바이트의 key값 하고 52를 채워주면 된다.

그걸 python -c하고 nc를 이용해서 밑에와 같이 명령문을 만들었다.

(python -c ‘print “\x41”*52 + “\xbe\xba\xfe\xca”‘;cat) | nc pwnable.kr 9000

flag는 자신이 직접 찾아 보는 것을 권장한다.

728x90
반응형

'워게임' 카테고리의 다른 글

HackCTF-1번, 2번, 3번, 4번(Web) Writeup  (1) 2021.01.23
여러가지 해킹 교육 플랫폼들과 워게임을 포함한 사이트 모음  (0) 2020.12.30
[xcz.kr] Prob1 : End of image 문제풀이  (0) 2020.11.22
[pwnable.kr] 2번 문제 - collision 문제풀이  (0) 2020.11.08
[pwnable.kr] 1번 문제 - fd 문제 풀이  (0) 2020.11.07
    '워게임' 카테고리의 다른 글
    • 여러가지 해킹 교육 플랫폼들과 워게임을 포함한 사이트 모음
    • [xcz.kr] Prob1 : End of image 문제풀이
    • [pwnable.kr] 2번 문제 - collision 문제풀이
    • [pwnable.kr] 1번 문제 - fd 문제 풀이
    HackHiJack
    HackHiJack
    $ whoami HHJ

    티스토리툴바