Years ago all Aeroflot pilots were said to carry a pistol in their flightbags.
Maybe they should pull one out and point it at such an attacker as the flight attendants put handcuffs on the aggressor, and only then should the Captain punch the attacker in the face, or use his pistol handle to knock him to the floor.