I use playing cards. Seriously.
I have a deck of cards that have 18 cards (three per stat) and total to 72 (average stat for a PC is thus, 12). My current mix of cards looks like this:
1 - x1 card
2 - x2 cards
3 - x3 cards
4 - x6 cards
5 - x3 cards
6 - x2 cards
7 - x1 card
Now, this does mean it is possible to end up with a stat being rolled at 19 (or as low as 5). But in the end, the stats for all of the characters average out the same.
I have the player deal the cards out into six piles, face down. Then, they pick any of them and turn them over. Looking at the total, they assign the number to a stat -- then, they turn over another pile and assign it to a remaining stat and so on until the final pile is turned over and is assigned to what-ever stat remains.
I have other decks I have put together for low, medium and high powered NPCs just in case I do not have a set of pre-concieved stats for them.