Skip to content

Latest commit

 

History

History
60 lines (40 loc) · 1.96 KB

File metadata and controls

60 lines (40 loc) · 1.96 KB

Writeup for encode-encode

@mpyw

<?php

$cipher = 'c3:a3:c2:81:c2:8d:c3:a3:c2:82:c2:83:c3:a3:c2:81:c2:b7:c3:a3:c2:81:c2:a1:c3:a3:c2:82:c2:83:c3:a3:c2:83:c2:bc:c3:83:c2:a3:c3:82:c2:83:c3:82:c2:bb:c3:83:c2:a3:c3:82:c2:82:c3:82:c2:b6:c3:83:c2:a3:c3:82:c2:83:c3:82:c2:bb:e3:81:b5:e3:82:89:e3:81:a3:e3:81:90';

$raw = hex2bin(str_replace(':', '', $cipher));

for ($i = 0; $i < 3; ++$i) {
    $data = $raw;
    for ($j = 0; $j < $i; ++$j) {
        $data = utf8_decode($data);
    }
    echo $data . PHP_EOL;
}

/*
ã��ã��ã�·ã�¡ã��ã�¼Ã£Â�ȋÂ�¶ãÂ�»ふらっぐ
きゃぷちゃーã�»ã�¶ã�»????
??????・ザ・????
*/

@thezakman

last = "\xc3\xa3\xc2\x81\xc2\x8d\xc3\xa3\xc2\x82\xc2\x83\xc3\xa3\xc2\x81\xc2\xb7\xc3\xa3\xc2\x81\xc2\xa1\xc3\xa3\xc2\x82\xc2\x83\xc3\xa3\xc2\x83\xc2\xbc\xc3\x83\xc2\xa3\xc3\x82\xc2\x83\xc3\x82\xc2\xbb\xc3\x83\xc2\xa3\xc3\x82\xc2\x82\xc3\x82\xc2\xb6\xc3\x83\xc2\xa3\xc3\x82\xc2\x83\xc3\x82\xc2\xbb\xe3\x81\xb5\xe3\x82\x89\xe3\x81\xa3\xe3\x81\x90"

>>> print last
ã��ã��ã�·ã�¡ã��ã�¼Ã£Â�ȋÂ�¶ãÂ�»ふらっぐ ====> ふらっぐ


middle = "\xc3\xa3\xc2\x81\xc2\x8d\xc3\xa3\xc2\x82\xc2\x83\xc3\xa3\xc2\x81\xc2\xb7\xc3\xa3\xc2\x81\xc2\xa1\xc3\xa3\xc2\x82\xc2\x83\xc3\xa3\xc2\x83\xc2\xbc\xc3\x83\xc2\xa3\xc3\x82\xc2\x83\xc3\x82\xc2\xbb\xc3\x83\xc2\xa3\xc3\x82\xc2\x82\xc3\x82\xc2\xb6\xc3\x83\xc2\xa3\xc3\x82\xc2\x83\xc3\x82\xc2\xbb"
first_decode = middle.decode('utf-8')
as_chars = ''.join([chr(ord(x)) for x in first_decode])
result = as_chars.decode('utf-8')
>>>result

u'\u304d\u3083\u3077\u3061\u3083\u30fc\xe3\x83\xbb\xe3\x82\xb6\xe3\x83\xbb'

>>> print result
きゃぷちゃーã�»ã�¶ã�»

first = 'きゃぷちゃー'

middle = '\xe3\x83\xbb\xe3\x82\xb6\xe3\x83\xbb'
>>> print middle 
・ザ・

>>> print first,middle,last

flag = きゃぷちゃー・ザ・ふらっぐ



https://asciinema.org/a/15132