Locks are only as secure as the codes humans choose to assign to them. As a mnemonic, the security officers who set the codes often use six-letter words which are translated into codes using the mapping from a phone keypad. Using a phone keypad mapping on six-letter English dictionary words is the physical security equivalent of a website’s arbitrarily limiting passwords to eight characters.
Reversing this program is made frustrating by the fact that it was written in OCaml, generating many instructions that maintain internal structures, check stack alignment, etc. It becomes clear that in order to get the flag, we must pass the checks performed by each function within a list.
It is clear the binary has been messed with, and from both the description and name of the task, we hypothesize that bytes have only been shuffled around, not otherwise modified (via encryption, XOR, etc.).
If you know of a link we have missed, please let us know in the comments and we will add it shortly.
Digital Operatives understands the importance of protecting sensitive information—such as a lawfirm’s clients’ property—and can provide specialized services for such specialized entities.