Drop catching is completely ethical.
About the only form of drop catching I would say is unethical is purposely targeting accidental drops of a company and then "holding the domain hostage." Technically you would not have to drop catch these types of names if others didn't target them - and you could hand reg. So this shouldn't count as a mark against Drop Catching.
But from a legal, and generally an ethical point of view - The domain was not paid for and the legal time-frame to recover the domain after nonpayment has has ended. At the time of a drop-catch - that domain name is technically up for re-registration, which makes it free and clear minus any valid existing trademark or "bad intent" of the new owner.
The only difference between hand regging a name and drop catching is that in drop catching the name is "hand-regged" as soon as possible after the domain goes back into the pool of available domains.