The save file does not store individual records of each ribbon acquisition; it is only stored on individual PKM via bitflags (1 bit per ribbon, and a single byte for the contest ribbons).
Your best bet is to try and check the save file for sufficient participation in the actions that award the ribbons. If sufficient ribbons AND sufficient participation, then it's possible it wasn't hacked in. No progress/participation, must be hacked.