Editing my answer... i misread it
Anyway, try this sscanf
with hhx
as parameters... it means it will read an hex value and will store it as a char (unlikely the default that store the value as int)
sscanf(string_mac, "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx", &src_mac[5], &src_mac[4], &src_mac[3],
&src_mac[2], &src_mac[1], &src_mac[0]);