728x90
파이썬은 정말 신기한 언어다
보고 또 볼수록 정말 놀라운 점이 많다
우선 비트연산을 이렇게 깔끔하게 할 수 있다
import string
raw =(0x24,0x27,0x13,0xc6,0xc6,0x13,0x16,0xe6,0x47,0xf5,0x26,0x96,0x47,0xf5,0x46,0x27,0x13,0x26,0x26,0xc6,0x56,0xf5,0xc3,0xc3,0xf5,0xe3,0xe3)
for ch in raw:
for i in string.printable:
if ((16*ord(i))&0xf0 | ord(i)>>4 ) == ch:
print(i, end='')
break
블로그에 올려놓으니까 가독성이 많이 떨어지긴 한다
rev-basic-4를 보면 기본적으로 검증 함수가
((16*ord(i))&0xf0 | ord(i)>>4 )가 주어진 바이트와 일치하는지 여부임을 알 수 있다
그걸 그대로 긁어서 주어져있는 바이트와 비교만 해도 flag가 나온다
728x90
'호그와트' 카테고리의 다른 글
드림핵 rev-basic-2 (0) | 2022.01.25 |
---|---|
드림핵 rev-basic-3 (0) | 2022.01.25 |
드림핵 csrf-1 (0) | 2022.01.22 |
드림핵 xss-1 (0) | 2022.01.22 |
드림핵 xss-2 (0) | 2022.01.22 |