I am not sure how mint does it, but several ways to store highly secure data is since you asked for it
* Boxes have no direct internet connection
* Spread the Ciphertext, Decryption Keys, and Algorithm
across multiple yet different machines (each with unique
distributions/operation systems and data storage
solution).
* Instead of a global salt, use a separate salt per each
user (login name / account creation time)
* Generate the encryption/decryption keys for storing the
credentials using a newhash(login+password) and use it
only when the user logs in (this hash is never stored,
it's hashed, generate the encryption/decryption keys,
decrypt the data, use the data, and destroyed). So this
key only awailable for a short period of time when the
user logs in.
* Use something strong to encrypt like PGP as the base
and roll-your-own obscure one on top of it (which is a
non-standard algorithm)
There will always be holes and weaknesses, it's just making it really really hard, never impossible.