Weaken is a level 11 Magic spell. When cast on an opponent, their strength is reduced by 5%. The spell gives experience whether it hits or misses, making it a popular way to gain experience cheaply. The spell can only be cast if his stats haven't already been lowered, meaning you can not stack stat reduction with multiple spells in a row.
Casting Weaken while wearing full metal armour (including an elemental staff with no more than +10 magic points) can give a magic attack as low as -65, which guarantees a "splash," or a missed hit. This provides very cheap Magic experience, as players can instantly recast the spell on the same target. Additionally, casting Weaken grants players no experience in the Hitpoints skill and, thus, is useful to pures.
The usual method is to buy the Body runes needed for the cast, as well as an appropriate amount of one of the other two runes, and using the respective staff of the third rune. An expensive alternative is to buy a Mud battlestaff, which provides an unlimited supply of both Water and Earth runes.
When doing this method, it is helpful to position a monster so that it is just on the edge of your screen, so that there is minimal distance between it and your spellbook.