Federal and New York authorities fined a South Korean bank over long-running gaps in its defenses against money laundering, after the lender’s Manhattan branch was used to launder cash for Iran.

The state-backed Industrial Bank of Korea must pay a combined $86 million for lapses dating back to 2010, which centered on failing to install and maintain an adequate transaction-monitoring system. The New York State Department of Financial Services is fining the bank $35 million. Separately, federal investigators and the New York...