[SuNiNaTaS/MISC] 13번 풀이
2019. 8. 1. 18:51ㆍ문제풀이/suninatas.com
응...찾아볼게..
일단 소스를 확인해보면
힌트를 준다!
사실 몰라서 검색 해봤는데 ㅜㅜ
http://suninatas.com/challenge/web13/web13.asp
현재 링크인 위 url의 확장자명을 asp가 아닌 bmp, jpg, zip 등등으로 바꿔볼 수 있다.
그 중 zip으로 하면 web13.zip이 다운로드된다.
비밀번호가 걸려있다.
압축비번은 4자리 정수라고 했으니까 brute force attack을 시도한다.
공격은 파이썬 공부도 할 겸 파이썬으로 코드를 짜봤다.
import zipfile
char = []
fpath = input("file:")
zfile = zipfile.ZipFile(fpath)
'''
for x in range(0,10000):
char.append(str(x).zfill(4))
for pw in char:
try:
zfile.extractall(pwd=bytes(pw,'utf-8'))
print("pw: "+pw)
except RuntimeError:
pass
'''
f = open('pw.txt', mode='wt', encoding='utf-8')
for i in range(0,10000):
f.write(str(i).zfill(4))
f.write('\n')
f.close
txt = open('pw.txt').readlines()
for password in txt:
pw = password.strip().encode()
try:
zfile.extractall(pwd = pw)
print('pw: '+format(pw))
except:
pass
dictionary를 만들지 않고 바로 대입해서 풀어보게 하고싶었는데 계속 안된다 ㅠㅠㅠㅠㅠㅠㅠ이유를 모르겠다
그래서 일단 주석처리 하고..
0000~9999까지 적혀있는 메모장 파일을 만들고, 그 파일을 이용하여 압축을 해제하게 하는 코드를 구현했다.
비밀번호는 7642! 압축파일을 해제하면 아래와 같이 나온다.
파일 4개와 함께, 4개의 이미지를 합하여 key를 구하라고 나온다.
왠지 HxD를 켜봐야할것같지..?
그래서 파일들을 HxD로 읽어봤다.
각 파일들에 대놓고 key가 적혀있다.
key1: 3nda192n
key2: 84ed1cae
key3: 8abg9295
key4: cf9eda4d합친 key: 3nda192n84ed1cae8abg9295cf9eda4d
이건 대체 무슨 암호지 하고 고민하면서 일단 인증키에 넣었는데 풀렸다.
Authkey: 3nda192n84ed1cae8abg9295cf9eda4d
'문제풀이 > suninatas.com' 카테고리의 다른 글
[SuNiNaTaS/Forensic] 18번 풀이 (0) | 2019.08.02 |
---|---|
[SuNiNaTaS/MISC] 17번 풀이 (0) | 2019.08.01 |
[SuNiNaTaS/MISC] 12번 풀이 (0) | 2019.08.01 |
[SuNiNaTaS/web] 3번 풀이 (0) | 2019.08.01 |
[SuNiNaTaS/web] 2번 풀이 (0) | 2019.08.01 |