반응형
문제) 이 문제는 서버에서 작동하고 있는 서비스(welcome)의 바이너리와 소스 코드가 주어집니다.
"접속 정보 보기"를 눌러 서비스 정보를 얻은 후 플래그를 획득하세요.
서버로부터 얻은 플래그의 내용을 워게임 사이트에 인증하면 점수를 획득할 수 있습니다.
플래그의 형식은 DH{…} 입니다.
welcome 바이너리 파일과 welcome.c 파일이 주어진다
#include <stdio.h>
int main(void) {
FILE *fp;
char buf[0x80] = {};
size_t flag_len = 0;
printf("Welcome To DreamHack Wargame!\n");
fp = fopen("/flag", "r");
fseek(fp, 0, SEEK_END);
flag_len = ftell(fp);
fseek(fp, 0, SEEK_SET);
fread(buf, 1, flag_len, fp);
fclose(fp);
printf("FLAG : ");
fwrite(buf, 1, flag_len, stdout);
}
다만, 문제 오류인지 서버에서 바이너리 파일을 특정위치에서 실행해야 함에도 불구하고
[root@ip-172-31-14-35 ec2-user]# nc host1.dreamhack.games 16822
Welcome To DreamHack Wargame!
FLAG : DH{5cc72596cba7104569abb37f71b8ccf3}
AWS를 사용해 접속과 동시에 FLAG를 얻을 수 있었다. (VM 등을 사용해도 무관.)
반응형