Tags: pil python python3
Rating:
# Full WriteUp
Full Writeup on our website: [http://www.aperikube.fr/docs/easyctf_2018_pixelly/](http://www.aperikube.fr/docs/easyctf_2018_pixelly/)
-----
# TL;DR
In this task we had to connect to [http://c1.easyctf.com:12489/](http://c1.easyctf.com:12489/) and to look at the source code.
The website proposed us to **upload an image**, which was **converted to an ascii art and evaluated** with eval.
The ascii art was made of the following chars:** -”~rc()+=01exh%** .
We identified that we could forge strings with chr() and number chr(110+10-1) and exec code with exec().
To get the flag **we had to evaluate “print(flag)” **width the following payload:
exec(chr(111+1)+chr(111+1+1+1)+chr(101+1+1+1+1)+chr(110)+chr(111+1+1+1+1+1)+chr(10+10+10+10)+chr(101+1+ 0%1)+chr(110-1-1)+chr(100-1-1-1)+chr(101+1+1)+chr(10+10+10+10+1))
We had to **convert the payload into an image with correct color tones for each char**.
By uploading the image, we got the flag.