Description

Category: Misc/Secure Coding

Source: TAMUctf 2019

Points: 478

Author: Jisoon Park(js00n.park)

Description:

https://gitlab.tamuctf.com/root/pwn

Difficulty: easy

Write-up

특이하게 Secure Coding을 확인하는 문제이다. 문제에서 주어진 gitlab 페이지로 가보면 (팀 계정으로 로그인 할 수 있다.) 문제 코드가 있고, 이를 fork해서 수정한 후 commit을 하면 된다는 안내가 있다.

Project 코드를 fork 한 후, 문제 코드를 살펴보자.

#include <stdio.h>
#include <stdlib.h>

void echo()
{
  printf("%s", "Enter a word to be echoed:\n");
  char buf[128];
  gets(buf);
  printf("%s\n", buf);
}

int main()
{
  echo();
}

printf()의 format에는 constant string만 들어가서 별다른 특이점이 없어 보이는데, gets() 함수를 이용해서 사용자 입력을 받고 있는 부분이 거슬린다.

이 부분을 아래와 같이 수정하고 commit 해보자

  fgets(buf, 128, stdin);

문제 안내에서 알려준대로 commit한 후 CI/CD 메뉴에 가보면 flag를 확인할 수 있다.

Flag : gigem{check_that_buffer_size_baby}

'writeups > Coding|misc.' 카테고리의 다른 글

plz variable  (0) 2019.11.25
input  (0) 2019.11.25
algo-auth  (0) 2019.11.25
Run me!  (0) 2019.11.23
JPEG file  (0) 2019.11.23

+ Recent posts