picoCTF's Matryoshka challenge provides a dolls.jpg
file which contains nested files that can be accessed using the unzip
tool.
┌──(kali㉿kali)-[~/Desktop]
└─$ unzip dolls.jpg
Archive: dolls.jpg
warning [dolls.jpg]: 272492 extra bytes at beginning or within zipfile
(attempting to process anyway)
inflating: base_images/2_c.jpg
┌──(kali㉿kali)-[~/Desktop]
└─$ cd base_images
┌──(kali㉿kali)-[~/Desktop/base_images]
└─$ lla
total 376
-rw-r--r-- 1 nick nick 383938 Mar 15 2021 2_c.jpg
┌──(kali㉿kali)-[~/Desktop/base_images]
└─$ unzip 2_c.jpg
Archive: 2_c.jpg
warning [2_c.jpg]: 187707 extra bytes at beginning or within zipfile
(attempting to process anyway)
inflating: base_images/3_c.jpg
┌──(kali㉿kali)-[~/Desktop/base_images]
└─$ lla
total 380
-rw-r--r-- 1 nick nick 383938 Mar 15 2021 2_c.jpg
drwxr-xr-x 2 nick nick 4096 Jan 14 03:47 base_images
┌──(kali㉿kali)-[~/Desktop/base_images]
└─$ cd base_images
┌──(kali㉿kali)-[~/Desktop/base_images/base_images]
└─$ lla
total 200
-rw-r--r-- 1 nick nick 201445 Mar 15 2021 3_c.jpg
┌──(kali㉿kali)-[~/Desktop/base_images/base_images]
└─$ unzip 3_c.jpg
Archive: 3_c.jpg
warning [3_c.jpg]: 123606 extra bytes at beginning or within zipfile
(attempting to process anyway)
inflating: base_images/4_c.jpg
┌──(kali㉿kali)-[~/Desktop/base_images/base_images]
└─$ lla
total 204
-rw-r--r-- 1 nick nick 201445 Mar 15 2021 3_c.jpg
drwxr-xr-x 2 nick nick 4096 Jan 14 03:50 base_images
┌──(kali㉿kali)-[~/Desktop/base_images/base_images]
└─$ cd base_images
┌──(kali㉿kali)-[~/Desktop/base_images/base_images/base_images]
└─$ lla
total 80
-rw-r--r-- 1 nick nick 79808 Mar 15 2021 4_c.jpg
┌──(kali㉿kali)-[~/Desktop/base_images/base_images/base_images]
└─$ lla
total 80
-rw-r--r-- 1 nick nick 79808 Mar 15 2021 4_c.jpg
┌──(kali㉿kali)-[~/Desktop/base_images/base_images/base_images]
└─$ unzip 4_c.jpg
Archive: 4_c.jpg
warning [4_c.jpg]: 79578 extra bytes at beginning or within zipfile
(attempting to process anyway)
inflating: flag.txt
┌──(kali㉿kali)-[~/Desktop/base_images/base_images/base_images]
└─$ cat flag.txt
picoCTF{336cf6d51c9d9774fd37196c1d7320ff}
As demonstrated, the innermost nested file is flag.txt
which contains the solution to the challenge. Catch the flag.