BackdoorCTF 2016 - jigsaw
BackdoorCTF is the annual flagship CTF competition conducted by SDSLabs and InfoSecIITR.
Points: 150
Description:
cr4wl3r was always found solving jigsaw puzzle. Let us know why he solves so many jigsaws by solving the same. Get the puzzle pieces here
Write-up
Original Solution: I did this the n00b way. I had a folder of 64 files. I observed that combination of 4 images gave one character. I manually formed 16 groups of 4 images each to get 16 letter. To confirm I had the right combination of images, I joined them in a kind of Collage like this:
Another Solution: I later found this Jigsaw-solver. Now the eerie thing was almost half of the images with inverted colors. This was suspicious but I decided not to think too much. So I created a folder with all the background files and inverted their colors using the script below. Note that this method requires opencv
library. Though this seems easier but correctly installing opencv
is one hell of a job.
from PIL import Image
import PIL.ImageOps
import glob
for filename in glob.glob('*.png'):
image=Image.open(filename) # Path of file to be inverted
inverted_image = PIL.ImageOps.invert(image) # Inverting colors
inverted_image.save('../' + filename) # Path of inverted file
I didn’t try the the solver yet. But it will probably give you most of the letters. You can get the rest easily.
Next: So now we got a list of 16 letters. I looked at them for sometime trying to unjumble them. In about 5 minutes I got LOVEBEINGPUZZLED
.
Go through other writeups for more such fun challenges.
Follow @CodeMaxx
BackdoorCTF 2016 - intro16