Unfortunately the USA has very little inherent banking security. Someone with your bank account details does not need any further "secret" information to make withdrawals.
Some banks will use heuristic measurements to guess what transactions are suspicious and put them through further scrutiny. But there is nothing in the system to prevent fraud.
In a normal US bank account with ACH access there is no real way to protect yourself from fraud apart from constantly checking the account and cross referencing to see if transactions were all legitimate and attempting to dispute them through a complaints process with the bank if not.
TLDR, no there isn't anything physically preventing this other than the threat of legal action if someone actually catches it happening.