[MMA 2016] crypto : Super Express Super Express이번 문제는 암호화 파이썬 스크립트 하나랑 암호화한 데이터가 주워졌네요. 암호화 하는데 Key 라는 값과 Flag 가 사용되는데 두 개다 가려졌습니다. 흐음.... 는 그냥 별거없고 0 부터 255 까지 다 돌려가면서 해 보면 나오네요..ㅋㅋ 1234567891011121314151617enc = "805eed80cbbccb94c36413275780ec94a857dfec8da8ca94a8c313a8ccf9".decode('hex') def decode(a, b): flag = "" for i in p: flag += chr((ord(i)*a + b) % 251) return flag p = []for i in enc: p.append(i) for i in xrange(255): f.. 더보기 [MMA 2016] forensic : Rescue Data 1 : deadnas Rescue Data 1 : deadnas일단 3개의 disk 파일이 주어진다. 일단 disk0 뺴고는 뭔지 몰라서 카빙을 시도했지만 건진건 파손된 .jpg 파일 한개...그 뒤로 disk0 disk2 를 합쳐서 NAS 복원 프로그램 RAID0, 5 복원 및 다 시도해 봤는데 실패했다. ( runtimes 제품 사용함 ) 그런데 힌트로 주어진 RAID-5 문서를 관련해 보니 그냥 xor 하면 된다는 내용을 봤다.........결론적으로 disk0 하고 disk2 를 xor 한 파일을 disk1 으로 쓰면 된다는 것이다. 음.. runtimes 제품 사용했는데 제대로 RAID-5 복원이 안되서 OSForensics 을 씀...복원한 이미지를 열어보면 root 경로에 flag.jpg 파일이 들어 있는걸 확인.. 더보기 [MMA 2016] misc : ninth ninth일단 .png 파일이 하나 주어졌고 아래 "png 기반 스테고 문제가 아닙니다" 라 써져있었어요그래서 그럼 뭐지? ㅇㅅㅇ 하다가 무작정 카빙을 하기 시작했습니다. binwalk 로 카빙을 하고 그냥 플레그가 있는지 확인하다 발견했습니다 ㅋㅋㅋ... 123456789101112zero@ubuntu:~/Desktop/ninth$ binwalk -e ./*png DECIMAL HEXADECIMAL DESCRIPTION--------------------------------------------------------------------------------0 0x0 PNG image, 1200 x 848, 8-bit/color RGBA, non-interlaced99 0x63 Zlib compres.. 더보기 [MMA 2016] crypto : Twin Primes Twin Primes주어진 파일은 암호화 하는 파이썬 스크립트 하나와 각각 n 과 e 값이 적혀있는 2개의 파일과 암호화 된 파일이 주어졌다. 주어진 암호화 스크립트를 보니 일단 Twin Primes(일명 쌍둥이소수) 를 생성하고 이 값들을 이용해서 2개의 키들을 만든다.첫번 째 키에서는 각각 다른 쌍둥이 소수 p, q 가 사용되었고두번 째 키에서는 사전에 구해놓은 쌍둥이 소수인 (p+2), (q+2) 가 사용되었다.E 값은 0x10001(65537) 로 주워 졌으니 각 키에 대한 정보를 써 보면 12345678910111213- Key 1p1 = pq1 = qn1 = p*qd1 = inverse(e, (p - 1)(q - 1))e = 0x10001 - Key 2p2 = p + 2q2 = q + 2n2 .. 더보기 [MMA 2016] misc : glance glance주어진 파일은 '단!' glance.gif 파일 하나!이 파일을 열어보면 총 200개의 .png 사진들을 볼 수 있는데 그래서 이 사진들을 다 합쳐보기로 함.. 아래는 사진을 가로로 다 합치는 코드. ( PIL 라이브러리 사용 ) 12345678910111213141516171819import sysfrom PIL import Image pic = []for i in range(201): pic.append('Frame' + str(i) + '.png') images = map(Image.open, pic)widths, heights = zip(*(i.size for i in images))total_width = sum(widths)max_height = max(heights)new_im =.. 더보기 이전 1 ··· 6 7 8 9 10 11 12 ··· 36 다음