def uart_challenge(): subprocess.check_output( [f'(cd uart_challenge && make CHALLENGE=uart_challenge)'], shell=True) resp0, resp1, resp2 = embsec.grade_emulated( f'./uart_challenge/gcc/main.bin', f'/embsec/uart_c/uart_challenge') stdout, stdin = resp2 return (extract_flag(stdout))
def write_example(): subprocess.check_output( [f'(cd write_example && make CHALLENGE=write_example)'], shell=True) resp0, resp1, resp2 = embsec.grade_emulated( f'./write_example/gcc/main.bin', f'/embsec/intro_c/write_example') stdout, stdin = resp2 return (extract_flag(stdout))
def recv_file(): subprocess.check_output([ f'gcc -I../../lib/uart recv_file.c ../../lib/uart/uart_linux.c -o recv_file' ], shell=True) stdout, stdin = embsec.grade_c(f'./recv_file', f'/embsec/io_c/recv_file') return (extract_flag(stdout))
def echo_int(): subprocess.check_output([ f'gcc -I../../lib/uart echo_int.c ../../lib/uart/uart_linux.c -o echo_int' ], shell=True) stdout, stdin = embsec.grade_c(f'./echo_int', f'/embsec/io_c/echo_int') return (extract_flag(stdout))
def hmac_verify(): subprocess.check_output([ f'gcc -I../../lib/uart hmac_verify.c ../../lib/uart/uart_linux.c -o hmac_verify' ], shell=True) stdout, stdin = embsec.grade_c(f'./hmac_verify', f'/embsec/hmac_c/hmac_verify') return (extract_flag(stdout))
def aes_encrypted_echo(): subprocess.check_output([ f'gcc -I../../lib/uart aes_encrypted_echo.c ../../lib/uart/uart_linux.c -o aes_encrypted_echo' ], shell=True) stdout, stdin = embsec.grade_c(f'./aes_encrypted_echo', f'/embsec/aes_c/aes_encrypted_echo') return (extract_flag(stdout))