Ghost Ship makes you place two cards back on deck. With a Wishing Well in your hand, you can draw back the first card and then successfully wish for the second. You’re still hurt by the attack, but it basically leaves you with your original hand minus the Wishing Well—a small price to pay against an otherwise crippling attack.
Scout similarly counters Ghost Ship, because you can place your Victory cards back on your deck and vacuum them back into your hand with the Scout.
In theory, Wishing Well and Scout would also be a counter to multiple Bureaucrats played against you. But in practice, Bureaucrats are usually weak enough that you can just ignore them rather than buying Wishing Well or Scout to counter it.
And if you have a Chancellor in hand you can just make GS look like a Militia. Put back your worst cards only to discard them on your turn.
The Ghost Ship attack also provides a psuedo-benefit if you have Native Villages, since it lets you choose which card to store on your mat.
Native Village isn’t the only time Ghost Ship can be good for you – knowing you’re going to be getting Ghost Shipped a lot can actually be a reason to buy more (non card-draw) terminal actions than you would otherwise be comfortable with, since Ghost Ship will let you split them up across turns.
A spy network is also a good counter for ghost ships. At least you get a clean draw.
I just played a game (http://dominion.isotropic.org/gamelog/201105/15/game-20110515-080258-312a2ba1.html.gz) where I discovered a beautiful “counter” to ghost ship in a simple pirate ship strategy. I went full pirates, and my opponent relied heavily on his ghost ship and militia attacks. Chapel sped up the game nicely. We both had streamlined hands, which meant I played one of my 2 pirates every hand and he played either his ghost ship or militia every hand. I don’t think he realized, however, that by doing so he was actually helping me. Several times I turned up both pirates in the same hand, meaning I would waste one, since I had no +actions. But without fail, he would ghost-ship one back onto my deck, leaving me with two good hands (good defined by getting to play a pirate ship). The fact that I was down to 3 cards had no ill effect – as long as I could play a pirates as often as possible.
I recognize that there are many factors that lined up to make this work in my favor, and a slightly different setup could be very different. But at least it highlights the fact that when hand size isn’t vital and +actions are limited, ghost ship ends up helping the opponent more than harming. Good to keep in mind.
Actually another really good counter to Ghost Ship is Menagerie, since you can put the non-unique cards back on your deck and just simply draw them again with menagerie. Watchtower and Library work as counters to Ghost Ship since they let you draw your hand back and whatever additional cards you would have drawn before the Ghost Ship was played.