Random enc
- secret 파일과 out.enc 라는 파일이 주어짐.
-
secret 파일은 파이썬 바이트 코드이며 uncompyle 툴로 디컴파일이 가능.

- 디컴파일한 코드에는 flag.txt를 enc한 코드가 있고 이를 토대로 dec 해야함.
import random
import ctypes
from time import *
from pwn import log
libc = ctypes.CDLL('libc.so.6')
f = open('out.enc','r')
data = ""
data2 = ""
while True:
s = f.read(1)
if s == '': break
#print '%02X' % int(ord(s)),
data += s
p = log.progress('start...')
for t in range(1,111112):
p.status(str(t+1))
pr_data = ""
libc.srand(t)
for i in data:
rd = libc.rand()%119
dec = ord(i)
real_dec = rd ^ dec
pr_data += chr(real_dec)
if "IS" in pr_data.upper():
print pr_data
