Yozzang의 해킹일기 💻
article thumbnail
728x90

이번 포스트에서는 Python Challenge의 Level 11 문제에 대해 다루겠다.


문제를 클릭하면 다음과 같은 페이지가 출력된다.

Level 11

## 문제 해석 : 

사진 한 장만 달려 있는 페이지다. 페이지의 제목을 확인해보면 odd와 even이 적혀있는데, 그림의 픽셀을 홀짝으로 나누면 되는 것으로 보인다.

## 문제 풀이 : 

파이썬을 이용하여 그림의 픽셀을 홀짝 별로 나눠서 저장해보겠다.

### 공격 코드 : 

from PIL import Image

with Image.open("cave.jpeg") as img:
    odd_img = Image.new("RGB", img.size)
    even_img = Image.new("RGB", img.size)
    for h in range(img.height):
        for w in range(img.width):
            if((w + h) % 2 == 0):
                even_img.putpixel((w, h), img.getpixel((w, h)))
            else:
                odd_img.putpixel((w, h), img.getpixel((w, h)))

    odd_img.save("cave_odd.png")
    even_img.save("cave_even.png")

### 실행 결과 :

cave_even.png

cave_even.png를 포렌식 툴로 조절하면 위와같이 evil라는 글자가 들어간 것을 확인할 수 있다.

### 최종 공격문 : http://www.pythonchallenge.com/pc/return/evil.html

### 실행 결과 : 

공격 성공

Level 12로 넘어간 것을 확인할 수 있다.

'Wargame > Python Challenge' 카테고리의 다른 글

Python Challenge (Level 13)  (0) 2022.09.08
Python Challenge (Level 12)  (0) 2022.09.07
Python Challenge (Level 10)  (0) 2022.08.28
Python Challenge (Level 9)  (0) 2022.08.27
Python Challenge (Level 8)  (0) 2022.08.26
profile

Yozzang의 해킹일기 💻

@요짱

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!