Skip to main content

RingZer0 CTF – Cryptography – Fashion Victim


RingZer0 – Cryptography – Fashion Victim

Objective:

Get the flag


Solution:

On this page we see a picture of a on old apple computer with the tag of The New Apple TV across the top, with snow playing on the screen
The source for the page is pretty basic, just loading a background image and the gif of snow.

<!DOCTYPE html>
<html>
<head>
<title>The new Apple TV</title>
</head>
<body>
<style type="text/css">
body { background-color: #5c3302; }
h1 { color: white; }
.tv { position: relative; margin: auto; margin-top: 20px; width: 471px; height: 616px; background-image: url(/images/mac.png); }
.screen { width: 322px; height: 237px; position: absolute; left: 72px; top: 80px; }
</style>
<center><h1>The new Apple TV</h1></center>
<div class="tv">
<img src="/images/tv.gif" class="screen" />
</div>
</body>
</html>


I was pretty stuck here and had no idea what to do, so I googled around for a starting point and came across this thread on reddit


The comment from Pharisaeus got me going down the right track

Basically he points out the fact that a gif is just a series of static images and its possible to extract them.

So I downloaded the GIF and uploaded it to this website which split it out for me into individual frames


Armed with that and the comment about trying to XOR the images, lead me to believe that somewhere in these thirty frames I might be able to combine two in such a way that I might see something in the resulting file

Now I spent the better part of a morning learning how to manipulate images in python and brushing up on file manipulation in windows with python too

I decided to create a script that would take each file combine it with another file and output them to a folder

Psudo logic take frame 1 overlay frame 2 write it to a file then, frame 1 overalyed with frame 3 write it to file… rinse and repeat for every combination that could made of two of these files.

I came up with the python script that does that

import os
from PIL import Image

#load the frames into a list
mylist = os.listdir('C:\\Temp\\frames')
#set a starting path for the original frames
OrigPath = ('C:\\Temp\\frames')

ListLength = len(mylist)
ListLength = ListLength-1
print("Count is: ",ListLength)
counter = 0
while counter < ListLength:
    #defin a new path for where we will output the combined files
    newpath = "C:\\Temp\\frames\\" + str(counter)
    counter_nested = 1
    #make  a new folder for each starting frame
    os.mkdir(newpath)
    while counter_nested < ListLength:
        tempbackground = OrigPath + "\\" + mylist[counter]
        tempoverlay = OrigPath + "\\" +mylist[counter_nested]

        background = Image.open(tempbackground)
        overlay = Image.open(tempoverlay)
        background = background.convert("RGBA")
        overlay = overlay.convert("RGBA")
        new_name = mylist[counter] + " " + mylist[counter_nested]

        #create new name for combined file and write to disk
        new_fullpath = newpath + "\\" + new_name +".png"
        print("writting file : ",new_fullpath)
        new_img = Image.blend(background, overlay, 0.5)
        new_img.save(new_fullpath,"PNG")
        counter_nested +=1
    counter +=1

So now what I have is a directory with a sub directory for every starting frame, contained in there is an overlay for each of the frames combine with the starting frame




Now I just manually looked at the resulting combined images to see if any of them was anything but snow.

In the first folder 0
I see a face in file Frame_00 Frame_06.png



So with that I’m pretty sure that my assumptions were correct, I just had to look at the resulting 870 pictures till I find something that can point me to the flag

I found it in folder 17
File frame_17 frame_25 I see this picture wit the flag information




Flag-AcsW3fK9NxJMn2


Comments

Popular posts from this blog

HacktheBox - Retired - Frolic

HacktheBox - Retired - Frolic Recon Let's start out with a threader3000 scan Some interesting results here Port 22 and 445 aren't uncommon… but 1880 and 9999 are.. Let's let nmap run through these ports  Option Selection: 1 nmap -p22,445,1880,9999 -sV -sC -T4 -Pn -oA 10.10.10.111 10.10.10.111 Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times will be slower. Starting Nmap 7.91 ( https://nmap.org ) at 2021-05-05 16:17 EDT Nmap scan report for 10.10.10.111 Host is up (0.060s latency). PORT     STATE SERVICE     VERSION 22/tcp   open  ssh         OpenSSH 7.2p2 Ubuntu 4ubuntu2.4 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: |   2048 87:7b:91:2a:0f:11:b6:57:1e:cb:9f:77:cf:35:e2:21 (RSA) |   256 b7:9b:06:dd:c2:5e:28:44:78:41:1e:67:7d:1e:b7:62 (ECDSA) |_  256 21:cf:16:6d:82:a4:30:c3:c6:9c:d7:38:ba:b5:02:b0 (ED25519) 445/tcp  open  netbios-ssn Samba smbd 4.3.11-Ubuntu (workgroup: WORKGROUP) 1880/tcp open  http        Node.js (Express middlewar...

Hack The Box - Retired - Laboratory

HackTheBox - Laboratory - Retired Starting off with a quick scan using threader6000 /opt/threader3000/threader6000.py 10.10.10.216 Ports 22,80,443 came back. Run nmap against these ports. nmap -p22,80,443 -sV -sC -T4 -Pn -oN 10.10.10.216 10.10.10.216 nmap -p22,80,443 -sV -sC -Pn -T4 -oN 10.10.10.216 10.10.10.216 Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times will be slower. Starting Nmap 7.91 ( https://nmap.org ) at 2021-04-13 17:43 EDT Nmap scan report for laboratory.htb (10.10.10.216) Host is up (0.060s latency). PORT    STATE SERVICE  VERSION 22/tcp  open  ssh      OpenSSH 8.2p1 Ubuntu 4ubuntu0.1 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: |   3072 25:ba:64:8f:79:9d:5d:95:97:2c:1b:b2:5e:9b:55:0d (RSA) |   256 28:00:89:05:55:f9:a2:ea:3c:7d:70:ea:4d:ea:60:0f (ECDSA) |_  256 77:20:ff:e9:46:c0:68:92:1a:0b:21:29:d1:53:aa:87 (ED25519) 80/tcp  open  http     Apache httpd 2.4.41 |_...

A collection of online Security CTF and Learning sites

 Hellbound Hackers    Embedded Security CTF Arizona Cyber Warfare Range Over The Wire - Bandit Pico CTF 2018 Hack The Box.eu Root Me: Challenges/Forensic RingZero CTF Vulnerable By Design - Vulnerable VMs Murder Mystery SQL Challenge Incident Response Challenge Authentication Lab Walkthroughs Defcon CTF Archives Matrix Holiday Hack Cyber Defenders | Blue Team and CTF Crypto Hack - learning Crypto Video Learning Zero to Hero Pentesting by The Cyber Mentor