CTF_Writeups
Tesla CTF - Writeup
2026/0xfun/Forensics/Tesla/writeup.md
Tesla CTF - Writeup
Challenge Overview
The challenge provided a file named Tesla.sub (originally thought to be data.bin by the user, but identified as Tesla.sub). This file mimics a Flipper Zero Sub-GHz capture file.
Analysis
Upon inspecting Tesla.sub, we noticed the RAW_Data field did not contain standard timing data but rather space-separated 8-bit binary strings.
Filetype: Bad Usb 0xfun
Version: 1
Frequency: 433920000
Preset: FuriHalSubGhz
Protocol: RAW
RAW_Data: 11111111 11111110 00100110 ...
Decoding Binary Data
Converting the binary strings to ASCII characters revealed an obfuscated Windows Batch script. The script used variable substring expansion (e.g., %IlÃc:~42,1%) to construct commands.
The variable IlÃc was defined as:
set "IlÃc=pesbMUQl73oWnqD9rAvFRKZaf0hO5@dBN4uSzCtGjE YxITwXiVm1Jcgy26LkH8P"
Deobfuscation
Deobfuscating the script revealed the following key components:
- A PowerShell command that decodes the string:
'i could be something to this'. - A commented-out area containing a long hex string:
5958051a1b170013520746265a0e51435b36165752470b7f03591d1b364b501608616e. - A hint:
:: ive been encrypted many in ways::.
Decryption
We hypothesized that the hex string was XOR-encrypted using the phrase "i could be something to this" as the key.
Using a Python script to XOR the hex bytes with the key bytes revealed the flag.
Solution Script
import binascii
hex_string = "5958051a1b170013520746265a0e51435b36165752470b7f03591d1b364b501608616e"
key = "i could be something to this"
decrypted = bytearray()
key_bytes = key.encode('utf-8')
ciphertext = binascii.unhexlify(hex_string)
for i in range(len(ciphertext)):
decrypted.append(ciphertext[i] ^ key_bytes[i % len(key_bytes)])
print(decrypted.decode('utf-8'))Flag
0xfun{d30bfU5c473_x0r3d_w1th_k3y}