A hulk is just the shell of a ship — it can stay afloat on the water, but it's not capable of sailing on the sea. Another kind of hulk is a big person, like the Incredible Hulk who could single-handedly sink the hulk of any ship.
Hulks were once commonly used as prisons — floating jails where convicted criminals were kept. Ships become hulks when they're retired due to age, or damaged in a storm. Another meaning of hulk, "enormous person," is rooted in this ship meaning, coming from the sense of either type of hulk as big, awkward, and clumsy. The Middle English source is hulc, "heavy, unwieldy ship," from the Greek holkas, "merchant ship."