In a campaign in a world based loosely on the Wheel of Time (predating the WoT RPG by several years), a GM I ran under used this system for magical taint (of the "slowly drives you insane and then you die because magic is inherently poisoned" kind of taint). We used these rules for years (first in AD&D 2e, then making additions for 3e when it came out), and they worked well for us.
Every time you cast an Arcane spell, roll %. If you roll equal or less than the level of the spell then you gain a number of points of Taint equal to the level of the spell you cast. If you use a Quickened Spell you automatically gain the taint instead of rolling dice (you suck in magic so quickly you are going to get some that is tainted, normal casting presumes at least trying to be a little careful, by extension you can voluntarily fail the roll to avoid Taint if for any reason you wanted to).
A Heal spell would remove 6 points of Taint (1 per level of the spell, so if Heightened it would remove more). A Limited Wish would remove 70 points of Taint, and a Wish or Miracle would remove 90 points of Taint (i.e. 10 per level). A Limited Wish, Wish or Miracle, if specifically requested, could also grant a target a temporary reprieve from the mental effects of the taint (alignment shift and roleplaying-only insanity, but not Wisdom loss) for 1 hour per spell level.
Ability score points lost to the Taint could not be Restored by any means short of direct divine intervention unless the victim were reduced to 0 Taint. Alignment shifts also could not be undone also unless the taint dropped into an appropriate lower category.
Every 100 points of Taint, you go up one "category".
0 Taint: Utterly untainted and normal
1-99 Taint: No significant effects, at most the very occasional roleplaying-only icky or weird feeling, but nothing that anybody other than the character would notice and no outward signs.
100-199 Taint: A significant mental illness, first signs of madness. While it's roleplaying only, the character does start to show significant eccentricities, talk about nonsensical things at times, have minor hallucinations, and other things that make it clear to those around him on a regular basis that he's beginning to succumb to the Taint.
200-299 Taint: Alignment takes one step towards Chaotic as behavior becomes even more erratic (Lawful characters become Neutral, Neutral characters become Chaotic), and 1 point of Constitution is permanently lost as health begins to decline from the Taint.
300-399 Taint: Alignment takes a second step towards Chaotic (i.e. Alignment becomes chaotic). Alignment takes one step towards Evil (Good becomes Neutral, Neutral becomes Evil). The best alignment you could still have is Chaotic Neutral. At this point it is patently clear to even a casual observer that you are well in the throes of madness, and your health begins to decline sharply. 1d4 points of Constitution is permanently lost as health begins to drop sharply from the taint. 1 point of Wisdom are permanently lost as the madness destroys the mind
400-499: Alignment takes a second step towards Evil (Chaotic Evil is now the only alignment possible), as morals and ethics have been completely consumed by ravening madness. 1d6 points of Constitution are permanently lost and 1d4 points of Wisdom are permanently lost as the taint-illness becomes quite advanced. PC's normally become NPC's at this point:
500+: The taint has become terminal, nobody can survive long. 1d8 points of Constitution are permanently lost and 1d6 points of Wisdom are permanently lost. The character is so driven mad they are probably too incoherent to be anything more than a ravening creature of pure destruction. Even if the initial loss of ability score points is not fatal, the character still loses 1 point from both Constitution and Wisdom every month until they die. Nothing short of direct divine intervention can stop this (or remove any taint from the subject) once it reaches this point.
(Then again, the d20 Wheel of Time RPG had it's own rules for Taint, but they were quite different)