Trend Micro Online Qualifier - Misc 200

openssl enc -d -aes-256-cbc -k KfRdN3YhyaMhAzLftsSw -in files22.enc -out files22.zip
unzip files22.zip

Find the LTE bands supported by this device, for example if the device suports the bands 1,2,3 the flag will be TMCTF{1,2,3}.
https://mega.nz/#!1hFXCApD!0oq_bFqbnaPsquuOySg4TSIYjPemVjzWWNqfg8OJ0WI

This one was a bit confusing at first, after some searching about LTE on google I found this http://andmem.blogspot.pt/2013/11/mobilebandchange.html#chapter-10 (it’s in Japanese but if you can use google translator it’s very understandable) which explains everything I needed to know to find the flag.

According to that link it says that the LTE bands are located on the 6828 (0x1AAC) block, after converting it to little-endian you can see which bits are 1’s or 0’s, if it’s 1 it supports the LTE band if not it doesn’t and we don’t need that number to be in our flag.

1
2
3
4
5
6
7
8
9
6828 (0x1AAC) OK
FF 1D 1F 03 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

How to convert to little-endian:

Grab the hex “FF1D1F03” and reverse from the right, so the little-endian will be “031F1DFF”.

The next step will be to convert it to binary 0011 0001 1111 0001 1101 1111 1111, after this you start from the right to the left, the first bit from the right is ‘1’ so our device supports the LTE band 1 and so on, after you do this to the rest of the bits you will see the device supports this LTE frequencies bands:

1,2,3,4,5,6,7,8,9,11,12,13,17,18,19,20,21,25,26

You could always use this program to list the LTE , they will appear on that “bit information” field you can download it here (only works on windows https://mega.nz/#!HBt1CTLS!EZItWos4tvhwMMPokG1ZWN8k6lnzy2oLqWwxRRksq1Y) :

1a745cfa537e4a538bfb2a027fffaa31

Or you can do just like me do a small python script to find the flag :)

1
2
3
4
5
6
7
8
9
10
11
def to_little_endian(hex):
return ''.join(hex.split(' ')[::-1])

a = 'FF 1D 1F 03';
binary_string = bin(int(to_little_endian(a),16))[2:]
l = []
number_of_bits = len(binary_string)
for x in xrange(0, number_of_bits):
if (binary_string[number_of_bits-1 - x] == '1'):
l.append(x+1)
print 'TMCTF{%s}' % str(l)[1:-1].replace(' ', '')

After running it you will get the flag :)

1
2
kinyabitch@Debian ~/h/c/n/2> python ltebands.py
TMCTF{1,2,3,4,5,6,7,8,9,11,12,13,17,18,19,20,21,25,26}