We analyze the PDF file using peepdf in interactive mode :
As we can see, there is a JS object inside the file.
We retrieve it :
We can see a hard-coded gist URL.
When we go to the URL, we can see a long base64 encoded code block which seems to have been reversed since the padding appears to be at the beginning:
We save the snippet to a file and we use the following Python code to decode it:
The output is an image on which the flag can be read.
However, we cannot open the file as it is and the file command returns the following output :
Since the file has a .jpg extension, we can assume that it is a JPEG file.
We can also assume that the file can easily be decrypted since we have absolutely no clue from the challenge description about what we have to do.
At this point, what first comes to mind is that it might be XORed.
We know that the header signature of JPEG starts with 0xFF 0xD8 0xFF 0xE0 so we can XOR the first four bytes of the ciphered file with the four bytes of the header signature in order to retrieve the key or a part of the key.
After some manual analysis, it appears that the key is the single byte 0xAB.
We use the following Python script to decrypt the file :