015

Descripción: push 7d616579 push 74696874 push 726f7773 push 696d7361 push 7b766d68

Para hacer este reto he usado python por su sencillez para hacer programas rapido, pero sería aplicable a cualquier lenguaje de programación El primer paso será hacer push de las cadenas de texto que nos da el enunciado

list=[]
 
list.append('7d616579' '74696874' '726f7773' '696d7361' '7b766d68')
 
list #['7d61657974696874726f7773696d73617b766d68']

Si pasamos el string resultado por CyberChef veremos que está codificado

Pero parece que está desordenado, sabiendo que el resultado tiene que tener la forma hmv{flag} vamos a intentar obtenerla

from binascii import unhexlify
 
list=[]
list.append('7d616579' '74696874' '726f7773' '696d7361' '7b766d68')
 
string = bytes.fromhex("".join(list)).decode() #}aeytihtrowsimsa{vmh
string[::-1] #hmv{<redacted>}

Rust

use hex::{self, FromHexError};
use std::str::from_utf8;
 
fn reto01(init:String) -> String{
	let vec_str:Result<Vec<u8>,FromHexError>=hex::decode(init);
	
	match vec_str{
		Ok(vec) => match from_utf8(&vec){
			Ok(str) => return str.chars().rev().collect(),
			Err(_) => ()
		},
		Err(_) => ()
	}
	return "Not a valid utf8".to_string()
}
 
fn main(){
	let vec:Vec<&str> = vec!["7d616579", "74696874", "726f7773", "696d7361", "7b766d68"];
	let res = reto01(vec.concat());
	println!("{}",res);
}

047

Descripción: